刘小明
2024-08-26 591e3b8a10ed15023f3ad9e5a72a887ef89b0bb2
pms-parent/pms-global/src/main/resources/mapper/PrAssemblyPlanMapper.xml
@@ -29,6 +29,8 @@
                     select="com.dy.pmsGlobal.daoPr.PrBatchNumberMapper.selectBatchNoById" fetchType="eager"/>
        <association property="processName" column="process_id" javaType="java.lang.Long"
                     select="com.dy.pmsGlobal.daoPr.PrProductionProcessMapper.selectProcessNameById" fetchType="eager"/>
        <association property="orderName" column="order_id" javaType="java.lang.Long"
                     select="com.dy.pmsGlobal.daoPr.PrOrderMapper.selectOrderNameById" fetchType="eager" />
        <collection property="process" ofType="com.dy.pmsGlobal.pojoPr.PrProductionProcess"
                    select="com.dy.pmsGlobal.daoPr.PrProductionProcessMapper.selectByPrimaryKey" fetchType="eager"
                    column="process_id"/>
@@ -55,6 +57,7 @@
                    select="com.dy.pmsGlobal.daoPr.PrProductionProcessMapper.selectByProcessId" fetchType="eager"
                    column="process_id"/>
    </resultMap>
    <sql id="Base_Column_List">
        id,order_id
@@ -92,7 +95,7 @@
        select count(1)
        from pr_assembly_plan
        where deleted = 0
        <if test="id != null">
        <if test="id != null and id !=''">
            and process_id = #{id}
        </if>
    </select>
@@ -130,43 +133,43 @@
        <include refid="Base_Column_List"/>
        from pr_assembly_plan
        <trim prefix="where" suffixOverrides="and">
            <if test="orderId != null">
            <if test="orderId!= null and orderId !=''">
                order_id = #{orderId,jdbcType=BIGINT} and
            </if>
            <if test="proId != null">
            <if test="proId != null and proId !=''">
                pro_id = #{proId,jdbcType=BIGINT} and
            </if>
            <if test="batchId != null">
            <if test="batchId != null and batchId !=''">
                batch_id = #{batchId,jdbcType=BIGINT} and
            </if>
            <if test="processId != null">
            <if test="processId!= null and processId !=''">
                process_id = #{processId,jdbcType=BIGINT} and
            </if>
            <if test="name != null">
            <if test="name != null and name !=''">
                name = #{name,jdbcType=VARCHAR} and
            </if>
            <if test="number != null">
            <if test="number != null and number !=''">
                number = #{number,jdbcType=INTEGER} and
            </if>
            <if test="status != null">
            <if test="status != null and status !=''">
                status = #{status,jdbcType=TINYINT} and
            </if>
            <if test="creator != null">
            <if test="creator != null and creator !=''">
                creator = #{creator,jdbcType=VARCHAR} and
            </if>
            <if test="dt != null">
            <if test="dt != null and dt !=''">
                dt = #{dt,jdbcType=TIMESTAMP} and
            </if>
            <if test="startDate != null">
            <if test="startDate != null and startDate !=''">
                start_date = #{startDate,jdbcType=VARCHAR} and
            </if>
            <if test="endDate != null">
            <if test="endDate != null and endDate !=''">
                end_date = #{endDate,jdbcType=VARCHAR} and
            </if>
            <if test="deleted != null">
            <if test="deleted != null and deleted !=''">
                deleted = #{deleted,jdbcType=TINYINT} and
            </if>
            <if test="content != null">
            <if test="content != null and content !=''">
                content = #{content,jdbcType=VARCHAR} and
            </if>
        </trim>
@@ -177,43 +180,43 @@
        <include refid="Base_Column_List"/>
        from pr_assembly_plan
        <trim prefix="where" suffixOverrides="and">
            <if test="orderId != null">
            <if test="orderId!= null and orderId !=''">
                order_id = #{orderId,jdbcType=BIGINT} and
            </if>
            <if test="proId != null">
            <if test="proId != null and proId !=''">
                pro_id = #{proId,jdbcType=BIGINT} and
            </if>
            <if test="batchId != null">
            <if test="batchId != null and batchId !=''">
                batch_id = #{batchId,jdbcType=BIGINT} and
            </if>
            <if test="processId != null">
            <if test="processId!= null and processId !=''">
                process_id = #{processId,jdbcType=BIGINT} and
            </if>
            <if test="name != null">
            <if test="name != null and name !=''">
                name = #{name,jdbcType=VARCHAR} and
            </if>
            <if test="number != null">
            <if test="number != null and number !=''">
                number = #{number,jdbcType=INTEGER} and
            </if>
            <if test="status != null">
            <if test="status != null and status !=''">
                status = #{status,jdbcType=TINYINT} and
            </if>
            <if test="creator != null">
            <if test="creator != null and creator !=''">
                creator = #{creator,jdbcType=VARCHAR} and
            </if>
            <if test="dt != null">
            <if test="dt != null and dt !=''">
                dt = #{dt,jdbcType=TIMESTAMP} and
            </if>
            <if test="startDate != null">
            <if test="startDate != null and startDate !=''">
                start_date = #{startDate,jdbcType=VARCHAR} and
            </if>
            <if test="endDate != null">
            <if test="endDate != null and endDate !=''">
                end_date = #{endDate,jdbcType=VARCHAR} and
            </if>
            <if test="deleted != null">
            <if test="deleted != null and deleted !=''">
                deleted = #{deleted,jdbcType=TINYINT} and
            </if>
            <if test="content != null">
            <if test="content != null and content !=''">
                content = #{content,jdbcType=VARCHAR} and
            </if>
        </trim>
