<?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.dy.pmsGlobal.daoPr.PrProductionProcessMapper"> 
 | 
  
 | 
    <resultMap id="BaseResultMap" type="com.dy.pmsGlobal.pojoPr.PrProductionProcess"> 
 | 
        <id property="id" column="id" jdbcType="BIGINT"/> 
 | 
        <result property="proId" column="pro_id" jdbcType="BIGINT"/> 
 | 
        <result property="name" column="name" jdbcType="VARCHAR"/> 
 | 
        <result property="creator" column="creator" jdbcType="VARCHAR"/> 
 | 
        <result property="dt" column="dt" jdbcType="TIMESTAMP"/> 
 | 
        <result property="disabled" column="disabled" jdbcType="TINYINT"/> 
 | 
        <result property="deleted" column="deleted" jdbcType="TINYINT"/> 
 | 
        <result property="remark" column="remark" jdbcType="VARCHAR"/> 
 | 
        <association property="proName" column="pro_id" javaType="java.lang.Long" 
 | 
                     select="com.dy.pmsGlobal.daoPlt.PltProductMapper.selectProNameById" fetchType="eager" /> 
 | 
        <association property="proType" column="pro_id" javaType="java.lang.Long" 
 | 
                     select="com.dy.pmsGlobal.daoPlt.PltProductMapper.selectProTypeById" fetchType="eager" /> 
 | 
        <association property="creatorName" column="creator" javaType="java.lang.Long" 
 | 
                     select="com.dy.pmsGlobal.daoBa.BaUserMapper.selectNameByUserId" fetchType="eager" /> 
 | 
        <association property="isQuote" column="id" javaType="java.lang.Boolean" fetchType="eager" 
 | 
                     select="com.dy.pmsGlobal.daoPr.PrAssemblyPlanMapper.processIsQuote" /> 
 | 
        <association property="planNames" column="id" javaType="java.lang.String" fetchType="eager" 
 | 
                     select="com.dy.pmsGlobal.daoPr.PrAssemblyPlanMapper.selectPlanNamesByProcessId"  /> 
 | 
        <collection property="nodes" ofType="com.dy.pmsGlobal.pojoPr.PrProductionNode" 
 | 
                      select="selectByProcess" fetchType="eager" column="id" /> 
 | 
    </resultMap> 
 | 
  
 | 
    <resultMap id="ProcessResultMap" type="com.dy.pmsGlobal.pojoPr.PrProductionProcess"> 
 | 
        <id property="id" column="id" jdbcType="BIGINT"/> 
 | 
        <result property="proId" column="pro_id" jdbcType="BIGINT"/> 
 | 
        <result property="name" column="name" jdbcType="VARCHAR"/> 
 | 
        <result property="creator" column="creator" jdbcType="VARCHAR"/> 
 | 
        <result property="dt" column="dt" jdbcType="TIMESTAMP"/> 
 | 
        <result property="disabled" column="disabled" jdbcType="TINYINT"/> 
 | 
        <result property="deleted" column="deleted" jdbcType="TINYINT"/> 
 | 
        <result property="remark" column="remark" jdbcType="VARCHAR"/> 
 | 
        <collection property="nodes" ofType="com.dy.pmsGlobal.pojoPr.PrProductionNode" 
 | 
                    select="selectByProcess" fetchType="eager" column="id" /> 
 | 
    </resultMap> 
 | 
  
 | 
    <sql id="Base_Column_List"> 
 | 
        id,pro_id,name, 
 | 
        creator,dt,disabled, 
 | 
        deleted,remark 
 | 
    </sql> 
 | 
  
 | 
    <select id="selectProcessNameById" resultType="java.lang.String"> 
 | 
        select  name 
 | 
        from pr_production_process 
 | 
        where  id = #{id,jdbcType=BIGINT} 
 | 
    </select> 
 | 
    <select id="selectByProcess" resultMap="com.dy.pmsGlobal.daoPr.PrProductionNodeMapper.BaseResultMap"> 
 | 
        select * 
 | 
        from pr_production_node 
 | 
        where process_id = #{processId,jdbcType=BIGINT} 
 | 
    </select> 
 | 
    <select id="selectByProcessId" parameterType="java.lang.Long" resultMap="ProcessResultMap"> 
 | 
        select 
 | 
        <include refid="Base_Column_List" /> 
 | 
        from pr_production_process 
 | 
        where  id = #{id,jdbcType=BIGINT}  
 | 
    </select> 
 | 
  
 | 
    <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap"> 
 | 
        select 
 | 
        <include refid="Base_Column_List" /> 
 | 
        from pr_production_process 
 | 
        where  id = #{id,jdbcType=BIGINT} 
 | 
    </select> 
 | 
  
 | 
    <delete id="deleteByPrimaryKey" parameterType="java.lang.Long"> 
 | 
        delete from pr_production_process 
 | 
        where  id = #{id,jdbcType=BIGINT}  
 | 
    </delete> 
 | 
  
 | 
    <insert id="insertSelective" keyColumn="id" keyProperty="id" parameterType="com.dy.pmsGlobal.pojoPr.PrProductionProcess" useGeneratedKeys="true"> 
 | 
        insert into pr_production_process 
 | 
        <trim prefix="(" suffix=")" suffixOverrides=","> 
 | 
                <if test="id != null">id,</if> 
 | 
                <if test="proId != null">pro_id,</if> 
 | 
                <if test="name != null and name !=''">name,</if> 
 | 
                <if test="creator != null and creator !=''">creator,</if> 
 | 
                <if test="dt != null">dt,</if> 
 | 
                <if test="disabled != null">disabled,</if> 
 | 
                <if test="deleted != null">deleted,</if> 
 | 
                <if test="remark != null and remark !=''">remark,</if> 
 | 
        </trim> 
 | 
        <trim prefix="values (" suffix=")" suffixOverrides=","> 
 | 
                <if test="id != null">#{id,jdbcType=BIGINT},</if> 
 | 
                <if test="proId != null">#{proId,jdbcType=BIGINT},</if> 
 | 
                <if test="name != null and name !=''">#{name,jdbcType=VARCHAR},</if> 
 | 
                <if test="creator != null and creator !=''">#{creator,jdbcType=VARCHAR},</if> 
 | 
                <if test="dt != null">#{dt,jdbcType=TIMESTAMP},</if> 
 | 
                <if test="disabled != null">#{disabled,jdbcType=TINYINT},</if> 
 | 
                <if test="deleted != null">#{deleted,jdbcType=TINYINT},</if> 
 | 
                <if test="remark != null and remark !=''">#{remark,jdbcType=VARCHAR},</if> 
 | 
        </trim> 
 | 
    </insert> 
 | 
    <update id="updateByPrimaryKeySelective" parameterType="com.dy.pmsGlobal.pojoPr.PrProductionProcess"> 
 | 
        update pr_production_process 
 | 
        <set> 
 | 
                <if test="proId != null"> 
 | 
                    pro_id = #{proId,jdbcType=BIGINT}, 
 | 
                </if> 
 | 
                <if test="name != null and name !=''"> 
 | 
                    name = #{name,jdbcType=VARCHAR}, 
 | 
                </if> 
 | 
                <if test="creator != null and creator !=''"> 
 | 
                    creator = #{creator,jdbcType=VARCHAR}, 
 | 
                </if> 
 | 
                <if test="dt != null"> 
 | 
                    dt = #{dt,jdbcType=TIMESTAMP}, 
 | 
                </if> 
 | 
                <if test="disabled != null"> 
 | 
                    disabled = #{disabled,jdbcType=TINYINT}, 
 | 
                </if> 
 | 
                <if test="deleted != null"> 
 | 
                    deleted = #{deleted,jdbcType=TINYINT}, 
 | 
                </if> 
 | 
                <if test="remark != null and remark !=''"> 
 | 
                    remark = #{remark,jdbcType=VARCHAR}, 
 | 
                </if> 
 | 
        </set> 
 | 
        where   id = #{id,jdbcType=BIGINT}  
 | 
    </update> 
 | 
  
 | 
    <select id="selectSome" resultMap="BaseResultMap"> 
 | 
        select 
 | 
        <include refid="Base_Column_List" /> 
 | 
        from pr_production_process t 
 | 
        <trim prefix="where" suffixOverrides="and"> 
 | 
            <if test="proId != null"> 
 | 
                pro_id = #{proId,jdbcType=BIGINT} and 
 | 
            </if> 
 | 
