lipenghui vor 2 Tagen
Ursprung
Commit
1ec540f6a5
15 geänderte Dateien mit 162 neuen und 44 gelöschten Zeilen
  1. 27 1
      yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/failure/IotFailureReportController.java
  2. 14 9
      yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/failure/vo/IotFailureReportRespVO.java
  3. 13 1
      yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/information/IotInformationDbController.java
  4. 4 3
      yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/information/vo/IotInformationDbRespVO.java
  5. 25 1
      yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/inspect/item/IotInspectItemController.java
  6. 11 7
      yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/inspect/item/vo/IotInspectItemRespVO.java
  7. 12 1
      yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/inspect/order/IotInspectOrderController.java
  8. 2 2
      yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/inspect/order/vo/IotInspectOrderRespVO.java
  9. 8 1
      yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/inspect/plan/IotInspectPlanController.java
  10. 2 2
      yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/inspect/plan/vo/IotInspectPlanRespVO.java
  11. 7 0
      yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/inspect/route/IotInspectRouteController.java
  12. 3 3
      yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/inspect/route/vo/IotInspectRouteRespVO.java
  13. 20 1
      yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/maintain/IotMaintainController.java
  14. 7 5
      yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/maintain/vo/IotMaintainRespVO.java
  15. 7 7
      yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/vo/IotDeviceRespVO.java

+ 27 - 1
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/failure/IotFailureReportController.java

@@ -9,12 +9,16 @@ import cn.iocoder.yudao.module.pms.controller.admin.failure.vo.IotFailureReportR
 import cn.iocoder.yudao.module.pms.controller.admin.failure.vo.IotFailureReportSaveReqVO;
 import cn.iocoder.yudao.module.pms.controller.admin.iotdeviceperson.vo.IotDevicePersonRelationSaveReqVO;
 import cn.iocoder.yudao.module.pms.controller.admin.maintain.vo.IotMaintainSaveVO;
+import cn.iocoder.yudao.module.pms.controller.admin.vo.IotDeviceRespVO;
 import cn.iocoder.yudao.module.pms.dal.dataobject.failure.IotFailureReportDO;
 import cn.iocoder.yudao.module.pms.service.IotDeviceService;
 import cn.iocoder.yudao.module.pms.service.failure.IotFailureReportService;
 import cn.iocoder.yudao.module.pms.service.iotdeviceperson.IotDevicePersonService;
+import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO;
 import cn.iocoder.yudao.module.system.api.user.AdminUserApi;
 import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO;
+import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictDataDO;
+import cn.iocoder.yudao.module.system.service.dict.DictDataService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 import javax.annotation.Resource;
@@ -57,6 +61,8 @@ public class IotFailureReportController {
     private IotDeviceService iotDeviceService;
     @Autowired
     private IotDevicePersonService iotDevicePersonService;
+    @Autowired
+    private DictDataService dictDataService;
 
     @PostMapping("/create")
     @Operation(summary = "创建故障上报")
@@ -120,9 +126,29 @@ public class IotFailureReportController {
               HttpServletResponse response) throws IOException {
         pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
         List<IotFailureReportDO> list = iotFailureReportService.getIotFailureReportPage(pageReqVO).getList();
+        List<DictDataDO> failureStatus = dictDataService.getDictDataListByDictType("pms_failure_status");
+        List<DictDataDO> failureType = dictDataService.getDictDataListByDictType("failure_type");
+        List<IotFailureReportRespVO> bean = BeanUtils.toBean(list, IotFailureReportRespVO.class);
+        bean.forEach(e -> {
+            failureStatus.stream().filter(f -> f.getValue().equals(e.getStatus())).findFirst().ifPresent(f -> {
+                e.setStatus(f.getLabel());
+            });
+            if (Objects.nonNull(e.getIfStop())) {
+                e.setStop(e.getIfStop()?"是":"否");
+            }
+            if (Objects.nonNull(e.getIfDeal())) {
+                e.setDeal(e.getIfDeal()?"是":"否");
+            }
+            if (Objects.nonNull(e.getNeedHelp())) {
+                e.setIfNeedHelp(e.getNeedHelp()?"是":"否");
+            }
+            failureType.stream().filter(f -> f.getValue().equals(e.getFailureType())).findFirst().ifPresent(f -> {
+                e.setFailureType(f.getLabel());
+            });
+        });
         // 导出 Excel
         ExcelUtils.write(response, "故障上报.xls", "数据", IotFailureReportRespVO.class,
-                        BeanUtils.toBean(list, IotFailureReportRespVO.class));
+                        BeanUtils.toBean(bean, IotFailureReportRespVO.class));
     }
 
     @PutMapping("/submitForApproval")

