From 67ac603f410319a0d999e5f493c8ef2d74163fe1 Mon Sep 17 00:00:00 2001
From: Houjie <714924425@qq.com>
Date: 星期一, 15 九月 2025 19:44:47 +0800
Subject: [PATCH] 保养标准:点检标准导入 点检名称修改/ 设备台账导入

---
 src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java |  128 ++++++++++++++++++------------------------
 1 files changed, 56 insertions(+), 72 deletions(-)

diff --git a/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java b/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java
index 732defb..e696b47 100644
--- a/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java
+++ b/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java
@@ -16,7 +16,6 @@
 import org.jeecg.common.constant.CommonConstant;
 import org.jeecg.common.system.base.controller.JeecgController;
 import org.jeecg.common.util.TranslateDictTextUtils;
-import org.jeecg.modules.eam.constant.AssetStatusEnum;
 import org.jeecg.modules.eam.constant.MaintenanceCategoryEnum;
 import org.jeecg.modules.eam.constant.MaintenanceStandardStatusEnum;
 import org.jeecg.modules.eam.entity.EamEquipment;
@@ -82,9 +81,7 @@
 //    @AutoLog(value = "璁惧鍙拌处-鍒嗛〉鍒楄〃鏌ヨ")
     @ApiOperation(value = "璁惧鍙拌处-鍒嗛〉鍒楄〃鏌ヨ", notes = "璁惧鍙拌处-鍒嗛〉鍒楄〃鏌ヨ")
     @GetMapping(value = "/list")