<!--            <if test="name != null and name !=''">--> 
 | 
<!--                name = #{name,jdbcType=VARCHAR} and--> 
 | 
<!--            </if>--> 
 | 
        </trim> 
 | 
        order by t.id desc 
 | 
        <trim prefix="limit " > 
 | 
            <if test="start != null and count != null"> 
 | 
                #{start}, #{count} 
 | 
            </if> 
 | 
        </trim> 
 | 
    </select> 
 | 
  
 | 
    <select id="selectSomeCount" resultType="java.lang.Long"> 
 | 
        select count(1) 
 | 
        from pr_production_process t 
 | 
        <trim prefix="where" suffixOverrides="and"> 
 | 
            <if test="proId != null"> 
 | 
                pro_id = #{proId,jdbcType=BIGINT} and 
 | 
            </if> 
 | 
            <!--            <if test="name != null and name !=''">--> 
 | 
            <!--                name = #{name,jdbcType=VARCHAR} and--> 
 | 
            <!--            </if>--> 
 | 
        </trim> 
 | 
    </select> 
 | 
    <select id="queryAll" resultType="java.util.HashMap"> 
 | 
        select 
 | 
            CAST(id AS CHAR) AS id,name 
 | 
        from pr_production_process 
 | 
        where deleted = 0 
 | 
        <trim prefix="and" suffixOverrides=","> 
 | 
            pro_id = #{proId,jdbcType=BIGINT} 
 | 
        </trim> 
 | 
    </select> 
 | 
    <select id="exists" resultType="java.lang.Boolean"> 
 | 
        select count(1) 
 | 
        from pr_production_process 
 | 
        where name = #{name} and deleted = 0 
 | 
        <if test="id != null"> 
 | 
            and id != #{id} 
 | 
        </if> 
 | 
    </select> 
 | 
  
 | 
  
 | 
    <update id="deleteLogicById" parameterType="java.lang.Long"> 
 | 
        update pr_production_process set deleted = 1 
 | 
        where id = #{id} 
 | 
    </update> 
 | 
</mapper> 
 |