From 8aa74635a762bbb5a49253b055eb69db5ebaab2d Mon Sep 17 00:00:00 2001
From: “linengliang” <vanSuperEnergy@163.com>
Date: 星期二, 19 九月 2023 10:20:58 +0800
Subject: [PATCH] 预测性维护方案生成工单bug修改

---
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/PredictiveWorkPlanSparePartServiceImpl.java |    3 +
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/PredictiveWorkPlanSparePartMapper.xml         |    3 -
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/PredictiveWorkPlanWarnJob.java                       |   33 ++++++++++++++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/PredictiveWorkPlanParameterMapper.xml         |    8 ++--
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/PredictiveWorkPlanParameterServiceImpl.java |   28 ++++++++++---
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/PredictiveWorkPlanParameterMapper.java            |    8 ++++
 lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/PredictiveWorkPlanParameterJob.java                  |   33 ++++++++++++++++
 7 files changed, 102 insertions(+), 14 deletions(-)

diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/PredictiveWorkPlanParameterJob.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/PredictiveWorkPlanParameterJob.java
new file mode 100644
index 0000000..90aeba1
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/PredictiveWorkPlanParameterJob.java
@@ -0,0 +1,33 @@
+package org.jeecg.modules.eam.job;
+
+import lombok.extern.slf4j.Slf4j;
+import org.jeecg.common.util.DateUtils;
+import org.jeecg.modules.eam.service.IPredictiveWorkPlanParameterService;
+import org.jeecg.modules.eam.service.IPredictiveWorkPlanSparePartService;
+import org.quartz.Job;
+import org.quartz.JobExecutionContext;
+import org.quartz.JobExecutionException;
+
+import javax.annotation.Resource;
+
+/**
+ * 澶囦欢瀵垮懡妫�鏌ワ紝鐢熸垚棰勬祴宸ュ崟
+ */
+@Slf4j
+public class PredictiveWorkPlanParameterJob implements Job {
+
+    @Resource
+    private IPredictiveWorkPlanParameterService predictiveWorkPlanParameterService;
+
+    @Override
+    public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
+        log.info("鍙傛暟妫�鏌ワ紝鐢熸垚棰勬祴宸ュ崟浠诲姟 PredictiveWorkPlanParameterJob start!  鏃堕棿:" + DateUtils.now());
+        try {
+            predictiveWorkPlanParameterService.createParameterWorkPlan();
+            log.info("鍙傛暟妫�鏌ワ紝鐢熸垚棰勬祴宸ュ崟浠诲姟 PredictiveWorkPlanParameterJob 鎵ц鎴愬姛!");
+        } catch (Exception e) {
+            log.error("鍙傛暟妫�鏌ワ紝鐢熸垚棰勬祴宸ュ崟浠诲姟 PredictiveWorkPlanParameterJob 鎵ц澶辫触!");
+            log.error(e.getMessage(), e);
+        }
+    }
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/PredictiveWorkPlanWarnJob.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/PredictiveWorkPlanWarnJob.java
new file mode 100644
index 0000000..bf382fe
--- /dev/null
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/PredictiveWorkPlanWarnJob.java
@@ -0,0 +1,33 @@
+package org.jeecg.modules.eam.job;
+
+import lombok.extern.slf4j.Slf4j;
+import org.jeecg.common.util.DateUtils;
+import org.jeecg.modules.eam.service.IPredictiveWorkPlanSparePartService;
+import org.jeecg.modules.eam.service.IPredictiveWorkPlanWarnService;
+import org.quartz.Job;
+import org.quartz.JobExecutionContext;
+import org.quartz.JobExecutionException;
+
+import javax.annotation.Resource;
+
+/**
+ * 澶囦欢瀵垮懡妫�鏌ワ紝鐢熸垚棰勬祴宸ュ崟
+ */
+@Slf4j
+public class PredictiveWorkPlanWarnJob implements Job {
+
+    @Resource
+    private IPredictiveWorkPlanWarnService predictiveWorkPlanWarnService;
+
+    @Override
+    public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
+        log.info("鎶ヨ妫�鏌ワ紝鐢熸垚棰勬祴宸ュ崟浠诲姟 PredictiveWorkPlanWarnJob start!  鏃堕棿:" + DateUtils.now());
+        try {
+            predictiveWorkPlanWarnService.createWarnWorkPlan();
+            log.info("鎶ヨ妫�鏌ワ紝鐢熸垚棰勬祴宸ュ崟浠诲姟 PredictiveWorkPlanWarnJob 鎵ц鎴愬姛!");
+        } catch (Exception e) {
+            log.error("鎶ヨ妫�鏌ワ紝鐢熸垚棰勬祴宸ュ崟浠诲姟 PredictiveWorkPlanWarnJob 鎵ц澶辫触!");
+            log.error(e.getMessage(), e);
+        }
+    }
+}
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/PredictiveWorkPlanParameterMapper.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/PredictiveWorkPlanParameterMapper.java
index 6115202..ddc047e 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/PredictiveWorkPlanParameterMapper.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/PredictiveWorkPlanParameterMapper.java
@@ -1,8 +1,10 @@
 package org.jeecg.modules.eam.mapper;
 
