xyc
2025-02-21 664db98c9e8595ce4dd636a27f480e3a08b81ff5
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.operat_img               as imgPath,
               a.`NAME`                    as imgName,
               'node'                      as nodeType,
               ''                          as nodeTypeExt,
               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_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="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 = 4
          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>