-    public Result<?> queryPageList(EamEquipmentQuery eamEquipment,
-                                   @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
-                                   @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) {
+    public Result<?> queryPageList(EamEquipmentQuery eamEquipment, @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) {
 //        QueryWrapper<EamEquipment> queryWrapper = QueryGenerator.initQueryWrapper(eamEquipment, req.getParameterMap());
         IPage<EamEquipment> page = new Page<>(pageNo, pageSize);
         IPage<EamEquipment> pageList = eamEquipmentService.queryPageList(page, eamEquipment);
@@ -181,7 +178,7 @@
             return Result.error("鏈壘鍒板搴旀暟鎹�");
         }
         EamEquipmentExtend extend = eamEquipmentExtendService.getById(id);
-        if(extend != null){
+        if (extend != null) {
             eamEquipment.setRepairStatus(extend.getRepairStatus());
             eamEquipment.setMaintenanceStatus(extend.getMaintenanceStatus());
         }
@@ -229,62 +226,54 @@
             // 鑾峰彇涓婁紶鏂囦欢瀵硅薄
             MultipartFile file = entity.getValue();
             ImportParams params = new ImportParams();
-            params.setTitleRows(0);
-            params.setHeadRows(1);
-            params.setNeedSave(true);
+            params.setHeadRows(1); // 璺宠繃绗�1琛岋紝浠庣2琛屽紑濮嬭鍙栧垪鍚�
+            params.setTitleRows(1); // 绗�1琛屼负鏍囬琛岋紙鍙�夛級
             params.setStartSheetIndex(0);
             params.setSheetNum(1);
             try {
                 List<EamEquipment> list = ExcelImportUtil.importExcel(file.getInputStream(), EamEquipment.class, params);
-                //update-begin-author:taoyan date:20190528 for:鎵归噺鎻掑叆鏁版嵁
                 long start = System.currentTimeMillis();
-//                service.saveBatch(list);
                 StringBuilder sb = new StringBuilder();
                 for (EamEquipment eamEquipment : list) {
-                    //蹇呭~瀛楁鏍¢獙
+                    boolean isInvalid = false;
+                    StringBuilder errorMsg = new StringBuilder();
+                    // 璁惧缂栧彿鍜岃澶囧悕绉版牎楠�
                     if (StringUtils.isBlank(eamEquipment.getEquipmentCode()) || StringUtils.isBlank(eamEquipment.getEquipmentName())) {
-                        sb.append(String.format("璁惧缂栫爜[%s]鎴栬澶囧悕绉癧%s]涓虹┖锛屾棤娉曞鍏n\n", eamEquipment.getEquipmentCode(), eamEquipment.getEquipmentName()));
-                        continue;
+                        errorMsg.append(String.format("璁惧缂栫爜[%s]鎴栬澶囧悕绉颁负绌猴紝鏃犳硶瀵煎叆\n\n", eamEquipment.getEquipmentCode(), eamEquipment.getEquipmentName()));
+                        isInvalid = true;
                     }
-                    if (StringUtils.isBlank(eamEquipment.getEquipmentCategory())) {
-                        sb.append(String.format("璁惧缂栫爜[%s]璁惧鍒嗙被涓虹┖锛屾棤娉曞鍏n\n", eamEquipment.getEquipmentCode()));
-                        continue;
+                    // 鎵�灞炰骇绾挎牎楠�
+                    if (StringUtils.isBlank(eamEquipment.getOrgId())) {
+                        errorMsg.append(String.format("璁惧缂栫爜[%s]鎵�灞炰骇绾夸负绌猴紝鏃犳硶瀵煎叆\n\n", eamEquipment.getEquipmentCode()));
+                        isInvalid = true;
                     }
-                    if (StringUtils.isBlank(eamEquipment.getOrgId()) || StringUtils.isBlank(eamEquipment.getEquipmentManager())) {
-                        sb.append(String.format("璁惧缂栫爜[%s]浣跨敤杞﹂棿鎴栬澶囩鐞嗗憳涓虹┖锛屾棤娉曞鍏n\n", eamEquipment.getEquipmentCode()));
-                        continue;
-                    }
-//                    if (eamEquipment.getAcceptanceCheckDate() == null) {
-//                        sb.append(String.format("璁惧缂栫爜[%s]楠屾敹涓虹┖锛屾棤娉曞鍏n\r", eamEquipment.getEquipmentCode()));
-//                        continue;
-//                    }
-//                    if (StringUtils.isBlank(eamEquipment.getTechnologyStatus())) {
-//                        sb.append(String.format("璁惧缂栫爜[%s]鎶�鏈姸鎬佷负绌猴紝鏃犳硶瀵煎叆\n\r", eamEquipment.getEquipmentCode()));
-//                        continue;
-//                    }
+                    // 璁惧缂栫爜鍞竴鎬ф牎楠�
                     EamEquipment one = eamEquipmentService.getOne(new LambdaQueryWrapper<EamEquipment>().eq(EamEquipment::getEquipmentCode, eamEquipment.getEquipmentCode()).eq(EamEquipment::getDelFlag, CommonConstant.DEL_FLAG_0));
                     if (one != null) {
-                        sb.append(String.format("璁惧缂栫爜[%s]宸插瓨鍦紝鏃犳硶閲嶅瀵煎叆\n\r", eamEquipment.getEquipmentCode()));
+                        errorMsg.append(String.format("璁惧缂栫爜[%s]宸插瓨鍦紝鏃犳硶閲嶅瀵煎叆\n\r", eamEquipment.getEquipmentCode()));
+                        isInvalid = true;
+                    }
+                    // 鏍¢獙涓嶉�氳繃锛岃褰曢敊璇苟璺宠繃瀵煎叆
+                    if (isInvalid) {
+                        sb.append(errorMsg);
                         continue;
                     }
+                    // 鏍¢獙閫氳繃锛屾墽琛屽鍏�
                     if (!CommonConstant.DEFAULT_1.equals(eamEquipment.getMdcFlag())) {
                         eamEquipment.setMdcFlag(CommonConstant.DEFAULT_0);
                     }
                     EamEquipment equipment = eamEquipmentService.saveEquipment(eamEquipment);
                     if (equipment == null) {
-                        //淇濆瓨澶辫触锛岃烦杩囨湰娆″惊鐜�
                         sb.append(String.format("璁惧缂栫爜[%s]淇濆瓨澶辫触锛屾棤娉曞鍏n\r", eamEquipment.getEquipmentCode()));
-                        continue;
                     }
-                    //璋冪敤mdcEquipment鎻掑叆MDC璁惧
-//                    if (CommonConstant.DEFAULT_1.equals(eamEquipment.getMdcFlag())) {
-//                        //鎻掑叆MDC璁惧
-//                        MdcEquipment mdcEquipment = new MdcEquipment();
-//                        mdcEquipment.setEquipmentId(eamEquipment.getEquipmentCode());
-//                        mdcEquipment.setEquipmentType(eamEquipment.getDeviceType());
-//                        mdcEquipment.setEquipmentName(eamEquipment.getEquipmentName());
-//                        mdcEquipmentService.addNewEquipmentFromEam(mdcEquipment, eamEquipment.getOrgId());
-//                    }
+                    // MDC璁惧鐩稿叧閫昏緫锛堣嫢鏈夐渶瑕侊級
+                    // if (CommonConstant.DEFAULT_1.equals(eamEquipment.getMdcFlag())) {
+                    //     MdcEquipment mdcEquipment = new MdcEquipment();
+                    //     mdcEquipment.setEquipmentId(eamEquipment.getEquipmentCode());
+                    //     mdcEquipment.setEquipmentType(eamEquipment.getDeviceType());
+                    //     mdcEquipment.setEquipmentName(eamEquipment.getEquipmentName());
+                    //     mdcEquipmentService.addNewEquipmentFromEam(mdcEquipment, eamEquipment.getOrgId());
+                    // }
                 }
                 //400鏉� saveBatch娑堣�楁椂闂�1592姣  寰幆鎻掑叆娑堣�楁椂闂�1947姣
                 //1200鏉�  saveBatch娑堣�楁椂闂�3687姣 寰幆鎻掑叆娑堣�楁椂闂�5212姣
@@ -295,7 +284,7 @@
                 }
                 return Result.ok("鏂囦欢瀵煎叆鎴愬姛锛佹暟鎹鏁帮細" + list.size());
             } catch (Exception e) {
-                //update-begin-author:taoyan date:20211124 for: 瀵煎叆鏁版嵁閲嶅澧炲姞鎻愮ず
+
                 String msg = e.getMessage();
                 log.error(msg, e);
                 if (msg != null && msg.indexOf("Duplicate entry") >= 0) {
@@ -303,7 +292,7 @@
                 } else {
                     return Result.error("鏂囦欢瀵煎叆澶辫触:" + e.getMessage());
                 }
-                //update-end-author:taoyan date:20211124 for: 瀵煎叆鏁版嵁閲嶅澧炲姞鎻愮ず
+
             } finally {
                 try {
                     file.getInputStream().close();
@@ -315,32 +304,18 @@
         return Result.error("鏂囦欢瀵煎叆澶辫触锛�");
     }
 
-//    @ApiOperation(value = "璁惧琛�-閫氳繃杞﹂棿ids鑾峰彇璁惧鏍�", notes = "璁惧琛�-閫氳繃杞﹂棿ids鑾峰彇璁惧鏍�")
-//    @GetMapping(value = "/loadTreeListByProductionIds")
-//    public Result<List<EamEquipmentTree>> loadTreeListByProductionIds(@RequestParam(name = "ids", required = true) String ids) {
-//        Result<List<EamEquipmentTree>> result = new Result<>();
-//        try {
-//            List<EamEquipmentTree> mdcEquipmentTreeList = eamEquipmentService.loadTreeListByProductionIds(ids);
-//            result.setSuccess(true);
-//            result.setResult(mdcEquipmentTreeList);
-//        } catch (Exception e) {
-//            log.error(e.getMessage(), e);
-//        }
-//        return result;
-//    }
 
     /**
      * 妫�绱㈣澶�
-     * @param keyword 鏌ヨ鍏抽敭璇� 璁惧缂栧彿锛岃澶囧悕绉版ā绯婂尮閰�
+     *
+     * @param keyword  鏌ヨ鍏抽敭璇� 璁惧缂栧彿锛岃澶囧悕绉版ā绯婂尮閰�
      * @param pageSize 涓�娆¤繑鍥炲灏戣褰�
-     * @param id 璁惧涓婚敭
+     * @param id       璁惧涓婚敭
      * @return
      */
     @ApiOperation(value = "璁惧琛�-寮傛鍔犺浇璁惧鍒楄〃", notes = "璁惧琛�-寮傛鍔犺浇璁惧鍒楄〃")
     @GetMapping(value = "/asyncLoadEquipment")
-    public Result<?> asyncLoadEquipment(@RequestParam(name="keyword",required = false) String keyword,
-                                        @RequestParam(value = "pageSize", required = false, defaultValue = "20") Integer pageSize,
-                                        @RequestParam(name="id",required = false) String id) {
+    public Result<?> asyncLoadEquipment(@RequestParam(name = "keyword", required = false) String keyword, @RequestParam(value = "pageSize", required = false, defaultValue = "20") Integer pageSize, @RequestParam(name = "id", required = false) String id) {
         List<EquipmentSearchResult> resultList = eamEquipmentService.asyncLoadEquipment(keyword, pageSize, id);
         return Result.ok(resultList);
     }
@@ -353,18 +328,27 @@
         if (workOrder == null) {
             return Result.error("宸ュ崟涓嶅瓨鍦紒");
         }
-        List<Map<String, Object>> equipmentMapList = eamEquipmentService.list(new LambdaQueryWrapper<EamEquipment>()
-                        .eq(EamEquipment::getOrgId, workOrder.getFactoryId())
-                        .eq(EamEquipment::getDelFlag, CommonConstant.DEL_FLAG_0)
-                        .apply("NOT EXISTS (SELECT 1 FROM eam_inspection_order t WHERE t.equipment_id = eam_equipment.id AND t.work_order_id = {0})", orderId)
-                        .apply("EXISTS (SELECT 1 FROM eam_maintenance_standard t WHERE t.equipment_id = eam_equipment.id AND t.del_flag = {0} " +
-                                        "AND t.standard_status = {1} AND t.maintenance_category = {2})",
-                                CommonConstant.DEL_FLAG_0, MaintenanceStandardStatusEnum.NORMAL.name(), MaintenanceCategoryEnum.POINT_INSPECTION.name()))
-                .stream().map(e -> (Map<String, Object>) new HashMap<String, Object>() {{
-                    put("value", e.getId());
-                    put("label", e.getEquipmentCode() + "[" + e.getEquipmentName() + "]");
-                    put("text", e.getEquipmentCode() + "[" + e.getEquipmentName() + "]");
-                }}).collect(Collectors.toList());
+        List<Map<String, Object>> equipmentMapList = eamEquipmentService.list(new LambdaQueryWrapper<EamEquipment>().eq(EamEquipment::getOrgId, workOrder.getFactoryId()).eq(EamEquipment::getDelFlag, CommonConstant.DEL_FLAG_0).apply("NOT EXISTS (SELECT 1 FROM eam_inspection_order t WHERE t.equipment_id = eam_equipment.id AND t.work_order_id = {0})", orderId).apply("EXISTS (SELECT 1 FROM eam_maintenance_standard t WHERE t.equipment_id = eam_equipment.id AND t.del_flag = {0} " + "AND t.standard_status = {1} AND t.maintenance_category = {2})", CommonConstant.DEL_FLAG_0, MaintenanceStandardStatusEnum.NORMAL.name(), MaintenanceCategoryEnum.POINT_INSPECTION.name())).stream().map(e -> (Map<String, Object>) new HashMap<String, Object>() {{
+            put("value", e.getId());
+            put("label", e.getEquipmentCode() + "[" + e.getEquipmentName() + "]");
+            put("text", e.getEquipmentCode() + "[" + e.getEquipmentName() + "]");
+        }}).collect(Collectors.toList());
+        return Result.ok(equipmentMapList);
+    }
+
+    @AutoLog(value = "鏌ヨ鎺掍骇宸ュ崟鎵�灞炰骇绾夸笅闇�瑕佸伐鑹虹偣妫�鐨勮澶囧垪琛�")
+    @ApiOperation(value = "鏌ヨ鎺掍骇宸ュ崟鎵�灞炰骇绾夸笅闇�瑕佸伐鑹虹偣妫�鐨勮澶囧垪琛�", notes = "鏌ヨ鎺掍骇宸ュ崟鎵�灞炰骇绾夸笅闇�瑕佸伐鑹虹偣妫�鐨勮澶囧垪琛�")
+    @GetMapping(value = "/listProductionLineProcessCheckEquipment")
+    public Result<?> listProductionLineProcessCheckEquipment(@RequestParam("orderId") String orderId) {
+        MesProductionWorkOrder workOrder = mesProductionWorkOrderService.getById(orderId);
+        if (workOrder == null) {
+            return Result.error("宸ュ崟涓嶅瓨鍦紒");
+        }
+        List<Map<String, Object>> equipmentMapList = eamEquipmentService.list(new LambdaQueryWrapper<EamEquipment>().eq(EamEquipment::getOrgId, workOrder.getFactoryId()).eq(EamEquipment::getDelFlag, CommonConstant.DEL_FLAG_0).apply("EXISTS (SELECT 1 FROM eam_equipment_process_parameters t WHERE t.equipment_id = eam_equipment.id)").apply("NOT EXISTS (SELECT 1 FROM eam_process_check t WHERE t.equipment_id = eam_equipment.id AND t.work_order_id = {0})", orderId)).stream().map(e -> (Map<String, Object>) new HashMap<String, Object>() {{
+            put("value", e.getId());
+            put("label", e.getEquipmentCode() + "[" + e.getEquipmentName() + "]");
+            put("text", e.getEquipmentCode() + "[" + e.getEquipmentName() + "]");
+        }}).collect(Collectors.toList());
         return Result.ok(equipmentMapList);
     }
 }

--
Gitblit v1.9.3