@@ -244,88 +247,88 @@
            useGeneratedKeys="true">
        insert into pr_assembly_plan
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="id != null">id,</if>
            <if test="orderId != null">order_id,</if>
            <if test="proId != null">pro_id,</if>
            <if test="batchId != null">batch_id,</if>
            <if test="processId != null">process_id,</if>
            <if test="name != null">name,</if>
            <if test="number != null">number,</if>
            <if test="status != null">status,</if>
            <if test="creator != null">creator,</if>
            <if test="dt != null">dt,</if>
            <if test="startDate != null">start_date,</if>
            <if test="endDate != null">end_date,</if>
            <if test="deleted != null">deleted,</if>
            <if test="content != null">content,</if>
            <if test="inputNumber != null">input_number,</if>
            <if test="outputNumber != null">output_number,</if>
            <if test="id != null and id !=''">id,</if>
            <if test="orderId!= null and orderId !=''">order_id,</if>
            <if test="proId != null and proId !=''">pro_id,</if>
            <if test="batchId != null and batchId !=''">batch_id,</if>
            <if test="processId != null and processId !=''">process_id,</if>
            <if test="name != null and name !=''">name,</if>
            <if test="number != null and number !=''">number,</if>
            <if test="status != null and status !=''">status,</if>
            <if test="creator != null and creator !=''">creator,</if>
            <if test="dt != null and dt !=''">dt,</if>
            <if test="startDate != null and startDate !=''">start_date,</if>
            <if test="endDate != null and endDate !=''">end_date,</if>
            <if test="deleted != null and deleted !=''">deleted,</if>
            <if test="content != null and content !=''">content,</if>
            <if test="inputNumber!= null and inputNumber !=''">input_number,</if>
            <if test="outputNumber!= null and outputNumber !=''">output_number,</if>
        </trim>
        <trim prefix="values (" suffix=")" suffixOverrides=",">
            <if test="id != null">#{id,jdbcType=BIGINT},</if>
            <if test="orderId != null">#{orderId,jdbcType=BIGINT},</if>
            <if test="proId != null">#{proId,jdbcType=BIGINT},</if>
            <if test="batchId != null">#{batchId,jdbcType=BIGINT},</if>
            <if test="processId != null">#{processId,jdbcType=BIGINT},</if>
            <if test="name != null">#{name,jdbcType=VARCHAR},</if>
            <if test="number != null">#{number,jdbcType=INTEGER},</if>
            <if test="status != null">#{status,jdbcType=TINYINT},</if>
            <if test="creator != null">#{creator,jdbcType=VARCHAR},</if>
            <if test="dt != null">#{dt,jdbcType=TIMESTAMP},</if>
            <if test="startDate != null">#{startDate,jdbcType=VARCHAR},</if>
            <if test="endDate != null">#{endDate,jdbcType=VARCHAR},</if>
            <if test="deleted != null">#{deleted,jdbcType=TINYINT},</if>
            <if test="content != null">#{content,jdbcType=VARCHAR},</if>
            <if test="inputNumber != null">#{inputNumber,jdbcType=INTEGER},</if>
            <if test="outputNumber != null">#{outputNumber,jdbcType=INTEGER},</if>
            <if test="id != null and id !=''">#{id,jdbcType=BIGINT},</if>
            <if test="orderId!= null and orderId !=''">#{orderId,jdbcType=BIGINT},</if>
            <if test="proId != null and proId !=''">#{proId,jdbcType=BIGINT},</if>
            <if test="batchId != null and batchId !=''">#{batchId,jdbcType=BIGINT},</if>
            <if test="processId != null and processId !=''">#{processId,jdbcType=BIGINT},</if>
            <if test="name != null and name !=''">#{name,jdbcType=VARCHAR},</if>
            <if test="number != null and number !=''">#{number,jdbcType=INTEGER},</if>
            <if test="status != null and status !=''">#{status,jdbcType=TINYINT},</if>
            <if test="creator != null and creator !=''">#{creator,jdbcType=VARCHAR},</if>
            <if test="dt != null and dt !=''">#{dt,jdbcType=TIMESTAMP},</if>
            <if test="startDate != null and startDate !=''">#{startDate,jdbcType=VARCHAR},</if>
            <if test="endDate != null and endDate !=''">#{endDate,jdbcType=VARCHAR},</if>
            <if test="deleted != null and deleted !=''">#{deleted,jdbcType=TINYINT},</if>
            <if test="content != null and content !=''">#{content,jdbcType=VARCHAR},</if>
            <if test="inputNumber!= null and inputNumber !=''">#{inputNumber,jdbcType=INTEGER},</if>
            <if test="outputNumber!= null and outputNumber !=''">#{outputNumber,jdbcType=INTEGER},</if>
        </trim>
    </insert>
    <update id="updateByPrimaryKeySelective" parameterType="com.dy.pmsGlobal.pojoPr.PrAssemblyPlan">
        update pr_assembly_plan
        <set>
            <if test="orderId != null">
            <if test="orderId!= null and orderId !=''">
                order_id = #{orderId,jdbcType=BIGINT} ,
            </if>
            <if test="proId != null">
            <if test="proId != null and proId !=''">
                pro_id = #{proId,jdbcType=BIGINT},
            </if>
            <if test="batchId != null">
            <if test="batchId != null and batchId !=''">
                batch_id = #{batchId,jdbcType=BIGINT},
            </if>
            <if test="processId != null">
            <if test="processId!= null and processId !=''">
                process_id = #{processId,jdbcType=BIGINT},
            </if>
            <if test="name != null">
            <if test="name != null and name !=''">
                name = #{name,jdbcType=VARCHAR},
            </if>
            <if test="number != null">
            <if test="number != null and number !=''">
                number = #{number,jdbcType=INTEGER},
            </if>
            <if test="status != null">
            <if test="status != null and status !=''">
                status = #{status,jdbcType=TINYINT},
            </if>
            <if test="creator != null">
            <if test="creator != null and creator !=''">
                creator = #{creator,jdbcType=VARCHAR},
            </if>
            <if test="dt != null">
            <if test="dt != null and dt !=''">
                dt = #{dt,jdbcType=TIMESTAMP},
            </if>
            <if test="startDate != null">
            <if test="startDate != null and startDate !=''">
                start_date = #{startDate,jdbcType=VARCHAR},
            </if>
            <if test="endDate != null">
            <if test="endDate != null and endDate !=''">
                end_date = #{endDate,jdbcType=VARCHAR},
            </if>
            <if test="deleted != null">
            <if test="deleted != null and deleted !=''">
                deleted = #{deleted,jdbcType=TINYINT},
            </if>
            <if test="content != null">
            <if test="content != null and content !=''">
                content = #{content,jdbcType=VARCHAR},
            </if>
            <if test="inputNumber != null">
            <if test="inputNumber!= null and inputNumber !=''">
                input_number = #{inputNumber,jdbcType=INTEGER},
            </if>
            <if test="outputNumber != null">
            <if test="outputNumber!= null and outputNumber !=''">
                output_number = #{outputNumber,jdbcType=INTEGER},
            </if>
        </set>
