<?xml version="1.0" encoding="UTF-8"?> 
 | 
<!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.taskReliability.dao.ModelRbdDao"> 
 | 
  
 | 
    <select id="getList" resultType="com.zt.life.modules.mainPart.taskReliability.model.ModelRbd"> 
 | 
        select a.*, 
 | 
        CASE 
 | 
        WHEN b.end =1 THEN '已完成' 
 | 
        WHEN a.content is not null THEN '正在编辑' 
 | 
        ELSE '未编辑' END AS modelState, 
 | 
        d.num as quoteNum 
 | 
        from model_rbd a 
 | 
        left join (select model_id,1 as end from algorithm where model_type = 'end' and is_delete=0 ) b on b.model_id = 
 | 
        a.id 
 | 
        left join (select model_id,count(1) as num from operat_condit_model where is_delete=0 group by model_id ) d on 
 | 
        d.model_id = a.id 
 | 
        <where> 
 | 
            a.is_delete = 0 
 | 
            <if test="productId!=null and productId!=''"> 
 | 
                and a.product_id =${productId} 
 | 
            </if> 
 | 
            <if test="whereSql!=null"> 
 | 
                and ${whereSql} 
 | 
            </if> 
 | 
        </where> 
 | 
    </select> 
 | 
    <select id="getDiagram" resultType="com.zt.life.modules.mainPart.taskReliability.model.ModelRbd"> 
 | 
        select a.* 
 | 
        from model_rbd a 
 | 
        <where> 
 | 
            a.is_delete = 0 
 | 
            and a.id=#{modelId} 
 | 
        </where> 
 | 
        limit 1 
 | 
    </select> 
 | 
    <select id="getDiagramOfXDY" resultType="com.zt.life.modules.mainPart.taskReliability.model.ModelRbd"> 
 | 
        select a.* 
 | 
        from model_rbd a 
 | 
        <where> 
 | 
            a.is_delete = 0 
 | 
            and a.product_id =${productId} 
 | 
        </where> 
 | 
        limit 1 
 | 
    </select> 
 | 
    <select id="getListAll" resultType="com.zt.life.modules.mainPart.taskReliability.model.ModelRbd"> 
 | 
        select a.*, 
 | 
        CASE 
 | 
        WHEN b.end =1 THEN '已完成' 
 | 
        ELSE '未完成' END AS modelState 
 | 
        from model_rbd a 
 | 
        left join (select model_id,1 as end from algorithm where model_type = 'end' and is_delete=0 ) b on b.model_id = a.id 
 | 
        where 
 | 
            a.is_delete = 0 
 | 
    </select> 
 | 
  
 | 
    <update id="deleteByModelId"> 
 | 
        delete 
 | 
        from model_rbd 
 | 
        where id = #{modelId} 
 | 
    </update> 
 | 
</mapper> 
 |