zhanghl
2025-05-13 a9f55fb1ab24f43fee70b16e1a8c58a33fc59fa6
aps-modules/aps-core/src/main/resources/mapper/core/ApsPlateStandardRequireBomOrderDetailMapper.xml
@@ -4,7 +4,7 @@
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.aps.core.mapper.ApsPlateStandardRequireBomOrderDetailMapper">
    
    <resultMap type="ApsPlateStandardRequireBomOrderDetail" id="ApsPlateStandardRequireBomOrderDetailResult">
    <resultMap type="com.aps.core.domain.ApsPlateStandardRequireBomOrderDetail" id="ApsPlateStandardRequireBomOrderDetailResult">
        <result property="id"    column="id"    />
        <result property="requireId"    column="require_id"    />
        <result property="requireTrackId"    column="require_track_id"    />
@@ -30,7 +30,7 @@
        from aps_plate_standard_require_bom_order_detail
    </sql>
    <select id="selectApsPlateStandardRequireBomOrderDetailList" parameterType="ApsPlateStandardRequireBomOrderDetail" resultMap="ApsPlateStandardRequireBomOrderDetailResult">
    <select id="selectApsPlateStandardRequireBomOrderDetailList" parameterType="com.aps.core.domain.ApsPlateStandardRequireBomOrderDetail" resultMap="ApsPlateStandardRequireBomOrderDetailResult">
        <include refid="selectApsPlateStandardRequireBomOrderDetailVo"/>
        <where>  
            <if test="requireId != null  and requireId != ''"> and require_id = #{requireId}</if>
@@ -51,7 +51,7 @@
        where id = #{id}
    </select>
    <insert id="insertApsPlateStandardRequireBomOrderDetail" parameterType="ApsPlateStandardRequireBomOrderDetail">
    <insert id="insertApsPlateStandardRequireBomOrderDetail" parameterType="com.aps.core.domain.ApsPlateStandardRequireBomOrderDetail">
        insert into aps_plate_standard_require_bom_order_detail
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="id != null">id,</if>
@@ -93,7 +93,7 @@
         </trim>
    </insert>
    <update id="updateApsPlateStandardRequireBomOrderDetail" parameterType="ApsPlateStandardRequireBomOrderDetail">
    <update id="updateApsPlateStandardRequireBomOrderDetail" parameterType="com.aps.core.domain.ApsPlateStandardRequireBomOrderDetail">
        update aps_plate_standard_require_bom_order_detail
        <trim prefix="SET" suffixOverrides=",">
            <if test="requireId != null">require_id = #{requireId},</if>
@@ -130,7 +130,7 @@
        update aps_plate_standard_require_bom_order_detail set del_flag = '1' where batch_number = #{batchNumber}
    </update>
    <insert id="batchInsert" parameterType="ApsPlateStandardRequireBomOrderDetail">
    <insert id="batchInsert" parameterType="com.aps.core.domain.ApsPlateStandardRequireBomOrderDetail">
        insert into aps_plate_standard_require_bom_order_detail
        (id, require_id,require_track_id, bom_line_id, bom_line_code, doc_no,
         before_prod_amount, deduction_amount, after_prod_amount,
@@ -143,4 +143,30 @@
            )
        </foreach>
    </insert>
    <select id="selectRequireUpAndDownLevel" parameterType="Long" resultType="com.aps.core.domain.ApsPlatePlan">
        with bs as (
            select id, bom_header_code,bom_line_code,  require_track_id
            from aps_plate_standard_require
            where del_flag='0' and id=#{requireId}
        ) ,cp as (
            select re.id as reqiure_id, re.bom_header_code,re.bom_line_code,re.bom_line_level,   sd.doc_no,
                   (case
                        when re.bom_line_code=bs.bom_header_code then '上阶'
                        when re.bom_header_code=bs.bom_line_code then '下阶'
                       end ) as requirement_type,
                   pp.document_number,pp.item_number, pp.plan_start_day,pp.plan_end_day,pp.production_quantity
            from aps_plate_standard_require re
                     left join aps_plate_standard_require_bom_order_detail sd on re.id=sd.require_id
                     left join aps_plate_plan pp on sd.doc_no=pp.document_number
                     left join bs on re.require_track_id=bs.require_track_id
            where re.del_flag='0'
              and re.require_track_id in (select bs.require_track_id from bs)
        )
        select *
        from cp
-- where require_level is not null
        order by bom_line_level;
    </select>
</mapper>