zhanghl
2025-05-19 61eb6b9768f341be77fa02e527a817caf3521bfb
aps-modules/aps-core/src/main/resources/mapper/core/ApsPlate/ApsPlateStandardRequireOrderEndDayMapper.xml
@@ -6,11 +6,9 @@
    <resultMap id="BaseResultMap" type="com.aps.core.domain.ApsPlate.ApsPlateStandardRequireOrderEndDay">
            <id property="id" column="id" />
            <result property="bomOrderId" column="bom_order_id" />
            <result property="requireId" column="require_id" />
            <result property="requireTrackId" column="require_track_id" />
            <result property="bomLineCode" column="bom_line_code" />
            <result property="docNo" column="doc_no" />
            <result property="planStartDay" column="plan_end_day" />
            <result property="planEndDay" column="plan_end_day" />
            <result property="orgCode" column="org_code" />
            <result property="batchNumber" column="batch_number" />
@@ -26,4 +24,45 @@
        plan_end_day,org_code,batch_number,del_flag,create_by,
        create_time,update_by,update_time
    </sql>
    <sql id="select_plan_time">
        with a as (
            select snow_next_id() as id,
                   plan.id as plan_id,
                   detail.doc_no,
                   min(require.start_date)    as start_date,
                   min(require.complete_date) as end_date,
                   detail.org_code,
                   detail.batch_number
            from aps_plate_standard_require_bom_order_detail detail
                     left join aps_plate_standard_require require on detail.require_id = require.id and require.del_flag = '0'
                     left join aps_plate_plan plan on detail.doc_no = plan.document_number and plan.del_flag = '0'
            where detail.del_flag = '0' and require.del_flag = '0' and detail.del_flag='0'
                and plan.id in
                <foreach collection="planIds" item="planId" open="(" separator="," close=")">
                    #{planId}
                </foreach>
            group by plan.id ,detail.doc_no,detail.org_code,detail.batch_number
        )
    </sql>
    <insert id="batchInsert" parameterType="Long">
        <include refid="select_plan_time" />
        insert into aps_plate_standard_require_order_end_day
        (id,plan_id, doc_no, plan_start_day, plan_end_day, org_code, batch_number
        , del_flag, create_time, create_by
        )
        select a.id, a.plan_id, a.doc_no, a.start_date, a.end_date, a.org_code,  a.batch_number,
        0, now(), #{createBy}
        from a
    </insert>
    <update id="batchRemove" parameterType="Long">
        update aps_plate_standard_require_order_end_day
        set del_flag=1
        where plan_id in
        <foreach collection="planIds" item="planId" open="(" separator="," close=")">
            #{planId}
        </foreach>
    </update>
</mapper>