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/basicInfo/XhProductModelDao.xml |  203 +++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 172 insertions(+), 31 deletions(-)

diff --git a/modules/mainPart/src/main/resources/mapper/basicInfo/XhProductModelDao.xml b/modules/mainPart/src/main/resources/mapper/basicInfo/XhProductModelDao.xml
index eb31c85..19a32ca 100644
--- a/modules/mainPart/src/main/resources/mapper/basicInfo/XhProductModelDao.xml
+++ b/modules/mainPart/src/main/resources/mapper/basicInfo/XhProductModelDao.xml
@@ -2,12 +2,22 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 
 <mapper namespace="com.zt.life.modules.mainPart.basicInfo.dao.XhProductModelDao">
+    <delete id="deleteByShipId">
+        delete
+        from product_model
+        where ship_id = ${shipId}
+    </delete>
+    <delete id="deleteByPid">
+        delete
+        from product_model
+        where PID = ${id}
+    </delete>
 
     <select id="getList" resultType="com.zt.life.modules.mainPart.basicInfo.model.XhProductModel">
-        select a.*
-        from product_model a
+        select *
+        from product_model
         <where>
-            a.is_delete = 0
+            is_delete = 0
             <if test="pid!=null">
                 and pid =${pid}
             </if>
@@ -18,9 +28,8 @@
                 and ${whereSql}
             </if>
         </where>
-        <if test="orderBySql!=null">
-            ORDER BY ${orderBySql}
-        </if>
+        ORDER BY
+        product_type,sort
     </select>
     <select id="getNo" resultType="java.lang.Integer">
         SELECT COUNT(*)
@@ -33,6 +42,7 @@
             <if test="pid==null">
                 and pid is null
             </if>
+            and product_type =${productType}
         </where>
         Group by product_type
     </select>
@@ -40,37 +50,168 @@
         select a.name, a.id
         from product_model a
         where a.is_delete = 0
-          and a.product_type = 5
+        <if test="type!=null and type!=''">
+            and a.product_type = ${type}
+        </if>
+        <if test="shipId!=null">
+            and a.ship_id = ${shipId}
+        </if>
     </select>
     <select id="getProduct" resultType="com.zt.life.modules.mainPart.basicInfo.model.ProductImg">
-        SELECT a.default_img               as imgPath,
-               a.`NAME`                    as imgName,
-               'node'                      as nodeType,
-               ''                          as nodeTypeExt,
-               60                          as imgWidth,
-               60                          as imgHeight,
-               a.id                        as dataId,
-               ''                          as statusImg,
-               d.dict_code                 as productType,
-               p.task_mtbcf_accept         as taskMtbcf,
-               p.task_mtbcf_other_params   as taskMtbcfOther,
-               p.reliab_distrib_type       as reliabDistribType,
-               p.repair_distrib_type       as repairDistribType,
-               p.repair_mttcr              as RepairMttcr,
-               p.repair_mttcr_other_params as RepairMttcrOther
+        SELECT a.operat_img                 as imgPath,
+               a.`NAME`                     as imgName,
+               'node'                       as nodeType,
+               ''                           as nodeTypeExt,
+               s.svg_content                as svgContent,
+               s.anchors_content            as anchorsContent,
+               s.anchors_points             as anchorsPoints,
+               s.width                      as imgWidth,
+               s.height                     as imgHeight,
+               a.id                         as dataId,
+               ''                           as statusImg,
+               d.dict_code                  as productType,
+               p.repairable                 as isRepair,
+               p.task_mtbcf_regulate        as taskMtbcf,
+               p.task_mtbcf_other_params2   as taskMtbcfOtherParams2,
+               p.task_mtbcf_other_params3   as taskMtbcfOtherParams3,
+               p.reliab_distrib_type        as reliabDistribType,
+               p.repair_distrib_type        as repairDistribType,
+               p.repair_mttcr               as repairMttcr,
+               p.repair_mttcr_other_params2 as repairMttcrOtherParams2,
+               p.repair_mttcr_other_params3 as repairMttcrOtherParams3,
+               p.task_mtbcf_regul_succ_rate as success_rate,
+               p.basic_unit_num             as basicUnitNum
         FROM product_model a
                  left join sys_dict_data d on d.DICT_VALUE = a.product_type and dict_type_id = '1728965873022050306'
-                 left join param_data p on p.product_id = a.id and p.page_code = 'expect'
+                 left join param_data p on p.product_id = a.id
+                 left join sys_picture_base s on s.id = a.operat_img
         WHERE a.is_delete = 0