+ 14 - 9
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/failure/vo/IotFailureReportRespVO.java

@@ -27,8 +27,11 @@ public class IotFailureReportRespVO {
     private String failureName;
 
     @Schema(description = "设备id", requiredMode = Schema.RequiredMode.REQUIRED, example = "15038")
-    @ExcelProperty("设备id")
+//    @ExcelProperty("设备id")
     private Long deviceId;
+    @Schema(description = "设备编码")
+    @ExcelProperty("设备编码")
+    private String deviceCode;
     @Schema(description = "设备名称")
     @ExcelProperty("设备名称")
     private String deviceName;
@@ -41,8 +44,10 @@ public class IotFailureReportRespVO {
     private String auditStatus;
 
     @Schema(description = "是否停机")
-    @ExcelProperty("是否停机")
+//    @ExcelProperty("是否停机")
     private Boolean ifStop;
+    @ExcelProperty("是否停机")
+    private String stop;
 
     @Schema(description = "故障时间")
     @ExcelProperty("故障时间")
@@ -72,13 +77,16 @@ public class IotFailureReportRespVO {
     private String pic;
 
     @Schema(description = "是否解决")
-    @ExcelProperty("是否解决")
+//    @ExcelProperty("是否解决")
     private Boolean ifDeal;
+    @ExcelProperty("是否解决")
+    private String deal;
 
     @Schema(description = "是否需要协助")
-    @ExcelProperty("是否需要协助")
+//    @ExcelProperty("是否需要协助")
     private Boolean needHelp;
-
+    @ExcelProperty("是否需要协助")
+    private String ifNeedHelp;
     @Schema(description = "解决办法")
     @ExcelProperty("解决办法")
     private String solution;
@@ -96,14 +104,11 @@ public class IotFailureReportRespVO {
 
     @Schema(description = "维修类型内外")
     private String type;
-
-    @Schema(description = "设备编码")
-    private String deviceCode;
     /**审批人id*/
     private Long approvalId;
 
     private String approvalName;
-
+    @ExcelProperty("故障类型")
     private String failureType;
 
     private Long failureNum;

+ 13 - 1
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/information/IotInformationDbController.java

@@ -9,7 +9,10 @@ import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
 import cn.iocoder.yudao.module.pms.controller.admin.information.vo.IotInformationDbPageReqVO;
 import cn.iocoder.yudao.module.pms.controller.admin.information.vo.IotInformationDbRespVO;
 import cn.iocoder.yudao.module.pms.controller.admin.information.vo.IotInformationDbSaveReqVO;
+import cn.iocoder.yudao.module.pms.controller.admin.maintain.vo.IotMaintainRespVO;
+import cn.iocoder.yudao.module.pms.dal.dataobject.IotProductClassifyDO;
 import cn.iocoder.yudao.module.pms.dal.dataobject.information.IotInformationDbDO;
+import cn.iocoder.yudao.module.pms.service.IotProductClassifyService;
 import cn.iocoder.yudao.module.pms.service.information.IotInformationDbService;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.Parameter;
@@ -36,6 +39,8 @@ public class IotInformationDbController {
 
     @Resource
     private IotInformationDbService iotInformationDbService;
+    @Resource
+    private IotProductClassifyService iotProductClassifyService;
 
     @PostMapping("/create")
     @Operation(summary = "创建故障知识库")
@@ -86,9 +91,16 @@ public class IotInformationDbController {
               HttpServletResponse response) throws IOException {
         pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
         List<IotInformationDbDO> list = iotInformationDbService.getIotInformationDbPage(pageReqVO).getList();
+        List<IotInformationDbRespVO> bean = BeanUtils.toBean(list, IotInformationDbRespVO.class);
+        bean.forEach(e ->{
+            IotProductClassifyDO iotProductClassify = iotProductClassifyService.getIotProductClassify(e.getDeviceType());
+            if (iotProductClassify != null) {
+                e.setDeviceTypeName(iotProductClassify.getName());
+            }
+        });
         // 导出 Excel
         ExcelUtils.write(response, "故障知识库.xls", "数据", IotInformationDbRespVO.class,
-                        BeanUtils.toBean(list, IotInformationDbRespVO.class));
+                        BeanUtils.toBean(bean, IotInformationDbRespVO.class));
     }
 
 }

+ 4 - 3
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/information/vo/IotInformationDbRespVO.java

@@ -17,8 +17,9 @@ public class IotInformationDbRespVO {
     private Long id;
 
     @Schema(description = "设备分类", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
-    @ExcelProperty("设备分类")
     private Long deviceType;
+    @ExcelProperty("设备分类")
+    private String deviceTypeName;
 
     @Schema(description = "故障影响")
     @ExcelProperty("故障影响")
@@ -45,11 +46,11 @@ public class IotInformationDbRespVO {
     private LocalDateTime createTime;
 
     @Schema(description = "流程实例id", example = "12034")
-    @ExcelProperty("流程实例id")
+//    @ExcelProperty("流程实例id")
     private String processInstanceId;
 
     @Schema(description = "审核状态", example = "2")
-    @ExcelProperty("审核状态")
+//    @ExcelProperty("审核状态")
     private Integer auditStatus;
 
     @Schema(description = "设备类别名称")

+ 25 - 1
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/inspect/item/IotInspectItemController.java

@@ -6,13 +6,18 @@ 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.information.vo.IotInformationDbRespVO;
 import cn.iocoder.yudao.module.pms.controller.admin.inspect.item.vo.IotInspectItemPageReqVO;
 import cn.iocoder.yudao.module.pms.controller.admin.inspect.item.vo.IotInspectItemRespVO;
 import cn.iocoder.yudao.module.pms.controller.admin.inspect.item.vo.IotInspectItemSaveReqVO;
 import cn.iocoder.yudao.module.pms.dal.dataobject.IotDeviceDO;
+import cn.iocoder.yudao.module.pms.dal.dataobject.IotProductClassifyDO;
 import cn.iocoder.yudao.module.pms.dal.dataobject.inspect.IotInspectItemDO;
 import cn.iocoder.yudao.module.pms.service.IotDeviceService;
+import cn.iocoder.yudao.module.pms.service.IotProductClassifyService;
 import cn.iocoder.yudao.module.pms.service.inspect.IotInspectItemService;
+import cn.iocoder.yudao.module.system.api.dept.DeptApi;
+import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO;
 import cn.iocoder.yudao.module.system.api.user.AdminUserApi;
 import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO;
 import io.swagger.v3.oas.annotations.Operation;
@@ -47,6 +52,10 @@ public class IotInspectItemController {
     private IotDeviceService iotDeviceService;
     @Autowired
     private AdminUserApi adminUserApi;
+    @Autowired
+    private IotProductClassifyService iotProductClassifyService;
+    @Autowired
+    private DeptApi deptApi;
 
     @PostMapping("/create")
     @Operation(summary = "创建巡检项")
@@ -106,9 +115,24 @@ public class IotInspectItemController {
               HttpServletResponse response) throws IOException {
         pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
         List<IotInspectItemDO> list = iotInspectItemService.getIotInspectItemPage(pageReqVO).getList();
+        List<IotInspectItemRespVO> bean = BeanUtils.toBean(list, IotInspectItemRespVO.class);
+        List<AdminUserRespDTO> allUser = adminUserApi.getAllUser();
+        List<DeptRespDTO> deptList = deptApi.getDeptList();
+        bean.forEach(e ->{
+            IotProductClassifyDO iotProductClassify = iotProductClassifyService.getIotProductClassify(e.getDeviceClassify());
+            if (Objects.nonNull(iotProductClassify)) {
+                e.setDeviceClassifyName(iotProductClassify.getName());
+            }
+            allUser.stream().filter(f -> String.valueOf(f.getId()).equals(e.getCreator())).findFirst().ifPresent(f -> {
+                e.setCreateName(f.getNickname());
+            });
+            deptList.stream().filter(f -> f.getId().equals(e.getDeptId())).findFirst().ifPresent(f -> {
+                e.setDeptName(f.getName());
+            });
+        });
         // 导出 Excel
         ExcelUtils.write(response, "巡检项.xls", "数据", IotInspectItemRespVO.class,
-                        BeanUtils.toBean(list, IotInspectItemRespVO.class));
+                        BeanUtils.toBean(bean, IotInspectItemRespVO.class));
     }
 
     @GetMapping("/init/item")

+ 11 - 7
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/inspect/item/vo/IotInspectItemRespVO.java

@@ -16,6 +16,12 @@ public class IotInspectItemRespVO {
     @ExcelProperty("主键id")
     private Long id;
 
+    /**
+     * 设备分类名称
+     */
+    @ExcelProperty("设备类别")
+    private String deviceClassifyName;
+
     @Schema(description = "巡检项", requiredMode = Schema.RequiredMode.REQUIRED)
     @ExcelProperty("巡检项")
     private String item;
@@ -37,8 +43,10 @@ public class IotInspectItemRespVO {
     private LocalDateTime createTime;
 
     @Schema(description = "部门id", example = "5369")
-    @ExcelProperty("部门id")
     private Long deptId;
+
+    @ExcelProperty("所在部门")
+    private String deptName;
     /**
      * 设备分类id
      */
@@ -49,11 +57,6 @@ public class IotInspectItemRespVO {
      */
     private Long deviceId;
 
-    /**
-     * 设备分类名称
-     */
-    private String deviceClassifyName;
-
     /**
      * 设备名称
      */
@@ -62,10 +65,11 @@ public class IotInspectItemRespVO {
     private String urls;
     @Schema(description = "设备编码")
     private String deviceCode;
-
+    @ExcelProperty("创建人")
     private String createName;
     /**品牌*/
     private Long brand;
     /**品牌名称*/
     private String brandName;
+    private String creator;
 }

+ 12 - 1
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/inspect/order/IotInspectOrderController.java

@@ -34,7 +34,9 @@ import cn.iocoder.yudao.module.pms.service.inspect.IotInspectPlanService;
 import cn.iocoder.yudao.module.pms.service.inspect.IotInspectRouteService;
 import cn.iocoder.yudao.module.system.api.dept.DeptApi;
 import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO;
+import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictDataDO;
 import cn.iocoder.yudao.module.system.service.dept.DeptService;
+import cn.iocoder.yudao.module.system.service.dict.DictDataService;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import io.swagger.v3.oas.annotations.Operation;
@@ -92,6 +94,8 @@ public class IotInspectOrderController {
     private DeptService deptService;
     @Autowired
     private IotInspectOrderMapper iotInspectOrderMapper;
+    @Autowired
+    private DictDataService dictDataService;
 
     @PostMapping("/create")
     @Operation(summary = "创建巡检工单")
@@ -309,9 +313,16 @@ public class IotInspectOrderController {
               HttpServletResponse response) throws IOException {
         pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
         List<IotInspectOrderDO> list = iotInspectOrderService.getIotInspectOrderPage(pageReqVO).getList();
+        List<IotInspectOrderRespVO> bean = BeanUtils.toBean(list, IotInspectOrderRespVO.class);
+        List<DeptRespDTO> deptList = deptApi.getDeptList();
+        List<DictDataDO> pmsDeviceStatus = dictDataService.getDictDataListByDictType("pms_inspect_order_status");
+        bean.forEach(e -> {
+            deptList.stream().filter(f -> f.getId().equals(e.getDeptId())).findFirst().ifPresent(f -> e.setDeptName(f.getName()));
+            pmsDeviceStatus.stream().filter(f -> f.getValue().equals(e.getStatus())).findFirst().ifPresent(f -> e.setStatus(f.getLabel()));
+        });
         // 导出 Excel
         ExcelUtils.write(response, "巡检工单.xls", "数据", IotInspectOrderRespVO.class,
-                        BeanUtils.toBean(list, IotInspectOrderRespVO.class));
+                        BeanUtils.toBean(bean, IotInspectOrderRespVO.class));
     }
 
     @PostMapping("/write/{orderId}")

+ 2 - 2
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/inspect/order/vo/IotInspectOrderRespVO.java

@@ -39,14 +39,13 @@ public class IotInspectOrderRespVO {
     private LocalDateTime createTime;
 
     @Schema(description = "部门id", example = "27771")
-    @ExcelProperty("部门id")
     private Long deptId;
 
     @Schema(description = "设备id")
-    @ExcelProperty("设备id")
     private String deviceIds;
 
     private String planCode;
+    @ExcelProperty("负责人")
     private String chargeName;
     private String type;
 
@@ -59,6 +58,7 @@ public class IotInspectOrderRespVO {
 
     private String company;
     private String project;
+    @ExcelProperty("部门id")
     private String deptName;
     private String reason;
 }

+ 8 - 1
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/inspect/plan/IotInspectPlanController.java

@@ -116,9 +116,16 @@ public class IotInspectPlanController {
               HttpServletResponse response) throws IOException {
         pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
         List<IotInspectPlanDO> list = iotInspectPlanService.getIotInspectPlanPage(pageReqVO).getList();
+        List<IotInspectPlanRespVO> bean = BeanUtils.toBean(list, IotInspectPlanRespVO.class);
+        List<DeptRespDTO> deptList = deptApi.getDeptList();
+        bean.forEach(e -> {
+            deptList.stream().filter(f -> f.getId().equals(e.getDeptId())).findFirst().ifPresent(f -> {
+                e.setDeptName(f.getName());
+            });
+        });
         // 导出 Excel
         ExcelUtils.write(response, "巡检计划.xls", "数据", IotInspectPlanRespVO.class,
-                        BeanUtils.toBean(list, IotInspectPlanRespVO.class));
+                        BeanUtils.toBean(bean, IotInspectPlanRespVO.class));
     }
 
     @PutMapping("/update-status")

+ 2 - 2
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/inspect/plan/vo/IotInspectPlanRespVO.java

@@ -39,7 +39,7 @@ public class IotInspectPlanRespVO {
     private String charge;
 
     @Schema(description = "设备", requiredMode = Schema.RequiredMode.REQUIRED)
-    @ExcelProperty("设备")
+//    @ExcelProperty("设备")
     private String deviceIds;
 
     @Schema(description = "备注", example = "随便")
@@ -51,7 +51,6 @@ public class IotInspectPlanRespVO {
     private LocalDateTime createTime;
 
     @Schema(description = "部门id", example = "21365")
-    @ExcelProperty("部门id")
     private Long deptId;
 
     @Schema(description = "状态")
@@ -68,5 +67,6 @@ public class IotInspectPlanRespVO {
     private List<String> charges;
 
     private String createName;
+    @ExcelProperty("所在部门")
     private String deptName;
 }

+ 7 - 0
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/inspect/route/IotInspectRouteController.java

@@ -122,6 +122,13 @@ public class IotInspectRouteController {
               HttpServletResponse response) throws IOException {
         pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
         List<IotInspectRouteDO> list = iotInspectRouteService.getIotInspectRoutePage(pageReqVO).getList();
+        List<IotInspectRouteRespVO> bean = BeanUtils.toBean(list, IotInspectRouteRespVO.class);
+        List<DeptRespDTO> deptList = deptApi.getDeptList();
+        bean.forEach(e -> {
+            deptList.stream().filter(f -> f.getId().equals(e.getDeptId())).findFirst().ifPresent(f -> {
+                e.setDeptName(f.getName());
+            });
+        });
         // 导出 Excel
         ExcelUtils.write(response, "巡检路线.xls", "数据", IotInspectRouteRespVO.class,
                         BeanUtils.toBean(list, IotInspectRouteRespVO.class));

+ 3 - 3
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/inspect/route/vo/IotInspectRouteRespVO.java

@@ -21,11 +21,11 @@ public class IotInspectRouteRespVO {
     private String routeName;
 
     @Schema(description = "设备分类", requiredMode = Schema.RequiredMode.REQUIRED)
-    @ExcelProperty("设备分类")
+//    @ExcelProperty("设备分类")
     private Long deviceClassify;
 
     @Schema(description = "设备id", example = "6972")
-    @ExcelProperty("设备id")
+//    @ExcelProperty("设备id")
     private Long deviceId;
 
     @Schema(description = "设备分类名称", example = "李四")
@@ -49,13 +49,13 @@ public class IotInspectRouteRespVO {
     private LocalDateTime createTime;
 
     @Schema(description = "部门id", example = "27993")
-    @ExcelProperty("部门id")
     private Long deptId;
 
     @Schema(description = "资产编码")
     private String deviceCode;
 
     @Schema(description = "部门名称")
+    @ExcelProperty("所在部门")
     private String deptName;
 
     @Schema(description = "路线排序")

+ 20 - 1
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/maintain/IotMaintainController.java

@@ -9,6 +9,7 @@ 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.failure.vo.IotFailureReportProcessVO;
+import cn.iocoder.yudao.module.pms.controller.admin.failure.vo.IotFailureReportRespVO;
 import cn.iocoder.yudao.module.pms.controller.admin.maintain.vo.IotMaintainPageReqVO;
 import cn.iocoder.yudao.module.pms.controller.admin.maintain.vo.IotMaintainRespVO;
 import cn.iocoder.yudao.module.pms.controller.admin.maintain.vo.IotMaintainSaveVO;
@@ -30,6 +31,8 @@ import cn.iocoder.yudao.module.system.api.dept.DeptApi;
 import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO;
 import cn.iocoder.yudao.module.system.api.user.AdminUserApi;
 import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO;
+import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictDataDO;
+import cn.iocoder.yudao.module.system.service.dict.DictDataService;
 import com.alibaba.fastjson.JSON;
 import com.xingyuv.captcha.util.StringUtils;
 import io.swagger.v3.oas.annotations.Operation;
@@ -76,6 +79,8 @@ public class IotMaintainController {
     private IotFailureReportService iotFailureReportService;
     @Resource
     private DeptApi deptApi;
+    @Autowired
+    private DictDataService dictDataService;
 
     @PostMapping("/create")
     @Operation(summary = "创建维修工单")
@@ -170,9 +175,23 @@ public class IotMaintainController {
               HttpServletResponse response) throws IOException {
         pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
         List<IotMaintainDO> list = iotMaintainService.getIotMaintainPage(pageReqVO).getList();
+        List<IotMaintainRespVO> bean = BeanUtils.toBean(list, IotMaintainRespVO.class);
+        List<DictDataDO> failureStatus = dictDataService.getDictDataListByDictType("pms_failure_status");
+        bean.forEach(e -> {
+            failureStatus.stream().filter(f -> f.getValue().equals(e.getStatus())).findFirst().ifPresent(f -> {
+                e.setStatus(f.getLabel());
+            });
+            if (Objects.nonNull(e.getIfStop())) {
+                e.setStop(e.getIfStop()?"是":"否");
+            }
+            DeptRespDTO dept = deptApi.getDept(e.getDeptId());
+            if (dept != null) {
+                e.setDeptName(dept.getName());
+            }
+        });
         // 导出 Excel
         ExcelUtils.write(response, "维修工单.xls", "数据", IotMaintainRespVO.class,
-                        BeanUtils.toBean(list, IotMaintainRespVO.class));
+                        BeanUtils.toBean(bean, IotMaintainRespVO.class));
     }
 
 

+ 7 - 5
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/maintain/vo/IotMaintainRespVO.java

@@ -28,7 +28,7 @@ public class IotMaintainRespVO {
     private String failureName;
 
     @Schema(description = "设备id", requiredMode = Schema.RequiredMode.REQUIRED, example = "11515")
-    @ExcelProperty("设备id")
+//    @ExcelProperty("设备id")
     private Long deviceId;
 
     @Schema(description = "状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
@@ -36,8 +36,10 @@ public class IotMaintainRespVO {
     private String status;
 
     @Schema(description = "是否停机")
-    @ExcelProperty("是否停机")
+//    @ExcelProperty("是否停机")
     private Boolean ifStop;
+    @ExcelProperty("是否停机")
+    private String stop;
 
     @Schema(description = "故障时间")
     @ExcelProperty("故障时间")
@@ -84,15 +86,14 @@ public class IotMaintainRespVO {
     private String deviceName;
 
     @Schema(description = "流程实例id", example = "6913")
-    @ExcelProperty("流程实例id")
+//    @ExcelProperty("流程实例id")
     private String processInstanceId;
 
     @Schema(description = "审核状态", example = "2")
-    @ExcelProperty("审核状态")
+//    @ExcelProperty("审核状态")
     private Integer auditStatus;
 
     @Schema(description = "部门id", example = "27456")
-    @ExcelProperty("部门id")
     private Long deptId;
 
     @Schema(description = "维修描述")
@@ -124,6 +125,7 @@ public class IotMaintainRespVO {
 
     private String supplierName;
 
+    @ExcelProperty("所在部门")
     private String deptName;
 
     private String createName;

+ 7 - 7
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/vo/IotDeviceRespVO.java

@@ -30,7 +30,7 @@ public class IotDeviceRespVO {
     private String deviceName;
 
     @Schema(description = "品牌", requiredMode = Schema.RequiredMode.REQUIRED)
-    @ExcelProperty("品牌")
+//    @ExcelProperty("品牌")
     private Long brand;
 
     @Schema(description = "规格型号")
@@ -38,7 +38,6 @@ public class IotDeviceRespVO {
     private String model;
 
     @Schema(description = "所在部门", requiredMode = Schema.RequiredMode.REQUIRED, example = "8581")
-    @ExcelProperty("所在部门")
     private Long deptId;
 
     @Schema(description = "设备状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
@@ -58,11 +57,11 @@ public class IotDeviceRespVO {
     private String remark;
 
     @Schema(description = "制造商id", requiredMode = Schema.RequiredMode.REQUIRED, example = "1695")
-    @ExcelProperty("制造商id")
+//    @ExcelProperty("制造商id")
     private Long manufacturerId;
 
     @Schema(description = "供应商id", example = "18330")
-    @ExcelProperty("供应商id")
+//    @ExcelProperty("供应商id")
     private Long supplierId;
 
     @Schema(description = "生产日期", requiredMode = Schema.RequiredMode.REQUIRED)
@@ -106,7 +105,7 @@ public class IotDeviceRespVO {
     private Double remainAmount;
 
     @Schema(description = "资料分类id", example = "5597")
-    @ExcelProperty("资料分类id")
+//    @ExcelProperty("资料分类id")
     private Long infoId;
 
     @Schema(description = "资料类型", example = "1")
@@ -126,7 +125,7 @@ public class IotDeviceRespVO {
     private String infoUrl;
 
     @Schema(description = "动态模板信息")
-    @ExcelProperty("动态模板信息")
+//    @ExcelProperty("动态模板信息")
     private String templateJson;
 
     @Schema(description = "资产类别")
@@ -146,6 +145,7 @@ public class IotDeviceRespVO {
     @Schema(description = "制造商名称")
     private String zzName;
     @Schema(description = "供应商名称")
+    @ExcelProperty("供应商")
     private String supplierName;
     @Schema(description = "规格名称")
     private String modelName;
@@ -222,7 +222,7 @@ public class IotDeviceRespVO {
     private List<IotMaintenanceBomRespVO> groupBomDistances;
 
     @Schema(description = "生产厂家")
-    @ExcelProperty("生产厂家")
+    @ExcelProperty("生产厂家/制造商")
     private String manufacturer;
 
     @Schema(description = "根据设备保养项规则 应该生成保养工单 标识")