From 3661612cc6c99bccf0fb6a212d22c51ee7841c6e Mon Sep 17 00:00:00 2001
From: zhangherong <571457620@qq.com>
Date: 星期一, 14 七月 2025 09:49:09 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/aspect/EquipmentHistoryLogAspect.java          |    2 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamThirdMaintenanceOrderService.java         |    3 
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/request/EamThirdMaintenanceRequest.java               |    8 --
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamThirdMaintenanceOrderServiceImpl.java |   91 +++++++++---------------------
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamThirdMaintenanceOrderController.java    |   12 ---
 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamThirdMaintenanceOrderDetail.java     |    6 --
 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/ThirdMaintenanceStatusEnum.java       |   10 ++
 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamThirdMaintenanceOrder.java           |   18 ++----
 8 files changed, 46 insertions(+), 104 deletions(-)

diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/aspect/EquipmentHistoryLogAspect.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/aspect/EquipmentHistoryLogAspect.java
index 26b729f..0f0e9cf 100644
--- a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/aspect/EquipmentHistoryLogAspect.java
+++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/aspect/EquipmentHistoryLogAspect.java
@@ -117,7 +117,7 @@
                     if (ThirdMaintenanceStatusEnum.COMPLETE.name().equals(order.getMaintenanceStatus())) {
                         log.setEquipmentId(order.getEquipmentId());
                         log.setBusinessId(order.getId());
-                        log.setOperator(order.getOperator());
+                        log.setOperator(order.getRepairman());
                         log.setDescription(order.getProblemDescription());
                         log.setCreateTime(order.getActualEndTime());
                     }
diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/ThirdMaintenanceStatusEnum.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/ThirdMaintenanceStatusEnum.java
index 55d0ea6..52cb9ba 100644
--- a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/ThirdMaintenanceStatusEnum.java
+++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/ThirdMaintenanceStatusEnum.java
@@ -3,9 +3,15 @@
 public enum ThirdMaintenanceStatusEnum {
     WAIT_MAINTENANCE, //寰呬繚鍏�
     UNDER_MAINTENANCE, //淇濆吇涓�
-    WAIT_CONFIRM, //寰呯鐞嗗憳纭
-    WAIT_LEADER_CONFIRM, // 寰呴瀵肩‘璁�
+    WAIT_CHECK, //寰呮鏌�
+    OPERATOR_SIGNATURE, // 鎿嶄綔浜虹瀛�
+    REPAIRMAN_SIGNATURE, // 缁翠慨浜虹瀛�
+    REPAIR_MANAGER_SIGNATURE, //缁翠慨瀹や富浠荤瀛�
+    INSPECTOR_SIGNATURE, //璁惧妫�鏌ヤ汉绛惧瓧
     COMPLETE,  //宸插畬鎴�
+    FREEZE, // 宸查攣瀹�
+    CHANGE, // 鍙樻洿涓�
+    CANCEL,// 宸插彇娑�
     ABOLISH, //宸蹭綔搴�
     ;
 
diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamThirdMaintenanceOrder.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamThirdMaintenanceOrder.java
index 50091af..4d1e8db 100644
--- a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamThirdMaintenanceOrder.java
+++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamThirdMaintenanceOrder.java
@@ -1,5 +1,6 @@
 package org.jeecg.modules.eam.entity;
 
+import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.fasterxml.jackson.annotation.JsonFormat;
@@ -53,26 +54,26 @@
      */
     @Excel(name = "鏍囧噯ID", width = 15)
     @ApiModelProperty(value = "鏍囧噯ID")
-    @Dict(dicCode = "eam_maintenance_standard, standard_name, id")
+    @Dict(dictTable = "eam_maintenance_standard", dicCode = "id", dicText = "standard_name")
     private String standardId;
     /**
      * 璁″垝淇濆吇鏃ユ湡
      */
-    @ApiModelProperty(value = "璁″垝淇濆吇鏃ユ湡")
+    @ApiModelProperty(value = "璁″垝淇濆吇鏃ユ湡;鎻愬墠70澶╃敓鎴愬伐鍗�")
     @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern = "yyyy-MM-dd")
     private Date maintenanceDate;
     /**
      * 閿佸畾宸ュ崟鏃ユ湡
      */
