From c15c980814508369fcbb2dbfcfb53fe95688e005 Mon Sep 17 00:00:00 2001
From: zhangherong <571457620@qq.com>
Date: 星期四, 10 七月 2025 15:44:31 +0800
Subject: [PATCH] art: 技术状态鉴定-新增接口修改

---
 lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/HfTemplateCategoryEnum.java                    |   13 ++++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusEvaluationOrderServiceImpl.java |   45 ++++++++++++++++++++--
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamBaseHFCodeServiceImpl.java                     |    9 ++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamBaseHFCodeService.java                             |    7 +++
 4 files changed, 70 insertions(+), 4 deletions(-)

diff --git a/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/HfTemplateCategoryEnum.java b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/HfTemplateCategoryEnum.java
new file mode 100644
index 0000000..7678815
--- /dev/null
+++ b/lxzn-module-eam-common/src/main/java/org/jeecg/modules/eam/constant/HfTemplateCategoryEnum.java
@@ -0,0 +1,13 @@
+package org.jeecg.modules.eam.constant;
+
+public enum HfTemplateCategoryEnum {
+    INSPECTION, //鐐规
+    SECOND_MAINTENANCE, //浜屼繚
+    THIRD_MAINTENANCE_HANDOVER, //涓変繚绉讳氦鍗�
+    THIRD_MAINTENANCE_ACCEPTANCE, //涓変繚楠屾敹鍗�
+    TECHNICAL_STATUS_EVALUATION, //鎶�鏈姸鎬侀壌瀹氳〃
+    TECHNICAL_STATUS_EVALUATION_SAFETY_CHECK, //璁惧瀹夊叏瑁呯疆妫�鏌ュ崟
+    TECHNICAL_STATUS_EVALUATION_OTHER_CHECK, //鍏朵粬妫�鏌ラ」鐩�
+    TECHNICAL_STATUS_EVALUATION_PRECISION_CHECK, //璁惧绮惧害妫�鏌ュ崟
+    ;
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamBaseHFCodeService.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamBaseHFCodeService.java
index 51e1474..659db5d 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamBaseHFCodeService.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IEamBaseHFCodeService.java
@@ -40,4 +40,11 @@
      * @return
      */
     boolean upgradeEamBaseHFCode(EamBaseHFCode entity);
+
+    /**
+     * 鏍规嵁鍒嗙被鏌ヨ 鍞竴
+     * @param category
+     * @return
+     */
+    EamBaseHFCode selectByCategory(String category);
 }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamBaseHFCodeServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamBaseHFCodeServiceImpl.java
index 05468ff..e3e889d 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamBaseHFCodeServiceImpl.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamBaseHFCodeServiceImpl.java
@@ -88,4 +88,13 @@
         super.getBaseMapper().insert(entity);
         return true;
     }
+
+    @Override
+    public EamBaseHFCode selectByCategory(String category) {
+        LambdaQueryWrapper<EamBaseHFCode> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.eq(EamBaseHFCode::getHfCategory, category);
+        queryWrapper.eq(EamBaseHFCode::getDelFlag, CommonConstant.DEL_FLAG_0);
+        queryWrapper.eq(EamBaseHFCode::getHfStatus, EnableDisableEnum.ENABLE.name());
+        return this.getBaseMapper().selectOne(queryWrapper);
+    }
 }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusEvaluationOrderServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusEvaluationOrderServiceImpl.java
index 6398882..a9246ce 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusEvaluationOrderServiceImpl.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/EamTechnicalStatusEvaluationOrderServiceImpl.java
@@ -14,15 +14,18 @@
 import org.jeecg.common.exception.JeecgBootException;
 import org.jeecg.common.system.vo.LoginUser;
 import org.jeecg.common.util.oConvertUtils;
+import org.jeecg.modules.eam.constant.BusinessCodeConst;
 import org.jeecg.modules.eam.constant.EamTechnicalStatusEvaluationOrderEnum;
+import org.jeecg.modules.eam.constant.HfTemplateCategoryEnum;
+import org.jeecg.modules.eam.constant.OrderCreationMethodEnum;
+import org.jeecg.modules.eam.entity.EamBaseHFCode;
 import org.jeecg.modules.eam.entity.EamEquipment;
 import org.jeecg.modules.eam.entity.EamTechnicalStatusEvaluationOrder;
+import org.jeecg.modules.eam.entity.EamTechnicalStatusEvaluationStandard;
 import org.jeecg.modules.eam.mapper.EamTechnicalStatusEvaluationOrderMapper;
 import org.jeecg.modules.eam.request.EamTechnicalStatusEvaluationOrderQuery;
 import org.jeecg.modules.eam.request.EamTechnicalStatusEvaluationOrderRequest;
