|
@@ -1,15 +1,21 @@
|
|
|
package cn.iocoder.yudao.module.pms.controller.admin.iotdevicematerial;
|
|
|
|
|
|
+import cn.hutool.core.collection.CollUtil;
|
|
|
import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog;
|
|
|
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
|
|
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
|
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
|
|
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
|
|
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
|
|
|
+import cn.iocoder.yudao.module.pms.controller.admin.iotdevicecategorytemplateattrs.vo.IotDeviceCategoryTemplateAttrsRespVO;
|
|
|
import cn.iocoder.yudao.module.pms.controller.admin.iotdevicematerial.vo.IotDeviceMaterialPageReqVO;
|
|
|
import cn.iocoder.yudao.module.pms.controller.admin.iotdevicematerial.vo.IotDeviceMaterialRespVO;
|
|
|
import cn.iocoder.yudao.module.pms.controller.admin.iotdevicematerial.vo.IotDeviceMaterialSaveReqVO;
|
|
|
+import cn.iocoder.yudao.module.pms.controller.admin.iotmaterial.vo.IotMaterialPageReqVO;
|
|
|
+import cn.iocoder.yudao.module.pms.controller.admin.iotmaterial.vo.IotMaterialRespVO;
|
|
|
+import cn.iocoder.yudao.module.pms.dal.dataobject.iotdevicecategorytemplateattrs.IotDeviceCategoryTemplateAttrsDO;
|
|
|
import cn.iocoder.yudao.module.pms.dal.dataobject.iotdevicematerial.IotDeviceMaterialDO;
|
|
|
+import cn.iocoder.yudao.module.pms.dal.dataobject.iotmaterial.IotMaterialDO;
|
|
|
import cn.iocoder.yudao.module.pms.service.iotdevicematerial.IotDeviceMaterialService;
|
|
|
import io.swagger.v3.oas.annotations.Operation;
|
|
|
import io.swagger.v3.oas.annotations.Parameter;
|
|
@@ -77,6 +83,14 @@ public class IotDeviceMaterialController {
|
|
|
return success(BeanUtils.toBean(pageResult, IotDeviceMaterialRespVO.class));
|
|
|
}
|
|
|
|
|
|
+ @GetMapping("/list-by-bom-id")
|
|
|
+ @Operation(summary = "根据设备分类bom节点id获取物料列表")
|
|
|
+ @PreAuthorize("@ss.hasPermission('pms:iot-device-material:query')")
|
|
|
+ public CommonResult<PageResult<IotDeviceMaterialRespVO>> getDeviceMaterialsByBomId(@Valid IotDeviceMaterialPageReqVO reqVO) {
|
|
|
+ PageResult<IotDeviceMaterialDO> deviceTemplateAttrs = iotDeviceMaterialService.getDeviceMaterialsByBomId(reqVO);
|
|
|
+ return success(buildDeviceMaterialVOPageResult(deviceTemplateAttrs));
|
|
|
+ }
|
|
|
+
|
|
|
@GetMapping("/export-excel")
|
|
|
@Operation(summary = "导出PMS 设备BOM物料关联 Excel")
|
|
|
@PreAuthorize("@ss.hasPermission('pms:iot-device-material:export')")
|
|
@@ -90,4 +104,12 @@ public class IotDeviceMaterialController {
|
|
|
BeanUtils.toBean(list, IotDeviceMaterialRespVO.class));
|
|
|
}
|
|
|
|
|
|
+ private PageResult<IotDeviceMaterialRespVO> buildDeviceMaterialVOPageResult(PageResult<IotDeviceMaterialDO> pageResult) {
|
|
|
+ if (CollUtil.isEmpty(pageResult.getList())) {
|
|
|
+ return PageResult.empty(pageResult.getTotal());
|
|
|
+ }
|
|
|
+ // 2. 开始拼接
|
|
|
+ return BeanUtils.toBean(pageResult, IotDeviceMaterialRespVO.class);
|
|
|
+ }
|
|
|
+
|
|
|
}
|