From 664db98c9e8595ce4dd636a27f480e3a08b81ff5 Mon Sep 17 00:00:00 2001
From: xyc <jc_xiong@hotmail.com>
Date: 星期五, 21 二月 2025 11:13:51 +0800
Subject: [PATCH] 新增可忽略的维修时间

---
 modules/mainPart/src/main/resources/mapper/taskReliability/SimulatAssessDao.xml |  229 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 223 insertions(+), 6 deletions(-)

diff --git a/modules/mainPart/src/main/resources/mapper/taskReliability/SimulatAssessDao.xml b/modules/mainPart/src/main/resources/mapper/taskReliability/SimulatAssessDao.xml
index cd8fa4b..13730c8 100644
--- a/modules/mainPart/src/main/resources/mapper/taskReliability/SimulatAssessDao.xml
+++ b/modules/mainPart/src/main/resources/mapper/taskReliability/SimulatAssessDao.xml
@@ -4,12 +4,11 @@
 <mapper namespace="com.zt.life.modules.mainPart.taskReliability.dao.SimulatAssessDao">
 
     <select id="getList" resultType="com.zt.life.modules.mainPart.taskReliability.model.SimulatAssess">
-        select *
+        select id, CONCAT_WS(' ', name, CREATE_DATE) AS name
         from simulat_assess
-        where product_id = ${productId}
-          and task_model_id = ${taskModelId}
+        where task_model_id = ${taskModelId}
           and IS_DELETE = 0
-        order by name desc
+        order by CREATE_DATE desc
     </select>
     <select id="getNumById" resultType="java.lang.Integer">
         select COUNT(*)
@@ -19,12 +18,230 @@
           and IS_DELETE = 0
     </select>
     <select id="getParams" resultType="com.zt.life.modules.mainPart.taskReliability.model.SimulatAssess">
-        select a.sampl_period,b.task_duration
+        select a.sampl_period, a.simulat_frequency
         from simulat_assess a
-        left join task b on a.task_model_id = b.id and b.IS_DELETE= 0
         where a.id = ${id}
           and a.task_model_id = ${taskModelId}
           and a.IS_DELETE = 0
     </select>