-import org.jeecg.modules.eam.service.IEamEquipmentService;
-import org.jeecg.modules.eam.service.IEamTechnicalStatusEvaluationOrderDetailService;
-import org.jeecg.modules.eam.service.IEamTechnicalStatusEvaluationOrderService;
+import org.jeecg.modules.eam.service.*;
 import org.jeecg.modules.system.entity.BaseFactory;
 import org.jeecg.modules.system.entity.BaseFactoryUser;
 import org.jeecg.modules.system.service.IBaseFactoryService;
@@ -56,6 +59,10 @@
     private IEamEquipmentService equipmentService;
     @Autowired
     private ISysBusinessCodeRuleService businessCodeRuleService;
+    @Autowired
+    private IEamTechnicalStatusEvaluationStandardService standardService;
+    @Autowired
+    private IEamBaseHFCodeService hfCodeService;
 
     @Override
     public IPage<EamTechnicalStatusEvaluationOrder> queryPageList(Page<EamTechnicalStatusEvaluationOrder> page, EamTechnicalStatusEvaluationOrderQuery query) {
@@ -127,18 +134,48 @@
         if (equipment == null) {
             throw new JeecgBootException("璁惧涓嶅瓨鍦紝娣诲姞澶辫触锛�");
         }
+        EamTechnicalStatusEvaluationStandard standard = standardService.getById(request.getStandardId());
+        if(standard == null) {
+            throw new JeecgBootException("鎶�鏈姸鎬侀壌瀹氳鑼冧笉瀛樺湪锛屾坊鍔犲け璐ワ紒");
+        }
         EamTechnicalStatusEvaluationOrder order = new EamTechnicalStatusEvaluationOrder();
         order.setOrderNum(request.getOrderNum());
         order.setEquipmentId(request.getEquipmentId());
         order.setStandardId(request.getStandardId());
         order.setEvaluationDate(request.getEvaluationDate());
-        order.setEvaluator(request.getEvaluator());
         order.setRemark(request.getRemark());
+        String codeSeq = businessCodeRuleService.generateBusinessCodeSeq(BusinessCodeConst.TECHNICAL_STATUS_EVALUATION_ORDER_CODE_RULE);
+        request.setOrderNum(codeSeq);
+        request.setCreationMethod(OrderCreationMethodEnum.MANUAL.name());
         //鐘舵�佸垵濮嬪寲
         order.setEvaluationStatus(EamTechnicalStatusEvaluationOrderEnum.WAIT_EVALUATION.name());
         order.setCreationMethod(request.getCreationMethod());
         //鍒犻櫎鏍囪
         order.setDelFlag(CommonConstant.DEL_FLAG_0);
+        //鎶�鏈姸鎬侀壌瀹氳〃
+        EamBaseHFCode eamBaseHFCode = hfCodeService.selectByCategory(HfTemplateCategoryEnum.TECHNICAL_STATUS_EVALUATION.name());
+        if(eamBaseHFCode == null) {
+            throw new JeecgBootException("鏈厤缃妧鏈姸鎬侀壌瀹氳〃鐨凥F缂栫爜锛屾坊鍔犲け璐ワ紒");
+        }
+        order.setHfCodeA(eamBaseHFCode.getHfCode());
+        //鎶�鏈姸鎬侀壌瀹氬畨鍏ㄨ缃鏌ヨ〃
+        eamBaseHFCode = hfCodeService.selectByCategory(HfTemplateCategoryEnum.TECHNICAL_STATUS_EVALUATION_SAFETY_CHECK.name());
+        if(eamBaseHFCode == null) {
+            throw new JeecgBootException("鏈厤缃畨鍏ㄨ缃鏌ヨ〃鐨凥F缂栫爜锛屾坊鍔犲け璐ワ紒");
+        }
+        order.setHfCodeB(eamBaseHFCode.getHfCode());
+        //鎶�鏈姸鎬侀壌瀹氬叾浠栨鏌ヨ〃
+        eamBaseHFCode = hfCodeService.selectByCategory(HfTemplateCategoryEnum.TECHNICAL_STATUS_EVALUATION_OTHER_CHECK.name());
+        if(eamBaseHFCode == null) {
+            throw new JeecgBootException("鏈厤缃叾浠栨鏌ヨ〃鐨凥F缂栫爜锛屾坊鍔犲け璐ワ紒");
+        }
+        order.setHfCodeD(eamBaseHFCode.getHfCode());
+        //鎶�鏈姸鎬侀壌瀹氳澶囩簿搴︽鏌ヨ〃
+        eamBaseHFCode = hfCodeService.selectByCategory(HfTemplateCategoryEnum.TECHNICAL_STATUS_EVALUATION_PRECISION_CHECK.name());
+        if(eamBaseHFCode == null) {
+            throw new JeecgBootException("鏈厤缃澶囩簿搴︽鏌ヨ〃鐨凥F缂栫爜锛屾坊鍔犲け璐ワ紒");
+        }
+        order.setHfCodeC(eamBaseHFCode.getHfCode());
         this.getBaseMapper().insert(order);
         //澶勭悊鏄庣粏鏁版嵁
         if (CollectionUtil.isNotEmpty(request.getTableDetailList())) {

--
Gitblit v1.9.3