-          AND a.PID = ${productId}
+          AND ((a.PID = ${productId})
+            or (a.PID in (select pid from product_model where id = ${productId} and product_type = 10) and
+                a.product_type &lt;&gt; 10))
+          and a.id not in (
+            select node_id
+            from model_rbd_node
+            where product_id in (
+                select pid
+                from product_model
+                where id = ${productId}
+                  and is_delete = 0
+                union
+                select id
+                from product_model
+                where is_delete = 0
+                  and pid = ${parentId}
+                  and id &lt;&gt; ${productId}
+            )
+            union
+            select node_id
+            from model_rbd_node
+            where product_id in (
+                select id
+                from product_model
+                where is_delete = 0
+                  and pid = ${productId}
+            )
+        )
+
 
     </select>
-    <select id="getDefaultImg" resultType="java.lang.String">
-        SELECT b.id
-        FROM sys_picture_base a
-                 LEFT JOIN sys_oss b ON a.id = b.BUSI_ID
-        WHERE a.IS_DELETE = 0
-          AND b.IS_DELETE = 0
-          AND a.CONTENT_TYPE = '榛樿璁惧'
+    <select id="getTaskProductList" resultType="com.zt.life.modules.mainPart.basicInfo.model.XhProductModel">
+        select a.name, a.id
+        from product_model a
+        where a.is_delete = 0
+          and a.product_type = 2
+        order by sort
+    </select>
+    <select id="getById" resultType="com.zt.life.modules.mainPart.basicInfo.model.XhProductModel">
+        select a.*
+        from product_model a
+        where a.is_delete = 0
+          and a.id = #{id}
+    </select>
+    <select id="getByShipId" resultType="com.zt.life.modules.mainPart.basicInfo.model.XhProductModel">
+        select a.*
+        from product_model a
+        where a.is_delete = 0
+          and a.ship_id = #{shipId}
+          and a.product_type &gt; 2
+    </select>
+
+    <select id="getProductTree" resultType="com.zt.life.modules.mainPart.basicInfo.model.XhProductModel">
+        select a.*
+        from product_model a
+        where a.is_delete = 0
+        <if test="shipId!=null">
+            and a.ship_id = #{shipId}
+        </if>
+    </select>
+    <select id="getProductPath" resultType="com.zt.life.modules.mainPart.basicInfo.model.XhProductModel">
+        select a.*, b.id as paramId
+        from product_model a,
+             param_data b
+        where a.IS_DELETE = 0
+          and b.IS_DELETE = 0
+          and a.ship_id = ${shipId}
+          and a.id = b.product_id
+    </select>
+    <select id="getByPid" resultType="java.lang.Long">
+        select id
+        from product_model
+        where IS_DELETE = 0
+          and PID = ${id}
+    </select>
+    <select id="getProductByShip" resultType="com.zt.life.modules.mainPart.basicInfo.dto.ProductDto">
+        select a.id,
+               a.pid,
+               a.name,
+               a.product_type,
+               a.name_path,
+               b.basic_unit_num as sameSbNum,
+               a.equip_type,
+               b.reliab_distrib_type,
+               b.basic_join_compute,
+               b.basic_mtbf_regulate,
+               b.basic_mtbf_regul_succ_rate,
+               b.basic_mtbf_operating_ratio,
+               b.task_mtbcf_regulate,
+               b.task_mtbcf_other_params2,
+               b.task_mtbcf_other_params3,
+               b.task_mtbcf_regul_succ_rate,
+               b.task_mtbcf_operating_ratio,
+               b.repairable,
+               b.repair_distrib_type,
+               b.repair_mttcr,
+               b.repair_mttcr_other_params2,
+               b.repair_mttcr_other_params3
+        from product_model a,
+             param_data b
+        where a.IS_DELETE = 0
+          and b.IS_DELETE = 0
+          and a.ship_id = ${shipId}
+          AND a.id &lt;&gt; a.ship_id
+          and a.id = b.product_id
+          and a.product_type = 5
+    </select>
+    <select id="getProductListByShip" resultType="com.zt.life.modules.mainPart.basicInfo.model.XhProductModel">
+        select a.*, b.basic_unit_num as sameSbNum
+        from product_model a,
+        param_data b
+        where a.IS_DELETE = 0 and b.IS_DELETE = 0
+        and a.id = b.product_id
+        <if test="productId !=null">
+            and a.ship_id = #{productId}
+        </if>
+        <if test="level1 !=null">
+            and a.product_type &gt;= #{level1}
+        </if>
+        <if test="level2 !=null">
+            and a.product_type &lt;= #{level2}
+        </if>
+    </select>
+    <select id="getProductListAll" resultType="com.zt.life.modules.mainPart.basicInfo.model.XhProductModel">
+        select id, operat_img
+        from product_model
+        where IS_DELETE = 0
     </select>
 </mapper>

--
Gitblit v1.9.1