+    <select id="getChildren" resultType="com.zt.life.modules.mainPart.taskReliability.dto.ProductStatusDto">
+        select *
+        from (
+                 SELECT f.id, f.name, 0 as sort, 1 as sameSbNum,f.product_type
+                 FROM product_model f
+                 WHERE f.id = ${productId}
+                   AND f.is_delete = 0
+                 union
+                 SELECT f.id, f.name, f.sort, g.basic_unit_num as sameSbNum,f.product_type
+                 FROM `task_phase` a,
+                      task_phase_model b,
+                      operat_condit c,
+                      operat_condit_model d,
+                      model_rbd_node e,
+                      product_model f,
+                      param_data g
+                 WHERE a.task_id = ${taskId}
+                   and d.product_id = ${productId}
+                   AND a.is_delete = 0
+                   AND b.is_delete = 0
+                   AND c.id = b.operat_condit_id
+                   AND c.is_delete = 0
+                   AND d.operat_condit_id = c.id
+                   AND d.is_delete = 0
+                   AND e.model_id = d.model_id
+                   AND e.is_delete = 0
+                   AND f.id = e.node_id
+                   AND f.is_delete = 0
+                   AND g.product_id = f.id
+                   AND g.is_delete = 0
+                 GROUP BY f.id, f.name, f.sort
+             ) as f
+        ORDER BY f.sort
+    </select>
+    <select id="getTaskPhaseModelByTaskId"
+            resultType="com.zt.life.modules.mainPart.taskReliability.model.SimulatAssessTaskPhaseModel">
+        select *
+        from simulat_assess_task_phase_model
+        where is_delete = 0
+          and task_id = ${taskId}
+        order by sort
+    </select>
+    <select id="getTimeDiagram" resultType="com.zt.life.modules.mainPart.taskReliability.model.TimeDiagram">
+        select *
+        from time_diagram_temp
+        where is_delete = 0
+        <if test="projectId!=null and projectId!=''">
+            and PROJECT_ID = #{projectId}
+        </if>
+        <if test="diagramId!=null and diagramId!=''">
+            and DIAGRAM_ID = #{diagramId}
+        </if>
+        <if test="hasPublish!=null and hasPublish!=''">
+            and HAS_PUBLISH = #{hasPublish}
+        </if>
+    </select>
+    <select id="getModelListOld" resultType="com.zt.life.modules.mainPart.taskReliability.dto.ModelDto">
+        SELECT a.id   AS phase_id,
+               a.phase_name,
+               a.phase_duration_rate,
+               b.operat_condit_duration_rate,
+               b.operat_condit_id,
+               c.NAME AS operat_condit_name,
+               d.model_id,
+               e.model_name
+        FROM `task_phase` a,
+             task_phase_model b,
+             operat_condit c,
+             operat_condit_model d,
+             model_rbd e
+        WHERE a.task_id = ${taskId}
+          and d.product_id = ${productId}
+          AND a.is_delete = 0
+          AND b.is_delete = 0
+          AND c.id = b.operat_condit_id
+          AND c.is_delete = 0
+          AND d.operat_condit_id = c.id
+          AND d.is_delete = 0
+          and e.is_delete = 0
+          and d.model_id = e.id
+        order by c.CREATE_DATE
+    </select>
+    <select id="getModelList"
+            resultType="com.zt.life.modules.mainPart.taskReliability.model.SimulatAssessTaskPhaseModel">
+        SELECT *
+        FROM simulat_assess_task_phase_model
+        WHERE fz_id = ${fzId}
+          AND is_delete = 0
+        order by sort
+    </select>
+    <select id="getModelByProductGk" resultType="com.zt.life.modules.mainPart.taskReliability.model.ModelRbd">
+        select a.*
+        from model_rbd a,
+             operat_condit_model b
+        where a.id = b.model_id
+          and b.operat_condit_id = ${gkId}
+          and b.product_id = ${productId}
+          and a.is_delete = 0
+          and b.is_delete = 0
+        limit 1
+    </select>
+    <select id="getProductList" resultType="com.zt.life.modules.mainPart.taskReliability.dto.WeakDto">
+        SELECT id,
+               pid,
+               NAME,
+               product_type,
+               sum(timeRate) AS timeRate,
+               sort
+        FROM (
+                 SELECT f.id,
+                        null as pid,
+                        f.NAME,
+                        f.product_type,
+                        1    AS timeRate,
+                        0    AS sort
+                 FROM product_model f
+                 WHERE f.id = ${productId}
+                   AND f.is_delete = 0
+                 UNION
+                 SELECT f.id,
+                        f.pid,
+                        f.NAME,
+                        f.product_type,
+                        CASE
 
+                            WHEN f.product_type = 5
+                                AND g.reliab_distrib_type = 1 THEN
+                                    a.phase_duration_rate * b.operat_condit_duration_rate * g.task_mtbcf_operating_ratio
+                            ELSE a.phase_duration_rate * b.operat_condit_duration_rate
+                            END AS timeRate,
+                        f.sort
+                 FROM `task_phase` a,
+                      task_phase_model b,
+                      operat_condit c,
+                      operat_condit_model d,
+                      model_rbd_node e,
+                      product_model f
+                          left join param_data g on g.product_id = f.id
+                          AND g.IS_DELETE = 0
+                 WHERE a.task_id = ${taskId}
+                   AND b.phase_id = a.id
+                   AND b.is_delete = 0
+                   AND a.is_delete = 0
+                   AND b.is_delete = 0
+                   AND c.id = b.operat_condit_id
+                   AND c.is_delete = 0
+                   AND d.operat_condit_id = c.id
+                   AND d.is_delete = 0
+                   AND e.model_id = d.model_id
+                   AND e.is_delete = 0
+                   AND f.id = e.node_id
+                   AND f.ship_id = ${productId}
+                   AND f.is_delete = 0
+             ) b
+        GROUP BY id
+        order by sort
+    </select>
+    <select id="getByTaskId" resultType="com.zt.life.modules.mainPart.taskReliability.model.SimulatAssess">
+        select *
+        from simulat_assess
+        where task_model_id = ${taskModelId}
+          and IS_DELETE = 0
+        order by CREATE_DATE desc
+        limit 1
+    </select>
+    <select id="getModel" resultType="com.zt.life.modules.mainPart.taskReliability.model.OperatConditModel">
+        SELECT d.product_id,
+               d.model_id,
+               e.content
+        FROM task a,
+             task_phase b,
+             `task_phase_model` c,
+             operat_condit_model d,
+             model_rbd e
+        WHERE a.id = ${taskId}
+          AND a.IS_DELETE = 0
+          AND b.task_id = a.id
+          AND b.IS_DELETE = 0
+          AND c.phase_id = b.id
+          AND c.operat_condit_duration_rate > 0
+          AND c.IS_DELETE = 0
+          AND d.operat_condit_id = c.operat_condit_id
+          AND d.IS_DELETE = 0
+          AND e.id = d.model_id
+          AND e.IS_DELETE = 0
+    </select>
+    <select id="getNode" resultType="com.zt.life.modules.mainPart.taskReliability.dto.verifyDto">
+        SELECT c.`NAME`,
+               c.id,
+               b.task_mtbcf_regulate as mtbf
+        FROM `model_rbd_node` a,
+             param_data b,
+             product_model c
+        WHERE a.node_id = c.id
+          and a.model_id = ${modelId}
+          AND c.id = b.product_id
+          AND a.is_delete = 0
+          AND b.is_delete = 0
+          AND c.is_delete = 0
+    </select>
+    <select id="getVoteNum" resultType="java.lang.Integer">
+        select vote_num
+        from algorithm
+        where is_delete = 0
+          and model_id = ${modelId}
+          and model_type = 'vote'
+          and vote_num is not null
+        limit 1
+    </select>
+
+    <select id="getProcessList" resultType="com.zt.life.modules.mainPart.taskReliability.model.SimulatAssess">
+        select *
+        from simulat_assess
+        where IS_DELETE = 0
+          and pid is not null
+        <if test="isAlive">
+          and process_is_alive=1
+        </if>
+        order by process_start_time desc
+    </select>
 </mapper>

--
Gitblit v1.9.1