@@ -357,7 +360,7 @@
        <include refid="Base_Column_List"/>
        from pr_assembly_plan
        <trim prefix="where" suffixOverrides="and">
            <if test="proId != null">
            <if test="proId != null and proId !=''">
                pro_id = #{proId,jdbcType=BIGINT} and
            </if>
            <if test="startDate != null and startDate != '' ">
@@ -379,7 +382,7 @@
        select count(1)
        from pr_assembly_plan
        <trim prefix="where" suffixOverrides="and">
            <if test="proId != null">
            <if test="proId != null and proId !=''">
                pro_id = #{proId,jdbcType=BIGINT} and
            </if>
            <if test="startDate != null and startDate != '' ">
@@ -394,7 +397,7 @@
        select count(1) > 0
        from pr_assembly_plan
        where name = #{name,jdbcType=VARCHAR}
        <if test="id != null">
        <if test="id != null and id !=''">
            and id != #{id,jdbcType=BIGINT}
        </if>
    </select>
@@ -404,4 +407,33 @@
        set deleted = 1
        where id = #{id}
    </update>
    <select id="countByPlanIdAndNodeId" resultType="java.lang.Long">
        select count(1) from pr_assembly_plan ap
        left join pr_production_node pn on ap.process_id = pn.process_id
        where ap.id = #{planId}  and pn.id= #{nodeId}
    </select>
    <resultMap id="jsonResultMap" type="java.util.HashMap">
        <id column="planId" property="planId"/>
        <result column="planName" property="planName"/>
        <result column="status" property="status"/>
        <collection property="nodes" javaType="java.util.HashMap">
            <result column="content" property="content"/>
            <result column="nodeId" property="nodeId"/>
        </collection>
    </resultMap>
    <select id="selectByPlanName" resultMap="jsonResultMap">
        select ap.id planId,ap.name planName,ap.`status`,pn.id nodeId,pn.content from pr_assembly_plan ap
        left join pr_production_node pn on ap.process_id = pn.process_id
        where status != -1
        <if test="planName != null and planName!= null">
            and ap.name like concat('%', #{planName}, '%')
        </if>
    </select>
</mapper>