From bcd90314646203b32f73c89c1c2f89eaa96e2c9f Mon Sep 17 00:00:00 2001
From: zhangherong <571457620@qq.com>
Date: 星期五, 18 七月 2025 18:05:35 +0800
Subject: [PATCH] art: 设备台账-查询需要做技术状态鉴定的设备列表

---
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamSecondMaintenanceOrderServiceImpl.java |   79 +++++++++++++++++++++++++++++++--------
 1 files changed, 63 insertions(+), 16 deletions(-)

diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamSecondMaintenanceOrderServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamSecondMaintenanceOrderServiceImpl.java
index 75ab1fa..89cdf03 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamSecondMaintenanceOrderServiceImpl.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamSecondMaintenanceOrderServiceImpl.java
@@ -114,6 +114,9 @@
         }
         //鏌ヨ鏉′欢杩囨护
         if (query != null) {
+            if (StringUtils.isNotBlank(query.getId())){
+                queryWrapper.eq("wmo.id", query.getId());
+            }
             if (StringUtils.isNotBlank(query.getEquipmentId())) {
                 queryWrapper.eq("wmo.equipment_id", query.getEquipmentId());
             }
@@ -180,6 +183,7 @@
             eamMaintenanceStandardDetailList.forEach(item -> {
                 EamSecondMaintenanceOrderDetail detail = new EamSecondMaintenanceOrderDetail();
                 BeanUtils.copyProperties(item, detail);
+                detail.setId(null);
                 detail.setOrderId(order.getId());
                 requestTableDetailList.add(detail);
             });
@@ -259,13 +263,16 @@
                 throw new JeecgBootException("涓嶆槸鎿嶄綔宸ワ紝鏃犳硶棰嗗彇姝ゅ伐鍗曪紒");
             }
         }
+        List<String> usernames = new ArrayList<>();
         if (sysUser != null) {
-            entity.setOperator(sysUser.getUsername());
-        }
-        if (BusinessCodeConst.PCR0001.equals(sysUser.getPost())) {
-            entity.setOperator(sysUser.getUsername());
-        }else if (BusinessCodeConst.PCR0002.equals(sysUser.getPost())) {
-            entity.setRepairman(sysUser.getUsername());
+            if (BusinessCodeConst.PCR0001.equals(sysUser.getPost())) {
+                entity.setOperator(sysUser.getUsername());
+                usernames.add(entity.getOperator());
+            }
+            if (BusinessCodeConst.PCR0002.equals(sysUser.getPost())) {
+                entity.setRepairman(sysUser.getUsername());
+                usernames.add(entity.getRepairman());
+            }
         }
         entity.setMaintenanceStatus(SecondMaintenanceStatusEnum.UNDER_MAINTENANCE.name());
         entity.setActualStartTime(new Date());
@@ -283,8 +290,6 @@
             variables.put("comment", entity.getRemark());
         }
         variables.put("proofreading", true);
