chenlu
2024-03-07 de18cca83738bdf6b279046e34b910ccd5b73a84
north-glass-erp/src/main/resources/mapper/pp/ReworkMapper.xml
@@ -11,6 +11,7 @@
    <!--获取返工数据-->
    <select id="SelectRework" >
        select
        r.id,
        r.review_status,
        r.rework_team,
        r.rework_id,
@@ -66,36 +67,39 @@
    <select id="getSelectRework">
        select o.order_id as orderId,
               rwd.reporting_work_id as reportingWorkId,
               dd.reporting_work_id as reportingWorkId,
               rw.process_id as processId,
               o.project,
               o.batch,
               rwd.order_number as orderSort,
               dd.id as reviewer,
               dd.order_number as orderSort,
               od.product_name as productName,
               ogd.technology_number as technologyNumber,
               dd.technology_number as technologyNumber,
               ogd.glass_address as glassAddress,
               rwd.wait_rework_quantity as reworkNum,
               dd.breakage_quantity-dd.quantity as reworkNum,
               od.width,
               od.height,
               od.shape,
               rwd.breakage_quantity as breakageQuantity,
               rwd.return_process as reworkProcesses,
               rwd.breakage_reason as reworkReason,
               rwd.breakage_type as reworkType,
               rwd.responsible_personnel as responsiblePersonnel,
               rwd.responsible_equipment as responsibleEquipment,
               rwd.responsible_team as responsibleTeam,
               ROUND(rwd.wait_rework_quantity * od.width * od.height / 1000000, 2) as reworkArea,
               dd.breakage_quantity-dd.quantity as breakageQuantity,
               dd.return_process as reworkProcesses,
               dd.breakage_reason as reworkReason,
               dd.breakage_type as reworkType,
               dd.responsible_personnel as responsiblePersonnel,
               dd.responsible_equipment as responsibleEquipment,
               dd.responsible_team as responsibleTeam,
               ROUND((dd.breakage_quantity-dd.quantity) * od.width * od.height / 1000000, 2) as reworkArea,
               rw.qualityIns_pector as qualityInsPector
        from pp.reporting_work_detail rwd
                 left join pp.reporting_work rw on rwd.reporting_work_id = rw.reporting_work_id
                 left join sd.`order` o on rw.order_id = o.order_id
                 left join sd.order_detail od on rw.order_id = od.order_id and rwd.order_number = od.order_number
                 left join sd.order_glass_detail ogd
                           on rw.order_id = ogd.order_id and rwd.order_number = ogd.order_number
                            where  rwd.wait_rework_quantity>0
        from pp.damage_details dd
                 left join   pp.reporting_work_detail rwd on dd.reporting_work_id = rwd.reporting_work_id and dd.order_number=rwd.order_number  and dd.technology_number=rwd.technology_number
                 left join pp.reporting_work rw on dd.reporting_work_id = rw.reporting_work_id
        group by ogd.order_id, ogd.order_number
                 left join sd.`order` o on rw.order_id = o.order_id
                 left join sd.order_detail od on rw.order_id = od.order_id and dd.order_number = od.order_number
                 left join (select * from sd.order_glass_detail group by order_id,order_number) as ogd
                           on rw.order_id = ogd.order_id and dd.order_number = ogd.order_number
        where  dd.breakage_quantity-dd.quantity>0 and dd.available=1
    </select>
@@ -103,8 +107,12 @@
        select count(*) from pp.rework where  date(create_time)=CURDATE()
    </select>
    <select id="getMaxFlowCard" >
        select count(*) from pp.flow_card where project_no=#{processId}
    </select>
    <insert id="insertRework"  useGeneratedKeys="true" >
        insert into pp.rework(rework_id,reporting_work_id, process_id,order_id, order_sort, technology_number, responsible_team,
        insert into pp.rework(rework_id,reporting_work_id,process_id,order_id, order_sort, technology_number, responsible_team,
                              responsible_personnel, rework_type, rework_reason, rework_processes, rework_num,
                              rework_area, rework_team,responsible_equipment,quality_inspector, reviewer, review_status, create_time)
        values (
@@ -115,13 +123,15 @@
    </insert>
    <update id="updateRework"  >
        update pp.rework set reviewer=#{userName},review_status=1,update_time=now() where rework_id=#{rework.reworkId}
        update pp.rework set reviewer=#{userName},review_status=1,update_time=now() where rework_id=#{rework.id}
    </update>
    <update id="updateReportingWorkDetail"  >
        update pp.reporting_work_detail set wait_rework_quantity=wait_rework_quantity-#{rework.reworkNum}
            where reporting_work_id=#{rework.reportingWorkId} and order_number=#{rework.orderSort} and technology_number=#{rework.technologyNumber}
    <update id="updateDamageDetails"  >
        update pp.damage_details set quantity=quantity+#{rework.reworkNum} where id=#{rework.reviewer}
    </update>
</mapper>