Fancy
2024-07-04 d01bad0d465d3a00644f8c5521be88c4b13237c3
pms-parent/pms-global/src/main/resources/mapper/StaAssemblyWorkLastMapper.xml
@@ -12,20 +12,67 @@
            <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="nodeType" column="node_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="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="nodeType" column="node_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"/>
        <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,dt,status,
        node_id,node_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}.node_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" />
@@ -86,7 +133,7 @@
            <if test="startTime != null and startTime !=''">
                and start_time = #{startTime,jdbcType=TIMESTAMP},
            </if>
            <if test="endTime != null and userId !=''">
            <if test="endTime != null and endTime !=''">
                and  end_time = #{endTime,jdbcType=TIMESTAMP},
            </if>
            <if test="assistants != null and assistants !=''">
@@ -94,6 +141,142 @@
            </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,
               pp.name as process_name,
               n.content as node_name,
               ll.name as line_name
        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}
            </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">
@@ -104,12 +287,12 @@
        insert into sta_assembly_work_last
        ( id,user_id,line_id
        ,station_id,plan_id,process_id
        ,node_id,dt,status
        ,node_id,node_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},#{dt,jdbcType=TIMESTAMP},#{status,jdbcType=TINYINT}
        ,#{nodeId,jdbcType=BIGINT},#{nodeType,jdbcType=TINYINT},#{dt,jdbcType=TIMESTAMP},#{status,jdbcType=TINYINT}
        ,#{startTime,jdbcType=TIMESTAMP},#{endTime,jdbcType=TIMESTAMP},#{assistants,jdbcType=VARCHAR}
        )
    </insert>
@@ -123,6 +306,7 @@
                <if test="planId != null">plan_id,</if>
                <if test="processId != null">process_id,</if>
                <if test="nodeId != null">node_id,</if>
                <if test="nodeType != null">node_Type,</if>
                <if test="dt != null">dt,</if>
                <if test="status != null">status,</if>
                <if test="startTime != null">start_time,</if>
@@ -137,6 +321,7 @@
                <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="nodeType != null">#{nodeType,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>
@@ -165,6 +350,9 @@
                <if test="nodeId != null">
                    node_id = #{nodeId,jdbcType=BIGINT},
                </if>
                <if test="nodeType != null">
                    node_type = #{nodeType,jdbcType=TINYINT},
                </if>
                <if test="dt != null">
                    dt = #{dt,jdbcType=TIMESTAMP},
                </if>
@@ -192,6 +380,7 @@
            plan_id =  #{planId,jdbcType=BIGINT},
            process_id =  #{processId,jdbcType=BIGINT},
            node_id =  #{nodeId,jdbcType=BIGINT},
            node_type =  #{nodeType,jdbcType=TINYINT},
            dt =  #{dt,jdbcType=TIMESTAMP},
            status =  #{status,jdbcType=TINYINT},
            start_time =  #{startTime,jdbcType=TIMESTAMP},