-    @ApiModelProperty(value = "閿佸畾宸ュ崟鏃ユ湡")
+    @ApiModelProperty(value = "閿佸畾宸ュ崟鏃ユ湡;鎻愬墠55澶╅攣瀹氬伐鍗�")
     @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern = "yyyy-MM-dd")
     private Date freezeOrderDate;
     /**
      * 宸ュ崟杩囨湡鏃ユ湡
      */
-    @ApiModelProperty(value = "宸ュ崟杩囨湡鏃ユ湡")
+    @ApiModelProperty(value = "宸ュ崟杩囨湡鏃ユ湡;鍒版湡鏈仛鐩存帴杩囨湡")
     @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
     @DateTimeFormat(pattern = "yyyy-MM-dd")
     private Date orderExpirationDate;
@@ -103,7 +104,7 @@
      * 淇濆吇鐘舵��
      */
     @Excel(name = "淇濆吇鐘舵��", width = 15)
-    @ApiModelProperty(value = "淇濆吇鐘舵��")
+    @ApiModelProperty(value = "淇濆吇鐘舵��;寰呬繚鍏汇�佷繚鍏讳腑銆佸緟妫�鏌ャ�佹搷浣滀汉绛惧瓧銆佺淮淇汉绛惧瓧銆佺淮淇涓讳换绛惧瓧銆佽澶囨鏌ヤ汉绛惧瓧銆佸凡瀹屾垚銆佸凡閿佸畾銆佸彉鏇翠腑銆佸凡鍙栨秷")
     @Dict(dicCode = "third_maintenance_status")
     private String maintenanceStatus;
     /**
@@ -113,13 +114,6 @@
     @ApiModelProperty(value = "鍒涘缓鏂瑰紡")
     @Dict(dicCode = "order_creation_method")
     private String creationMethod;
-    /**
-     * 淇濆吇浜�
-     */
-    @Excel(name = "淇濆吇浜�", width = 15)
-    @ApiModelProperty(value = "淇濆吇浜�")
-    @Dict(dicCode = "sys_user, realname, username")
-    private String operator;
     /**
      * 璁惧鍔熻兘鏄惁榻愬;鏄惁
      */
diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamThirdMaintenanceOrderDetail.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamThirdMaintenanceOrderDetail.java
index b4e07b7..6e6eafb 100644
--- a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamThirdMaintenanceOrderDetail.java
+++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/entity/EamThirdMaintenanceOrderDetail.java
@@ -32,12 +32,6 @@
     private static final long serialVersionUID = -862977193541514910L;
 
     /**
-     * 鍒犻櫎鏍囪
-     */
-    @Excel(name = "鍒犻櫎鏍囪", width = 15)
-    @ApiModelProperty(value = "鍒犻櫎鏍囪")
-    private Integer delFlag;
-    /**
      * 宸ュ崟ID
      */
     @Excel(name = "宸ュ崟ID", width = 15)
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamThirdMaintenanceOrderController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamThirdMaintenanceOrderController.java
index 9f1260a..2ce6030 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamThirdMaintenanceOrderController.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamThirdMaintenanceOrderController.java
@@ -74,20 +74,10 @@
 	@ApiOperation(value = "璁惧涓夌骇淇濆吇-娣诲姞", notes = "璁惧涓夌骇淇濆吇-娣诲姞")
 	@PostMapping(value = "/add")
 	public Result<?> add(@RequestBody EamThirdMaintenanceRequest request) {
-		if (request == null) {
-			return Result.error("娣诲姞鐨勫璞′笉鑳戒负绌猴紒");
-		}
-		if (CollectionUtil.isEmpty(request.getTableDetailList())) {
-			return Result.error("淇濆吇椤逛笉鑳戒负绌猴紒");
-		}
 		String codeSeq = businessCodeRuleService.generateBusinessCodeSeq(BusinessCodeConst.THIRD_MAINTENANCE_CODE_RULE);
 		request.setOrderNum(codeSeq);
 		request.setCreationMethod(OrderCreationMethodEnum.MANUAL.name());
-		boolean b = eamThirdMaintenanceOrderService.addMaintenance(request);
-		if (!b) {
-			return Result.error("娣诲姞澶辫触锛�");
-		}
-		return Result.OK("娣诲姞鎴愬姛锛�");
+		return eamThirdMaintenanceOrderService.addMaintenance(request);
 	}
 
 	/**
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/request/EamThirdMaintenanceRequest.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/request/EamThirdMaintenanceRequest.java
index a8d3c3e..d2df4bf 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/request/EamThirdMaintenanceRequest.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/request/EamThirdMaintenanceRequest.java
@@ -60,14 +60,6 @@
     @ApiModelProperty(value = "鍒犻櫎 淇濆吇椤规槑缁�")
     private List<EamThirdMaintenanceOrderDetail> removeDetailList;
 
-//    /**鍒楄〃 绮惧害鍙傛暟鏄庣粏*/
-//    @ApiModelProperty(value = "鍒楄〃 绮惧害鍙傛暟鏄庣粏")
-//    private List<EamPrecisionCheckDetail> precisionDetailList;
-//    /**鍒犻櫎 绮惧害鍙傛暟鏄庣粏*/
-//    @ApiModelProperty(value = "鍒犻櫎 绮惧害鍙傛暟鏄庣粏")
-//    private List<EamPrecisionCheckDetail> removePrecisionDetailList;
-
-
     //纭鎿嶄綔
     /**纭鎰忚*/
     @ApiModelProperty(value = "纭鎰忚")
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamThirdMaintenanceOrderService.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamThirdMaintenanceOrderService.java
index 4fbc0ca..fb2342a 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamThirdMaintenanceOrderService.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamThirdMaintenanceOrderService.java
@@ -2,6 +2,7 @@
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.jeecg.common.api.vo.Result;
 import org.jeecg.modules.eam.entity.EamThirdMaintenanceOrder;
 import com.baomidou.mybatisplus.extension.service.IService;
 import org.jeecg.modules.eam.request.EamThirdMaintenanceQuery;
@@ -28,7 +29,7 @@
      * @param request
      * @return
      */