+import com.baomidou.mybatisplus.annotation.InterceptorIgnore;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
 import org.jeecg.modules.eam.entity.PredictiveWorkPlanParameter;
 import org.jeecg.modules.eam.model.ParameterVo;
 
@@ -18,6 +20,12 @@
 
     public List<PredictiveWorkPlanParameter> listParameter(@Param("predictiveWorkPlanId") String predictiveWorkPlanId);
 
+
     public ParameterVo findParameterInfo(@Param("saveTableName") String saveTableName, @Param("lowerLimitValue") float lowerLimitValue,
                                          @Param("upperLimitValue") float upperLimitValue, @Param("parameterCode") String parameterCode);
+
+
+    @Select("<script> ${sql} </script>")
+    @InterceptorIgnore(tenantLine = "1")
+    ParameterVo findCommonParameterInfo(@Param("sql") String sql);
 }
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/PredictiveWorkPlanParameterMapper.xml b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/PredictiveWorkPlanParameterMapper.xml
index 88b8fe2..0428ce5 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/PredictiveWorkPlanParameterMapper.xml
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/PredictiveWorkPlanParameterMapper.xml
@@ -56,8 +56,8 @@
         FROM
             mom_eam_predictive_work_plan_parameter t1
         WHERE t1.del_flag = 0
-        <if test="params.planId != null and params.planId != ''">
-            and t1.work_plan_id = #{params.planId}
+        <if test="predictiveWorkPlanId != null and predictiveWorkPlanId != ''">
+            and t1.work_plan_id = #{predictiveWorkPlanId}
         </if>
         ORDER BY t1.create_time desc
     </select>
@@ -67,10 +67,10 @@
             t1.CollectTime collectTime,
             t1.${parameterCode} actualValue
         FROM
-            [${saveTableName}] t1
+            ${saveTableName} t1
         WHERE
             t1.${parameterCode} <![CDATA[ < ]]>  #{lowerLimitValue}
-            OR t1.${parameterCode} > #{upperLimitValue}
+           OR t1.${parameterCode} > #{upperLimitValue}
         ORDER BY
             t1.CollectTime DESC
     </select>
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/PredictiveWorkPlanSparePartMapper.xml b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/PredictiveWorkPlanSparePartMapper.xml
index 47c820c..2cf9fda 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/PredictiveWorkPlanSparePartMapper.xml
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/PredictiveWorkPlanSparePartMapper.xml
@@ -71,8 +71,7 @@
             t1.start_long startLong,
             t1.end_time endTime,
             t1.end_long endLong
