mirror of
				https://github.com/YunaiV/ruoyi-vue-pro.git
				synced 2025-10-31 10:37:41 +08:00 
			
		
		
		
	feat:物模型列表
This commit is contained in:
		| @ -3,6 +3,7 @@ package cn.iocoder.yudao.module.iot.controller.admin.thingmodel; | ||||
| import cn.iocoder.yudao.framework.common.pojo.CommonResult; | ||||
| import cn.iocoder.yudao.framework.common.pojo.PageResult; | ||||
| import cn.iocoder.yudao.framework.common.util.object.BeanUtils; | ||||
| import cn.iocoder.yudao.module.iot.controller.admin.thingmodel.vo.IotThingModelListReqVO; | ||||
| import cn.iocoder.yudao.module.iot.controller.admin.thingmodel.vo.IotThingModelPageReqVO; | ||||
| import cn.iocoder.yudao.module.iot.controller.admin.thingmodel.vo.IotThingModelRespVO; | ||||
| import cn.iocoder.yudao.module.iot.controller.admin.thingmodel.vo.IotThingModelSaveReqVO; | ||||
| @ -73,6 +74,14 @@ public class IotThingModelController { | ||||
|         return success(IotThingModelConvert.INSTANCE.convertList(list)); | ||||
|     } | ||||
|  | ||||
|     @GetMapping("/list") | ||||
|     @Operation(summary = "获得产品物模型列表") | ||||
|     @PreAuthorize("@ss.hasPermission('iot:thing-model:query')") | ||||
|     public CommonResult<List<IotThingModelRespVO>> getThingModelListByProductId(@Valid IotThingModelListReqVO reqVO) { | ||||
|         List<IotThingModelDO> list = thingModelService.getThingModelList(reqVO); | ||||
|         return success(IotThingModelConvert.INSTANCE.convertList(list)); | ||||
|     } | ||||
|  | ||||
|     @GetMapping("/page") | ||||
|     @Operation(summary = "获得产品物模型分页") | ||||
|     @PreAuthorize("@ss.hasPermission('iot:thing-model:query')") | ||||
|  | ||||
| @ -0,0 +1,27 @@ | ||||
| package cn.iocoder.yudao.module.iot.controller.admin.thingmodel.vo; | ||||
|  | ||||
| import cn.iocoder.yudao.framework.common.validation.InEnum; | ||||
| import cn.iocoder.yudao.module.iot.enums.thingmodel.IotThingModelTypeEnum; | ||||
| import io.swagger.v3.oas.annotations.media.Schema; | ||||
| import jakarta.validation.constraints.NotNull; | ||||
| import lombok.Data; | ||||
|  | ||||
|  | ||||
|  | ||||
| @Schema(description = "管理后台 - IoT 产品物模型List Request VO") | ||||
| @Data | ||||
| public class IotThingModelListReqVO { | ||||
|     @Schema(description = "功能标识") | ||||
|     private String identifier; | ||||
|  | ||||
|     @Schema(description = "功能名称", example = "张三") | ||||
|     private String name; | ||||
|  | ||||
|     @Schema(description = "功能类型", example = "1") | ||||
|     @InEnum(IotThingModelTypeEnum.class) | ||||
|     private Integer type; | ||||
|  | ||||
|     @Schema(description = "产品ID", requiredMode = Schema.RequiredMode.REQUIRED) | ||||
|     @NotNull(message = "产品ID不能为空") | ||||
|     private Long productId; | ||||
| } | ||||
| @ -3,6 +3,7 @@ package cn.iocoder.yudao.module.iot.dal.mysql.thingmodel; | ||||
| import cn.iocoder.yudao.framework.common.pojo.PageResult; | ||||
| import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; | ||||
| import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; | ||||
| import cn.iocoder.yudao.module.iot.controller.admin.thingmodel.vo.IotThingModelListReqVO; | ||||
| import cn.iocoder.yudao.module.iot.controller.admin.thingmodel.vo.IotThingModelPageReqVO; | ||||
| import cn.iocoder.yudao.module.iot.dal.dataobject.thingmodel.IotThingModelDO; | ||||
| import org.apache.ibatis.annotations.Mapper; | ||||
| @ -28,6 +29,17 @@ public interface IotThingModelMapper extends BaseMapperX<IotThingModelDO> { | ||||
|                 .orderByDesc(IotThingModelDO::getId)); | ||||
|     } | ||||
|  | ||||
|     default List<IotThingModelDO> selectList(IotThingModelListReqVO reqVO) { | ||||
|         return selectList(new LambdaQueryWrapperX<IotThingModelDO>() | ||||
|                 .eqIfPresent(IotThingModelDO::getIdentifier, reqVO.getIdentifier()) | ||||
|                 .likeIfPresent(IotThingModelDO::getName, reqVO.getName()) | ||||
|                 .eqIfPresent(IotThingModelDO::getType, reqVO.getType()) | ||||
|                 .eqIfPresent(IotThingModelDO::getProductId, reqVO.getProductId()) | ||||
|                 // TODO @芋艿:看看要不要加枚举 | ||||
|                 .notIn(IotThingModelDO::getIdentifier, "get", "set", "post") | ||||
|                 .orderByDesc(IotThingModelDO::getId)); | ||||
|     } | ||||
|  | ||||
|     default IotThingModelDO selectByProductIdAndIdentifier(Long productId, String identifier) { | ||||
|         return selectOne(IotThingModelDO::getProductId, productId, | ||||
|                 IotThingModelDO::getIdentifier, identifier); | ||||
|  | ||||
| @ -1,6 +1,7 @@ | ||||
| package cn.iocoder.yudao.module.iot.service.thingmodel; | ||||
|  | ||||
| import cn.iocoder.yudao.framework.common.pojo.PageResult; | ||||
| import cn.iocoder.yudao.module.iot.controller.admin.thingmodel.vo.IotThingModelListReqVO; | ||||
| import cn.iocoder.yudao.module.iot.controller.admin.thingmodel.vo.IotThingModelPageReqVO; | ||||
| import cn.iocoder.yudao.module.iot.controller.admin.thingmodel.vo.IotThingModelSaveReqVO; | ||||
| import cn.iocoder.yudao.module.iot.dal.dataobject.thingmodel.IotThingModelDO; | ||||
| @ -69,4 +70,11 @@ public interface IotThingModelService { | ||||
|      */ | ||||
|     List<IotThingModelDO> getProductThingModelListByProductKey(String productKey); | ||||
|  | ||||
|     /** | ||||
|      * 获得产品物模型列表 | ||||
|      * | ||||
|      * @param reqVO 列表查询 | ||||
|      * @return 产品物模型列表 | ||||
|      */ | ||||
|     List<IotThingModelDO> getThingModelList(IotThingModelListReqVO reqVO); | ||||
| } | ||||
| @ -7,6 +7,7 @@ import cn.iocoder.yudao.framework.common.util.object.BeanUtils; | ||||
| import cn.iocoder.yudao.module.iot.controller.admin.thingmodel.model.ThingModelEvent; | ||||
| import cn.iocoder.yudao.module.iot.controller.admin.thingmodel.model.ThingModelParam; | ||||
| import cn.iocoder.yudao.module.iot.controller.admin.thingmodel.model.ThingModelService; | ||||
| import cn.iocoder.yudao.module.iot.controller.admin.thingmodel.vo.IotThingModelListReqVO; | ||||
| import cn.iocoder.yudao.module.iot.controller.admin.thingmodel.vo.IotThingModelPageReqVO; | ||||
| import cn.iocoder.yudao.module.iot.controller.admin.thingmodel.vo.IotThingModelSaveReqVO; | ||||
| import cn.iocoder.yudao.module.iot.convert.thingmodel.IotThingModelConvert; | ||||
| @ -134,6 +135,11 @@ public class IotThingModelServiceImpl implements IotThingModelService { | ||||
|         return thingModelMapper.selectListByProductKey(productKey); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public List<IotThingModelDO> getThingModelList(IotThingModelListReqVO reqVO) { | ||||
|         return thingModelMapper.selectList(reqVO); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 校验功能是否存在 | ||||
|      * | ||||
|  | ||||
		Reference in New Issue
	
	Block a user
	 alwayssuper
					alwayssuper