-    boolean addMaintenance(EamThirdMaintenanceRequest request);
+    Result<String> addMaintenance(EamThirdMaintenanceRequest request);
 
     /**
      * 缂栬緫
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamThirdMaintenanceOrderServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamThirdMaintenanceOrderServiceImpl.java
index 205dea0..4d4acbe 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamThirdMaintenanceOrderServiceImpl.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamThirdMaintenanceOrderServiceImpl.java
@@ -20,10 +20,8 @@
 import org.jeecg.common.system.vo.LoginUser;
 import org.jeecg.common.util.oConvertUtils;
 import org.jeecg.modules.eam.aspect.annotation.EquipmentHistoryLog;
-import org.jeecg.modules.eam.constant.BusinessCodeConst;
-import org.jeecg.modules.eam.constant.EquipmentMaintenanceStatus;
-import org.jeecg.modules.eam.constant.EquipmentOperationTagEnum;
-import org.jeecg.modules.eam.constant.ThirdMaintenanceStatusEnum;
+import org.jeecg.modules.eam.constant.*;
+import org.jeecg.modules.eam.entity.EamBaseHFCode;
 import org.jeecg.modules.eam.entity.EamEquipment;
 import org.jeecg.modules.eam.entity.EamThirdMaintenanceOrder;
 import org.jeecg.modules.eam.entity.EamThirdMaintenanceOrderDetail;
@@ -87,6 +85,9 @@
     @Resource
     private IBaseFactoryService baseFactoryService;
 
+    @Resource
+    private IEamBaseHFCodeService eamBaseHFCodeService;
+
     @Override
     public IPage<EamThirdMaintenanceOrder> queryPageList(Page<EamThirdMaintenanceOrder> page, EamThirdMaintenanceQuery query) {
         QueryWrapper<EamThirdMaintenanceOrder> queryWrapper = new QueryWrapper<>();
@@ -148,60 +149,51 @@
 
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public boolean addMaintenance(EamThirdMaintenanceRequest request) {
+    public Result<String> addMaintenance(EamThirdMaintenanceRequest request) {
+        if (request == null) {
+            return Result.error("娣诲姞鐨勫璞′笉鑳戒负绌猴紒");
+        }
+        if (CollectionUtil.isEmpty(request.getTableDetailList())) {
+            return Result.error("淇濆吇椤逛笉鑳戒负绌猴紒");
+        }
         EamEquipment equipment = eamEquipmentService.getById(request.getEquipmentId());
         if (equipment == null) {
-            throw new JeecgBootException("璁惧涓嶅瓨鍦紝娣诲姞澶辫触锛�");
+            return Result.error("璁惧涓嶅瓨鍦紝娣诲姞澶辫触锛�");
         }
         EamThirdMaintenanceOrder order = new EamThirdMaintenanceOrder();
         order.setOrderNum(request.getOrderNum());
         order.setEquipmentId(request.getEquipmentId());
         order.setStandardId(request.getStandardId());
         order.setMaintenanceDate(request.getMaintenanceDate());
-        order.setOperator(request.getOperator());
         order.setRemark(request.getRemark());
         //鐘舵�佸垵濮嬪寲
         order.setMaintenanceStatus(ThirdMaintenanceStatusEnum.WAIT_MAINTENANCE.name());
         order.setCreationMethod(request.getCreationMethod());
         //鍒犻櫎鏍囪
         order.setDelFlag(CommonConstant.DEL_FLAG_0);
+        //HF鐮佸鐞�  涓変繚绉讳氦鍗旽F缂栫爜
+        EamBaseHFCode hFCodeA = eamBaseHFCodeService.selectByCategory(HfTemplateCategoryEnum.THIRD_MAINTENANCE_HANDOVER.name());
+        if (hFCodeA == null) {
+            return Result.error("娣诲姞澶辫触,鏈厤缃笁淇濈Щ浜ゅ崟HF缂栫爜锛�");
+        }
+        order.setHfCodeA(hFCodeA.getHfCode());
+        // 涓変繚楠屾敹鍗旽F缂栫爜
+        EamBaseHFCode hFCodeB = eamBaseHFCodeService.selectByCategory(HfTemplateCategoryEnum.THIRD_MAINTENANCE_ACCEPTANCE.name());
+        if (hFCodeB == null) {
+            return Result.error("娣诲姞澶辫触,鏈厤缃笁淇濋獙鏀跺崟HF缂栫爜锛�");
+        }
+        order.setHfCodeB(hFCodeB.getHfCode());
         eamThirdMaintenanceOrderMapper.insert(order);
         //澶勭悊鏄庣粏鏁版嵁
         if (CollectionUtil.isNotEmpty(request.getTableDetailList())) {
             request.getTableDetailList().forEach(tableDetail -> {
-//                tableDetail.setId(null);
+                tableDetail.setId(null);
                 tableDetail.setOrderId(order.getId());
             });
             thirdMaintenanceOrderDetailService.saveBatch(request.getTableDetailList());
         }
 
-        //鍒ゆ柇鏄惁瀛樺湪淇濆吇浜� 濡傛灉瀛樺湪鍒欏惎鍔ㄦ祦绋�
-//        if (StringUtils.isNotBlank(order.getOperator())) {
-//            //鍚姩娴佺▼
-//            flowCommonService.initActBusiness("宸ュ崟鍙�:" + order.getOrderNum() + ";璁惧缂栧彿: " + equipment.getEquipmentCode() + ";瀹夎浣嶇疆" + equipment.getInstallationPosition(),
-//                    order.getId(), "IEamThirdMaintenanceOrderService", "third_maintenance_process", null);
-//            Map<String, Object> variables = new HashMap<>();
-//            variables.put("dataId", order.getId());
-//            if (StrUtil.isEmpty(order.getRemark())) {
-//                variables.put("organization", "鏂板涓変繚宸ュ崟榛樿鍚姩娴佺▼");
-//                variables.put("comment", "鏂板涓変繚宸ュ崟榛樿鍚姩娴佺▼");
-//            } else {
-//                variables.put("organization", order.getRemark());
-//                variables.put("comment", order.getRemark());
-//            }
-//            variables.put("proofreading", true);
-//            //骞惰浠诲姟浼氱
-//            variables.put("maintenance_execution", Collections.singletonList(request.getOperator()));
-////            variables.put("precision_check", Collections.singletonList(equipment.getEquipmentManager()));
-//            Result result = flowDefinitionService.startProcessInstanceByKey("third_maintenance_process", variables);
-//            if (result != null) {
-//                //鏇存柊璁惧淇濆吇鐘舵��
-//                eamEquipmentExtendService.updateEquipmentMaintenanceStatus(order.getEquipmentId(), EquipmentMaintenanceStatus.UNDER_THIRD_MAINTENANCE.name());
-//                return result.isSuccess();
-//            }
-//        }
-
-        return true;
+        return Result.OK("娣诲姞鎴愬姛锛�");
     }
 
     @Override
@@ -219,7 +211,6 @@
             throw new JeecgBootException("鍙湁寰呬繚鍏荤姸鎬佺殑鏁版嵁鎵嶅彲缂栬緫锛�");
         }
         entity.setMaintenanceDate(request.getMaintenanceDate());
-        entity.setOperator(request.getOperator());
         entity.setRemark(request.getRemark());
 
         eamThirdMaintenanceOrderMapper.updateById(entity);
@@ -246,32 +237,6 @@
             List<String> ids = request.getRemoveDetailList().stream().map(EamThirdMaintenanceOrderDetail::getId).collect(Collectors.toList());
             thirdMaintenanceOrderDetailService.removeBatchByIds(ids);
         }
-        //鍒ゆ柇鏄惁瀛樺湪淇濆吇浜� 濡傛灉瀛樺湪鍒欏惎鍔ㄦ祦绋�
-        if (StringUtils.isNotBlank(entity.getOperator())) {
-            //鍚姩娴佺▼
-            flowCommonService.initActBusiness("宸ュ崟鍙�:" + entity.getOrderNum() + ";璁惧缂栧彿: " + equipment.getEquipmentCode() + ";瀹夎浣嶇疆" + equipment.getInstallationPosition(),
-                    entity.getId(), "IEamThirdMaintenanceOrderService", "third_maintenance_process", null);
-            Map<String, Object> variables = new HashMap<>();
-            variables.put("dataId", entity.getId());
-            if (StrUtil.isEmpty(entity.getRemark())) {
-                variables.put("organization", "鏂板涓変繚宸ュ崟榛樿鍚姩娴佺▼");
-                variables.put("comment", "鏂板涓変繚宸ュ崟榛樿鍚姩娴佺▼");
-            } else {
-                variables.put("organization", entity.getRemark());
-                variables.put("comment", entity.getRemark());
-            }
-            variables.put("proofreading", true);
-            //骞惰浠诲姟浼氱
-            variables.put("maintenance_execution", Collections.singletonList(request.getOperator()));
-//            variables.put("precision_check", Collections.singletonList(equipment.getEquipmentManager()));
-            Result result = flowDefinitionService.startProcessInstanceByKey("third_maintenance_process", variables);
-            if (result != null) {
-                //鏇存柊璁惧淇濆吇鐘舵��
-                eamEquipmentExtendService.updateEquipmentMaintenanceStatus(entity.getEquipmentId(), EquipmentMaintenanceStatus.UNDER_THIRD_MAINTENANCE.name());
-                return result.isSuccess();
-            }
-
-        }
         return true;
     }
 
@@ -296,7 +261,7 @@
         if (sysUser == null || !BusinessCodeConst.PCR0001.equals(sysUser.getPost())) {
             throw new JeecgBootException("涓嶆槸鎿嶄綔宸ワ紝鏃犳硶棰嗗彇姝ゅ伐鍗曪紒");
         }
-        entity.setOperator(sysUser.getUsername());
+        entity.setRepairman(sysUser.getUsername());
         entity.setMaintenanceStatus(ThirdMaintenanceStatusEnum.UNDER_MAINTENANCE.name());
         entity.setActualStartTime(new Date());
         eamThirdMaintenanceOrderMapper.updateById(entity);

--
Gitblit v1.9.3