---             鐘舵��,0:鍏虫満,1:寮�鏈�,2:寰呮満,3:宸ヤ綔,22:鎶ヨ
-        from mdc_equipment_running_section t1  where t1.status IN (1,2,3,22) t1.equipment_id = #{mdcEquipmentId} order by start_time desc
+        from mdc_equipment_running_section t1  where t1.status IN (1,2,3,22) AND t1.equipment_id = #{mdcEquipmentId} order by start_time desc
     </select>
 
 
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/PredictiveWorkPlanParameterServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/PredictiveWorkPlanParameterServiceImpl.java
index 0ed5a3a..c927c54 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/PredictiveWorkPlanParameterServiceImpl.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/PredictiveWorkPlanParameterServiceImpl.java
@@ -80,8 +80,8 @@
             if (needCreateFlag) {
                 //鐢熸垚宸ュ崟 ,灏嗗弬鏁颁俊鎭浠�
                 PredictiveWorkOrder predictiveWorkOrder = this.createOrder(predictiveWorkPlan.getId(), predictiveWorkPlan.getEquipmentId());
-                if(predictiveWorkOrder != null){
-                    this.backInfo(predictiveWorkPlan.getId(), predictiveWorkOrder.getId(),predictiveWorkPlanParameterList);
+                if (predictiveWorkOrder != null) {
+                    this.backInfo(predictiveWorkPlan.getId(), predictiveWorkOrder.getId(), predictiveWorkPlanParameterList);
                 }
 
             }
@@ -91,16 +91,16 @@
     @Override
     public void removeByWorkPlanId(String predictiveWorkPlanId) {
         LambdaUpdateChainWrapper<PredictiveWorkPlanParameter> lambdaUpdate = this.lambdaUpdate();
-        lambdaUpdate.eq(PredictiveWorkPlanParameter::getWorkPlanId,predictiveWorkPlanId);
+        lambdaUpdate.eq(PredictiveWorkPlanParameter::getWorkPlanId, predictiveWorkPlanId);
         lambdaUpdate.remove();
     }
 
     @Override
     public void revise(String oldWorkPlanId, String workPlanId) {
         LambdaQueryChainWrapper<PredictiveWorkPlanParameter> lambdaQuery = this.lambdaQuery();
-        lambdaQuery.eq(PredictiveWorkPlanParameter::getWorkPlanId,oldWorkPlanId).eq(PredictiveWorkPlanParameter::getDelFlag,0);
+        lambdaQuery.eq(PredictiveWorkPlanParameter::getWorkPlanId, oldWorkPlanId).eq(PredictiveWorkPlanParameter::getDelFlag, 0);
         List<PredictiveWorkPlanParameter> insertList = lambdaQuery.list();
-        for(PredictiveWorkPlanParameter predictiveWorkPlanParameter:insertList){
+        for (PredictiveWorkPlanParameter predictiveWorkPlanParameter : insertList) {
             predictiveWorkPlanParameter.setWorkPlanId(workPlanId);
             predictiveWorkPlanParameter.setId(UUIDGenerator.generate());
         }
@@ -116,7 +116,7 @@
         return predictiveWorkOrder;
     }
 
-    private void backInfo(String workPlanId,String workOrderId, List<PredictiveWorkPlanParameter> predictiveWorkPlanParameterList) {
+    private void backInfo(String workPlanId, String workOrderId, List<PredictiveWorkPlanParameter> predictiveWorkPlanParameterList) {
         List<PredictiveWorkPlanParameterHistory> list = new ArrayList<>();
         for (PredictiveWorkPlanParameter predictiveWorkPlanParameter : predictiveWorkPlanParameterList) {
             PredictiveWorkPlanParameterHistory predictiveWorkPlanParameterHistory = new PredictiveWorkPlanParameterHistory();
@@ -150,7 +150,21 @@
     }
 
     private ParameterVo findParameterInfo(String saveTableName, float lowerLimitValue, float upperLimitValue, String parameterCode) {
-        return this.getBaseMapper().findParameterInfo(saveTableName, lowerLimitValue, upperLimitValue, parameterCode);
+//        String temp = "[" + saveTableName + "]";
+//        return this.getBaseMapper().findParameterInfo(temp, lowerLimitValue, upperLimitValue, parameterCode);
+        Integer lowerLimitValueInt = (int) lowerLimitValue;
+        Integer upperLimitValueInt = (int)upperLimitValue;
+        String sql = "SELECT TOP 1 " +
+                "            t1.CollectTime collectTime, " +
+                "            t1." + parameterCode + " actualValue " +
+                "        FROM " +
+                "            [" + saveTableName + "] t1 " +
+                "        WHERE " +
+                "            t1." + parameterCode + " <  " + lowerLimitValueInt +
+                "           OR t1." + parameterCode + " > " + upperLimitValueInt +
+                "        ORDER BY " +
+                "            t1.CollectTime DESC";
+        return this.getBaseMapper().findCommonParameterInfo(sql);
     }
 
     private List<PredictiveWorkPlanParameter> listParameter(String predictiveWorkPlanId) {
diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/PredictiveWorkPlanSparePartServiceImpl.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/PredictiveWorkPlanSparePartServiceImpl.java
index 0c4a646..9bcf09b 100644
--- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/PredictiveWorkPlanSparePartServiceImpl.java
+++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/PredictiveWorkPlanSparePartServiceImpl.java
@@ -40,7 +40,7 @@
     //    3.鍒ゆ柇瀹為檯瀵垮懡鏄惁澶т簬鎺у埗瀵垮懡锛屽苟鐢熸垚缁存姢宸ュ崟
     @Override
     public void createSparePartWorkPlan() {
-        List<PredictiveWorkPlan> predictiveWorkPlanList = predictiveWorkPlanService.listWorkPlan("bjkz");
+        List<PredictiveWorkPlan> predictiveWorkPlanList = predictiveWorkPlanService.listWorkPlan("smkz");
         for (PredictiveWorkPlan predictiveWorkPlan : predictiveWorkPlanList) {
             List<PredictiveWorkPlanSparePart> predictiveWorkPlanSparePartList = listPredictiveWorkPlanSparePart(predictiveWorkPlan.getId());
             for (PredictiveWorkPlanSparePart predictiveWorkPlanSparePart : predictiveWorkPlanSparePartList) {
@@ -86,6 +86,7 @@
         if (list == null || list.size() == 0) {
             PredictiveWorkOrder predictiveWorkOrder = new PredictiveWorkOrder();
             predictiveWorkOrder.setItemId(itemId);
+            predictiveWorkOrder.setStatus("1");
             predictiveWorkOrder.setEquipmentId(equipmentId);
             predictiveWorkOrder.setWorkPlanId(workPlanId);
             predictiveWorkOrderService.add(predictiveWorkOrder);

--
Gitblit v1.9.3