guoyujie
2025-06-21 2e2356dd4fec268f6be6ed923b14bfa667de0c0d
north-glass-erp/src/main/resources/mapper/pp/ReportingWork.xml
@@ -215,7 +215,7 @@
        LEFT JOIN sd.order_glass_detail AS ogd
        ON od.order_id = ogd.order_id
        AND od.order_number = ogd.order_number
        <if test="process == '夹胶' or (process == '打胶和粘框')" >
        <if test="laminating == 'stepA' || laminating == 'stepC'" >
            AND ogd.`group` = (select `group`
            from sd.order_glass_detail
            where order_id = ogd.order_id
@@ -258,7 +258,7 @@
        from reporting_work as a
        left join reporting_work_detail as b on a.reporting_work_id = b.reporting_work_id
        where this_process=#{previousProcess} and process_id= #{processIdStr} and a.reviewed_state>=0
        <if test="laminating != 'laminating'">
        <if test="laminating == ''">
            AND POSITION(b.technology_number in #{technologyStr})
        </if>
        GROUP BY b.order_number,b.technology_number
@@ -268,7 +268,7 @@
        fc.process_id = #{processIdStr}
        AND odpd.process = #{process}
        <if test="laminating != 'laminating'">
        <if test="laminating == ''">
            AND POSITION(fc.technology_number in #{technologyStr})
        </if>
        order by fc.order_number
@@ -952,7 +952,7 @@
        LEFT JOIN sd.order_glass_detail AS ogd
        ON od.order_id = ogd.order_id
        AND od.order_number = ogd.order_number
        <if test="process == '夹胶' or (process == '打胶和粘框')">
        <if test="laminating == 'stepA' || laminating == 'stepC'" >
            AND ogd.`group` = (select `group`
            from sd.order_glass_detail
            where order_id = ogd.order_id
@@ -1002,7 +1002,7 @@
        on rws.process_id = fc.process_id and rws.order_number=fc.order_number and rws.technology_number=fc.technology_number
        WHERE
        fc.process_id = #{processIdStr}
        <if test="laminating != 'laminating' ">
        <if test="laminating == ''">
            AND POSITION(fc.technology_number in #{technologyStr})
        </if>
        AND odpd.process = #{process}
@@ -1020,10 +1020,12 @@
    <select id="getFootSum">
        SELECT
        SUM(rw.this_completed_quantity) AS thisCompletedQuantity,
        ROUND(SUM(ogd.child_width * ogd.child_height * rw.this_completed_quantity / 1000000), 2) AS completedArea,
        SUM(rw.this_worn_quantity) AS thisWornQuantity,
        ROUND(SUM(ogd.child_width * ogd.child_height * rw.this_worn_quantity / 1000000), 2) AS wornArea
        SUM(rwd.completed_quantity) AS thisCompletedQuantity,
        ROUND(SUM(ogd.child_width * ogd.child_height * rwd.completed_quantity / 1000000), 2) AS completedArea,
        SUM(rwd.breakage_quantity) AS thisWornQuantity,
        ROUND(SUM(ogd.child_width * ogd.child_height * rwd.breakage_quantity / 1000000), 2) AS wornArea,
        CEILING(count(rw.reporting_work_id)/#{pageSize}) as 'pageTotal',
        count(distinct rw.reporting_work_id) as 'total'
        FROM reporting_work AS rw
        LEFT JOIN reporting_work_detail AS rwd ON rw.reporting_work_id = rwd.reporting_work_id
        LEFT JOIN sd.order_glass_detail AS ogd ON ogd.order_id = rw.order_id
@@ -1060,10 +1062,37 @@
        <if test="reportingWork.teamsGroupsName != null and reportingWork.teamsGroupsName != ''">
            and rw.teams_groups_name regexp #{reportingWork.teamsGroupsName}
        </if>
    </select>
    <select id="selectReviewedState">
        select reviewed_state from pp.reporting_work where reporting_work_id=#{reportingWorkId};
    </select>
    <select id="qualityReviewSearchMp" resultMap="reportingWorkMap">
        select rw.reporting_work_id,
        rw.reporting_work_time,
        rw.process_id,
        o.project,
        o.customer_name,
        rw.this_process,
        ifnull(rw.this_completed_quantity,0) as this_completed_quantity,
        rw.this_worn_quantity,
        rw.teams_groups_name,
        rw.device_name,
        rw.previous_process,
        rw.next_process,
        rw.quality_inspector,
        rw.quality_ins_time,
        dd.quality_ins_status
        from sd.order as o
        left join sd.order_glass_detail as ogd on ogd.order_id = o.order_id
        left join reporting_work as rw on rw.order_id = ogd.order_id and rw.production_id = ogd.production_id
        right join damage_details as dd on dd.reporting_work_id=rw.reporting_work_id
        where rw.reviewed_state != 2
        and  dd.quality_ins_status = 1
        and rw.reviewed_state!=-1
        GROUP BY rw.reporting_work_id
        ORDER BY rw.reporting_work_id desc
    </select>
</mapper>