<?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.daoSta.StaAssemblyWorkLastMapper"> 
 | 
  
 | 
    <resultMap id="BaseResultMap" type="com.dy.pmsGlobal.pojoSta.StaAssemblyWorkLast"> 
 | 
        <id property="id" column="id" jdbcType="BIGINT"/> 
 | 
        <result property="userId" column="user_id" jdbcType="BIGINT"/> 
 | 
        <result property="lineId" column="line_id" jdbcType="BIGINT"/> 
 | 
        <result property="stationId" column="station_id" jdbcType="BIGINT"/> 
 | 
        <result property="planId" column="plan_id" jdbcType="BIGINT"/> 
 | 
        <result property="processId" column="process_id" jdbcType="BIGINT"/> 
 | 
        <result property="nodeId" column="node_id" jdbcType="BIGINT"/> 
 | 
        <result property="workType" column="work_type" jdbcType="TINYINT"/> 
 | 
        <result property="dt" column="dt" jdbcType="TIMESTAMP"/> 
 | 
        <result property="status" column="status" jdbcType="TINYINT"/> 
 | 
        <result property="startTime" column="start_time" jdbcType="TIMESTAMP"/> 
 | 
        <result property="endTime" column="end_time" jdbcType="TIMESTAMP"/> 
 | 
        <result property="assistants" column="assistants" jdbcType="VARCHAR"/> 
 | 
        <association property="userName" column="user_id" javaType="java.lang.Long" 
 | 
                     select="com.dy.pmsGlobal.daoBa.BaUserMapper.selectNameByUserId" fetchType="eager"/> 
 | 
       <!-- <association property="stationName" column="station_id" javaType="java.lang.Long" 
 | 
                     select="com.dy.pmsGlobal.daoPlt.PltStationMapper.selectNameByStationId" fetchType="eager"/> 
 | 
        <association property="planName" column="plan_id" javaType="java.lang.Long" 
 | 
                     select="com.dy.pmsGlobal.daoPr.PrAssemblyPlanMapper.selectNameByPlanId" fetchType="eager"/> 
 | 
        <association property="processName" column="process_id" javaType="java.lang.Long" 
 | 
                     select="com.dy.pmsGlobal.daoPr.PrProductionProcessMapper.selectProcessNameById" fetchType="eager"/> 
 | 
        <association property="nodeName" column="node_id" javaType="java.lang.Long" 
 | 
                     select="com.dy.pmsGlobal.daoPr.PrProductionNodeMapper.selectNameByNodeId" fetchType="eager"/>--> 
 | 
  
 | 
        <association property="lineName" column="line_id" javaType="java.lang.Long" 
 | 
                     select="com.dy.pmsGlobal.daoPlt.PltProductionLineMapper.selectNameByLineId" fetchType="eager"/> 
 | 
        <collection property="assistantsList" ofType="com.dy.pmsGlobal.pojoBa.BaUser" 
 | 
                    select="com.dy.pmsGlobal.daoBa.BaUserMapper.selectByAssistants" fetchType="eager" 
 | 
                    column="assistants"/> 
 | 
    </resultMap> 
 | 
  
 | 
    <resultMap id="SelectResultMap" type="com.dy.pmsGlobal.pojoSta.StaAssemblyWorkLast"> 
 | 
        <id property="id" column="id" jdbcType="BIGINT"/> 
 | 
        <result property="userId" column="user_id" jdbcType="BIGINT"/> 
 | 
        <result property="lineId" column="line_id" jdbcType="BIGINT"/> 
 | 
        <result property="stationId" column="station_id" jdbcType="BIGINT"/> 
 | 
        <result property="planId" column="plan_id" jdbcType="BIGINT"/> 
 | 
        <result property="processId" column="process_id" jdbcType="BIGINT"/> 
 | 
        <result property="nodeId" column="node_id" jdbcType="BIGINT"/> 
 | 
        <result property="workType" column="work_type" jdbcType="TINYINT"/> 
 | 
        <result property="dt" column="dt" jdbcType="TIMESTAMP"/> 
 | 
        <result property="status" column="status" jdbcType="TINYINT"/> 
 | 
        <result property="startTime" column="start_time" jdbcType="TIMESTAMP"/> 
 | 
        <result property="endTime" column="end_time" jdbcType="TIMESTAMP"/> 
 | 
        <result property="assistants" column="assistants" jdbcType="VARCHAR"/> 
 | 
        <result property="userName" column="user_name" jdbcType="VARCHAR"/> 
 | 
        <result property="stationName" column="station_name" jdbcType="VARCHAR"/> 
 | 
        <result property="planName" column="plan_name" jdbcType="VARCHAR"/> 
 | 
        <result property="processName" column="process_name" jdbcType="VARCHAR"/> 
 | 
        <result property="nodeName" column="node_name" jdbcType="VARCHAR"/> 
 | 
        <result property="lineName" column="line_name" jdbcType="VARCHAR"/> 
 | 
        <result property="proId" column="pro_id" jdbcType="VARCHAR"/> 
 | 
        <result property="proName" column="pro_name" jdbcType="VARCHAR"/> 
 | 
        <result property="devicePrefix" column="device_prefix" jdbcType="VARCHAR"/> 
 | 
        <collection property="assistantsList" ofType="com.dy.pmsGlobal.pojoBa.BaUser" 
 | 
                    select="com.dy.pmsGlobal.daoBa.BaUserMapper.selectByAssistants" fetchType="eager" 
 | 
                    column="assistants"/> 
 | 
    </resultMap> 
 | 
  
 | 
    <sql id="Base_Column_List"> 
 | 
        id 
 | 
        ,user_id,line_id, 
 | 
        station_id,plan_id,process_id, 
 | 
        node_id,work_type,dt,status, 
 | 
        start_time,end_time,assistants 
 | 
    </sql> 
 | 
    <sql id="part_Column_List"> 
 | 
        ${alias}.id, 
 | 
        ${alias}.user_id, 
 | 
        ${alias}.line_id, 
 | 
        ${alias}.station_id, 
 | 
        ${alias}.plan_id, 
 | 
        ${alias}.process_id, 
 | 
        ${alias}.node_id, 
 | 
        ${alias}.work_type, 
 | 
        ${alias}.dt, 
 | 
        ${alias}.status, 
 | 
        ${alias}.start_time, 
 | 
        ${alias}.end_time, 
 | 
        ${alias}.assistants 
 | 
    </sql> 
 | 
    <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap"> 
 | 
        select 
 | 
        <include refid="Base_Column_List"/> 
 | 
        from sta_assembly_work_last 
 | 
        where id = #{id,jdbcType=BIGINT} 
 | 
    </select> 
 | 
  
 | 
    <select id="selectByUserAndStation" resultMap="BaseResultMap"> 
 | 
        select 
 | 
        <include refid="Base_Column_List"/> 
 | 
        from plt_station where status ==1 
 | 
        <trim prefix="and" suffixOverrides="and"> 
 | 
            <if test="id != null and id !=''"> 
 | 
                id = #{id,jdbcType=BIGINT} and 
 | 
            </if> 
 | 
            <if test="code != null and code !=''"> 
 | 
                code = #{code,jdbcType=VARCHAR} and 
 | 
            </if> 
 | 
            <if test="name != null and name !=''"> 
 | 
                name like concat('%', #{name}, '%') and 
 | 
            </if> 
 | 
            <if test="disabled != null and disabled !=''"> 
 | 
                disabled = #{disabled,jdbcType=TINYINT} and 
 | 
            </if> 
 | 
            <if test="lineId != null and lineId !=''"> 
 | 
                line_id = #{lineId,jdbcType=BIGINT} and 
 | 
            </if> 
 | 
        </trim> 
 | 
        order by id desc 
 | 
    </select> 
 | 
  
 | 
    <select id="selectList" resultMap="BaseResultMap"> 
 | 
        select 
 | 
        <include refid="Base_Column_List"/> 
 | 
        from sta_assembly_work_last 
 | 
        <where> 
 | 
            <if test="userId != null and userId !=''"> 
 | 
                and user_id = #{userId,jdbcType=BIGINT} 
 | 
            </if> 
 | 
            <if test="lineId != null and lineId !=''"> 
 | 
                and line_id = #{lineId,jdbcType=BIGINT} 
 | 
            </if> 
 | 
            <if test="stationId != null and stationId !=''"> 
 | 
                and station_id = #{stationId,jdbcType=BIGINT} 
 | 
            </if> 
 | 
            <if test="planId != null and planId !=''"> 
 | 
                and plan_id = #{planId,jdbcType=BIGINT} 
 | 
            </if> 
 | 
            <if test="processId != null and processId !=''"> 
 | 
                and process_id = #{processId,jdbcType=BIGINT} 
 | 
            </if> 
 | 
            <if test="nodeId != null and nodeId !=''"> 
 | 
                and node_id = #{nodeId,jdbcType=BIGINT} 
 | 
            </if> 
 | 
            <if test="status != null and status !=''"> 
 | 
                and status = #{status,jdbcType=TINYINT} 
 | 
            </if> 
 | 
            <if test="startTime != null and startTime !=''"> 
 | 
                and start_time = #{startTime,jdbcType=TIMESTAMP}, 
 | 
            </if> 
 | 
            <if test="endTime != null and endTime !=''"> 
 | 
                and end_time = #{endTime,jdbcType=TIMESTAMP}, 
 | 
            </if> 
 | 
            <if test="assistants != null and assistants !=''"> 
 | 
                and assistants = #{assistants,jdbcType=VARCHAR} 
 | 
            </if> 
 | 
        </where> 
 | 
        order by id desc 
 | 
    </select> 
 | 
    <select id="selectSome" resultMap="SelectResultMap"> 
 | 
        select 
 | 
        <include refid="part_Column_List"> 
 | 
            <property name="alias" value="l"/> 
 | 
        </include>, 
 | 
        u.name as user_name, 
 | 
        s.name as station_name, 
 | 
        p.name as plan_name, 
 | 
        ppp.name as process_name, 
 | 
        n.content as node_name, 
 | 
        ll.name as line_name, 
 | 
        p.pro_id as pro_id, 
 | 
        p.pro_name as pro_name, 
 | 
        concat('110', p.pro_code, p.batch_number) as device_prefix 
 | 
        from sta_assembly_work_last l 
 | 
        left join ba_user u on l.user_id = u.id 
 | 
        left join plt_station s on l.station_id = s.id 
 | 
        left join (select pap.name as name,pap.id as id,pbn.batch_number as batch_number, 
 | 
                          pp.id as pro_id,pp.name as pro_name,pp.`code` as pro_code 
 | 
                     from pr_assembly_plan as pap,plt_product as pp,pr_batch_number as pbn 
 | 
                    where pap.batch_id = pbn.id and pap.pro_id = pp.id) p on l.plan_id = p.id 
 | 
        left join pr_production_process ppp on l.process_id = ppp.id 
 | 
        left join pr_production_node n on l.node_id = n.id 
 | 
        left join plt_production_line ll on l.line_id = ll.id 
 | 
        <where> 
 | 
            <if test="userName != null and userName != ''"> 
 | 
                and u.name like concat('%', #{userName}, '%') 
 | 
            </if> 
 | 
            <if test="stationName != null and stationName != '' "> 
 | 
                and s.name like concat('%', #{stationName}, '%') 
 | 
            </if> 
 | 
            <if test="planName != null and planName != '' "> 
 | 
                and p.name like concat('%', #{planName}, '%') 
 | 
            </if> 
 | 
            <if test="processName != null and processName != '' "> 
 | 
                and pp.name like concat('%', #{processName}, '%') 
 | 
            </if> 
 | 
            <if test="nodeName != null and nodeName != '' "> 
 | 
                and n.content like concat('%', #{nodeName}, '%') 
 | 
            </if> 
 | 
            <if test="lineName != null and lineName != '' "> 
 | 
                and ll.name like concat('%', #{lineName}, '%') 
 | 
            </if> 
 | 
            <if test="startTime != null and startTime !=''"> 
 | 
                and l.start_time <![CDATA[ > ]]> #{startTime} 
 | 
            </if> 
 | 
            <if test="endTime != null and endTime !=''"> 
 | 
                and l.start_time <![CDATA[ < ]]> #{endTime} 
 | 
            </if> 
 | 
            <if test="userId != null and userId !=''"> 
 | 
                and l.user_id = #{userId,jdbcType=BIGINT} 
 | 
            </if> 
 | 
            <if test="lineId != null and lineId !=''"> 
 | 
                and l.line_id = #{lineId,jdbcType=BIGINT} 
 | 
            </if> 
 | 
            <if test="stationId != null and stationId !=''"> 
 | 
                and l.station_id = #{stationId,jdbcType=BIGINT} 
 | 
            </if> 
 | 
            <if test="planId != null and planId !=''"> 
 | 
                and l.plan_id = #{planId,jdbcType=BIGINT} 
 | 
            </if> 
 | 
            <if test="processId != null and processId !=''"> 
 | 
                and l.process_id = #{processId,jdbcType=BIGINT} 
 | 
            </if> 
 | 
            <if test="nodeId != null and nodeId !=''"> 
 | 
                and l.node_id = #{nodeId,jdbcType=BIGINT} 
 | 
            </if> 
 | 
            <if test="status != null and status !=''"> 
 | 
                and l.status = #{status,jdbcType=TINYINT} 
 | 
            </if> 
 | 
            <if test="assistants != null and assistants !=''"> 
 | 
                and l.assistants = #{assistants,jdbcType=VARCHAR} 
 | 
            </if> 
 | 
        </where> 
 | 
        order by 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 sta_assembly_work_last l 
 | 
        left join ba_user u on l.user_id = u.id 
 | 
        left join plt_station s on l.station_id = s.id 
 | 
        left join pr_assembly_plan p on l.plan_id = p.id 
 | 
        left join pr_production_process pp on l.process_id = pp.id 
 | 
        left join pr_production_node n on l.node_id = n.id 
 | 
        left join plt_production_line ll on l.line_id = ll.id 
 | 
        <where> 
 | 
            <if test="userName != null and userName != ''"> 
 | 
                and u.name like concat('%', #{userName}, '%') 
 | 
            </if> 
 | 
            <if test="stationName != null and stationName != '' "> 
 | 
                and s.name like concat('%', #{stationName}, '%') 
 | 
            </if> 
 | 
            <if test="planName != null and planName != '' "> 
 | 
                and p.name like concat('%', #{planName}, '%') 
 | 
            </if> 
 | 
            <if test="processName != null and processName != '' "> 
 | 
                and pp.name like concat('%', #{processName}, '%') 
 | 
            </if> 
 | 
            <if test="nodeName != null and nodeName != '' "> 
 | 
                and n.content like concat('%', #{nodeName}, '%') 
 | 
            </if> 
 | 
            <if test="lineName != null and lineName != '' "> 
 | 
                and ll.name like concat('%', #{lineName}, '%') 
 | 
            </if> 
 | 
            <if test="startTime != null and startTime !=''"> 
 | 
                and l.start_time <![CDATA[ > ]]> #{startTime,jdbcType=TIMESTAMP} 
 | 
            </if> 
 | 
            <if test="endTime != null and endTime !=''"> 
 | 
                and l.start_time <![CDATA[ < ]]> #{endTime,jdbcType=TIMESTAMP} 
 | 
            </if> 
 | 
            <if test="userId != null and userId !=''"> 
 | 
                and l.user_id = #{userId,jdbcType=BIGINT} 
 | 
            </if> 
 | 
            <if test="lineId != null and lineId !=''"> 
 | 
                and l.line_id = #{lineId,jdbcType=BIGINT} 
 | 
            </if> 
 | 
            <if test="stationId != null and stationId !=''"> 
 | 
                and l.station_id = #{stationId,jdbcType=BIGINT} 
 | 
            </if> 
 | 
            <if test="planId != null and planId !=''"> 
 | 
                and l.plan_id = #{planId,jdbcType=BIGINT} 
 | 
            </if> 
 | 
            <if test="processId != null and processId !=''"> 
 | 
                and l.process_id = #{processId,jdbcType=BIGINT} 
 | 
            </if> 
 | 
            <if test="nodeId != null and nodeId !=''"> 
 | 
                and l.node_id = #{nodeId,jdbcType=BIGINT} 
 | 
            </if> 
 | 
            <if test="status != null and status !=''"> 
 | 
                and l.status = #{status,jdbcType=TINYINT} 
 | 
            </if> 
 | 
            <if test="assistants != null and assistants !=''"> 
 | 
                and l.assistants = #{assistants,jdbcType=VARCHAR} 
 | 
            </if> 
 | 
        </where> 
 | 
    </select> 
 | 
  
 | 
    <delete id="deleteByPrimaryKey" parameterType="java.lang.Long"> 
 | 
        delete 
 | 
        from sta_assembly_work_last 
 | 
        where id = #{id,jdbcType=BIGINT} 
 | 
    </delete> 
 | 
    <insert id="insert" keyColumn="id" keyProperty="id" parameterType="com.dy.pmsGlobal.pojoSta.StaAssemblyWorkLast" 
 | 
            useGeneratedKeys="true"> 
 | 
        insert into sta_assembly_work_last 
 | 
        ( id, user_id, line_id 
 | 
        , station_id, plan_id, process_id 
 | 
        , node_id, work_type, dt, status 
 | 
        , start_time, end_time, assistants) 
 | 
        values ( #{id,jdbcType=BIGINT}, #{userId,jdbcType=BIGINT}, #{lineId,jdbcType=BIGINT} 
 | 
               , #{stationId,jdbcType=BIGINT}, #{planId,jdbcType=BIGINT}, #{processId,jdbcType=BIGINT} 
 | 
               , #{nodeId,jdbcType=BIGINT}, #{workType,jdbcType=TINYINT}, #{dt,jdbcType=TIMESTAMP} 
 | 
               , #{status,jdbcType=TINYINT} 
 | 
               , #{startTime,jdbcType=TIMESTAMP}, #{endTime,jdbcType=TIMESTAMP}, #{assistants,jdbcType=VARCHAR}) 
 | 
    </insert> 
 | 
    <insert id="insertSelective" keyColumn="id" keyProperty="id" 
 | 
            parameterType="com.dy.pmsGlobal.pojoSta.StaAssemblyWorkLast" useGeneratedKeys="true"> 
 | 
        insert into sta_assembly_work_last 
 | 
        <trim prefix="(" suffix=")" suffixOverrides=","> 
 | 
            <if test="id != null">id,</if> 
 | 
            <if test="userId != null">user_id,</if> 
 | 
            <if test="lineId != null">line_id,</if> 
 | 
            <if test="stationId != null">station_id,</if> 
 | 
            <if test="planId != null">plan_id,</if> 
 | 
            <if test="processId != null">process_id,</if> 
 | 
            <if test="nodeId != null">node_id,</if> 
 | 
            <if test="workType != null">work_Type,</if> 
 | 
            <if test="dt != null">dt,</if> 
 | 
            <if test="status != null">status,</if> 
 | 
            <if test="startTime != null">start_time,</if> 
 | 
            <if test="endTime != null">end_time,</if> 
 | 
            <if test="assistants != null">assistants,</if> 
 | 
        </trim> 
 | 
        <trim prefix="values (" suffix=")" suffixOverrides=","> 
 | 
            <if test="id != null">#{id,jdbcType=BIGINT},</if> 
 | 
            <if test="userId != null">#{userId,jdbcType=BIGINT},</if> 
 | 
            <if test="lineId != null">#{lineId,jdbcType=BIGINT},</if> 
 | 
            <if test="stationId != null">#{stationId,jdbcType=BIGINT},</if> 
 | 
            <if test="planId != null">#{planId,jdbcType=BIGINT},</if> 
 | 
            <if test="processId != null">#{processId,jdbcType=BIGINT},</if> 
 | 
            <if test="nodeId != null">#{nodeId,jdbcType=BIGINT},</if> 
 | 
            <if test="workType != null">#{workType,jdbcType=TINYINT},</if> 
 | 
            <if test="dt != null">#{dt,jdbcType=TIMESTAMP},</if> 
 | 
            <if test="status != null">#{status,jdbcType=TINYINT},</if> 
 | 
            <if test="startTime != null">#{startTime,jdbcType=TIMESTAMP},</if> 
 | 
            <if test="endTime != null">#{endTime,jdbcType=TIMESTAMP},</if> 
 | 
            <if test="assistants != null">#{assistants,jdbcType=VARCHAR},</if> 
 | 
        </trim> 
 | 
    </insert> 
 | 
    <update id="updateByPrimaryKeySelective" parameterType="com.dy.pmsGlobal.pojoSta.StaAssemblyWorkLast"> 
 | 
        update sta_assembly_work_last 
 | 
        <set> 
 | 
            <if test="userId != null"> 
 | 
                user_id = #{userId,jdbcType=BIGINT}, 
 | 
            </if> 
 | 
            <if test="lineId != null"> 
 | 
                line_id = #{lineId,jdbcType=BIGINT}, 
 | 
            </if> 
 | 
            <if test="stationId != null"> 
 | 
                station_id = #{stationId,jdbcType=BIGINT}, 
 | 
            </if> 
 | 
            <if test="planId != null"> 
 | 
                plan_id = #{planId,jdbcType=BIGINT}, 
 | 
            </if> 
 | 
            <if test="processId != null"> 
 | 
                process_id = #{processId,jdbcType=BIGINT}, 
 | 
            </if> 
 | 
            <if test="nodeId != null"> 
 | 
                node_id = #{nodeId,jdbcType=BIGINT}, 
 | 
            </if> 
 | 
            <if test="workType != null"> 
 | 
                work_type = #{workType,jdbcType=TINYINT}, 
 | 
            </if> 
 | 
            <if test="dt != null"> 
 | 
                dt = #{dt,jdbcType=TIMESTAMP}, 
 | 
            </if> 
 | 
            <if test="status != null"> 
 | 
                status = #{status,jdbcType=TINYINT}, 
 | 
            </if> 
 | 
            <if test="startTime != null"> 
 | 
                start_time = #{startTime,jdbcType=TIMESTAMP}, 
 | 
            </if> 
 | 
            <if test="endTime != null"> 
 | 
                end_time = #{endTime,jdbcType=TIMESTAMP}, 
 | 
            </if> 
 | 
            <if test="assistants != null"> 
 | 
                assistants = #{assistants,jdbcType=VARCHAR}, 
 | 
            </if> 
 | 
        </set> 
 | 
        where id = #{id,jdbcType=BIGINT} 
 | 
    </update> 
 | 
    <update id="updateByPrimaryKey" parameterType="com.dy.pmsGlobal.pojoSta.StaAssemblyWorkLast"> 
 | 
        update sta_assembly_work_last 
 | 
        set user_id    = #{userId,jdbcType=BIGINT}, 
 | 
            line_id    = #{lineId,jdbcType=BIGINT}, 
 | 
            station_id = #{stationId,jdbcType=BIGINT}, 
 | 
            plan_id    = #{planId,jdbcType=BIGINT}, 
 | 
            process_id = #{processId,jdbcType=BIGINT}, 
 | 
            node_id    = #{nodeId,jdbcType=BIGINT}, 
 | 
            work_type  = #{workType,jdbcType=TINYINT}, 
 | 
            dt         = #{dt,jdbcType=TIMESTAMP}, 
 | 
            status     = #{status,jdbcType=TINYINT}, 
 | 
            start_time = #{startTime,jdbcType=TIMESTAMP}, 
 | 
            end_time   = #{endTime,jdbcType=TIMESTAMP}, 
 | 
            assistants = #{assistants,jdbcType=VARCHAR} 
 | 
        where id = #{id,jdbcType=BIGINT} 
 | 
    </update> 
 | 
</mapper> 
 |