-        List<String> usernames = new ArrayList<>();
-        usernames.add(entity.getOperator());
         if (sysUser != null) {
             if (BusinessCodeConst.PCR0001.equals(sysUser.getPost())) {
                 variables.put("operator_task", usernames);
@@ -371,42 +376,84 @@
                 }
                 if (BusinessCodeConst.PCR0001.equals(user.getPost())) {
                     entity.setOperator(user.getUsername());
+                    values.put("organization", "浜屼繚鎿嶄綔宸ユ墽琛岀粨鏉�");
+                    values.put("comment", "浜屼繚鎿嶄綔宸ユ墽琛岀粨鏉�");
+                    request.setComment("浜屼繚鎿嶄綔宸ユ墽琛岀粨鏉�");
                     //澶勭悊瀵瑰簲璇︽儏
+                    if (CollectionUtils.isNotEmpty(request.getTableDetailList())){
+                        //鍒犻櫎鍘熸湁鏁版嵁
+                        List<EamSecondMaintenanceOrderDetail> addList = new ArrayList<>();
+                        //鍏堝垹闄ゅ師鏈�
+                        LambdaQueryWrapper<EamSecondMaintenanceOrderDetail> queryWrapper = new LambdaQueryWrapper<>();
+                        queryWrapper.eq(EamSecondMaintenanceOrderDetail::getOrderId, entity.getId());
+                        queryWrapper.eq(EamSecondMaintenanceOrderDetail::getItemCategory,EamMaintenanceStandardDetailCategory.OPERATOR_MAINTENANCE.name());
+                        secondMaintenanceOrderDetailService.remove(queryWrapper);
+                        request.getTableDetailList().forEach(tableDetail -> {
+                            EamSecondMaintenanceOrderDetail eamMaintenanceStandardDetail=new EamSecondMaintenanceOrderDetail();
+                            BeanUtils.copyProperties(tableDetail, eamMaintenanceStandardDetail);
+                            eamMaintenanceStandardDetail.setOrderId(entity.getId());
+                            addList.add(eamMaintenanceStandardDetail);
+                        });
+                        secondMaintenanceOrderDetailService.saveBatch(addList);
+                    }
                 }else if (BusinessCodeConst.PCR0002.equals(user.getPost())) {
                     entity.setRepairman(user.getUsername());
+                    values.put("organization", "浜屼繚缁翠慨宸ユ墽琛岀粨鏉�");
+                    values.put("comment", "浜屼繚缁翠慨宸ユ墽琛岀粨鏉�");
+                    request.setComment("浜屼繚缁翠慨宸ユ墽琛岀粨鏉�");
                     //澶勭悊瀵瑰簲璇︽儏
+                    if (CollectionUtils.isNotEmpty(request.getTableDetailList())){
+                        //鍒犻櫎鍘熸湁鏁版嵁
+                        List<EamSecondMaintenanceOrderDetail> addList = new ArrayList<>();
+                        //鍏堝垹闄ゅ師鏈�
+                        LambdaQueryWrapper<EamSecondMaintenanceOrderDetail> queryWrapper = new LambdaQueryWrapper<>();
+                        queryWrapper.eq(EamSecondMaintenanceOrderDetail::getOrderId, entity.getId());
+                        queryWrapper.eq(EamSecondMaintenanceOrderDetail::getItemCategory,EamMaintenanceStandardDetailCategory.REPAIRER_MAINTENANCE.name());
+                        secondMaintenanceOrderDetailService.remove(queryWrapper);
+                        request.getTableDetailList().forEach(tableDetail -> {
+                            EamSecondMaintenanceOrderDetail eamMaintenanceStandardDetail=new EamSecondMaintenanceOrderDetail();
+                            BeanUtils.copyProperties(tableDetail, eamMaintenanceStandardDetail);
+                            eamMaintenanceStandardDetail.setOrderId(entity.getId());
+                            addList.add(eamMaintenanceStandardDetail);
+                        });
+                        secondMaintenanceOrderDetailService.saveBatch(addList);
+                    }
                 }
                 values.put("dataId", entity.getId());
-                values.put("organization", "涓変繚鎵ц缁撴潫");
-                values.put("comment", "涓変繚鎵ц缁撴潫");
                 break;
             case WAIT_ADMIN_CONFIRM:
                 //绠$悊鍛樼‘璁�
-                userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), equipment.getFactoryOrgCode(), BusinessCodeConst.PCR0003);
+                userSelectors = sysUserService.selectOperatorList(equipment.getEquipmentCode(), equipment.getFactoryOrgCode(), BusinessCodeConst.PCR0006);
                 if (CollectionUtil.isEmpty(userSelectors)) {
                     throw new JeecgBootException("璁惧鏈瓨鍦ㄦ鏌ヤ汉锛屾棤娉曡繘鍏ヤ笅绾у鎵癸紒");
                 }else{
                     userApprovalList= userSelectors.stream().map(UserSelector::getUsername).collect(Collectors.toList());
                     values.put("NextAssignee", userApprovalList);
                     values.put("dataId", entity.getId());
-                    values.put("organization",request.getComment());
-                    values.put("comment", request.getComment());
+                    values.put("organization",request.getDealDescription());
+                    values.put("comment", request.getDealDescription());
+                    values.put("manageUserResult",request.getManageUserResult());
                     entity.setMaintenanceStatus(SecondMaintenanceStatusEnum.WAIT_INSPECTOR_CONFIRM.name());
                     entity.setManageUser(user.getUsername());
                     entity.setProblemDescription(request.getProblemDescription());
-                    entity.setDealDescription(request.getComment());
+                    entity.setManageUserResult(request.getManageUserResult());
+                    entity.setDealDescription(request.getDealDescription());
                     entity.setConfirmTime(new Date());
+                    request.setComment(request.getDealDescription());
                 }
                 break;
             case WAIT_INSPECTOR_CONFIRM:
                 //妫�鏌ヤ汉纭
                 values.put("dataId", entity.getId());
-                values.put("organization",request.getComment());
-                values.put("comment", request.getComment());
+                values.put("organization",request.getInspectConfirmComment());
+                values.put("comment", request.getInspectConfirmComment());
+                values.put("inspectorResult",request.getInspectorResult());
                 entity.setMaintenanceStatus(SecondMaintenanceStatusEnum.COMPLETE.name());
                 entity.setInspector(user.getUsername());
+                entity.setInspectorResult(request.getInspectorResult());
                 entity.setInspectConfirmComment(request.getInspectConfirmComment());
                 entity.setInspectConfirmTime(new Date());
+                request.setComment(request.getDealDescription());
                 break;
             default:
                 throw  new JeecgBootException("瀹℃壒澶辫触");

--
Gitblit v1.9.3