guoyujie
2025-07-08 7104751e2f26872d4891d01d42ee88cf19715d01
north-glass-erp/src/main/resources/mapper/pp/ReportingWork.xml
@@ -102,9 +102,7 @@
    </select>
    <select id="SelectWorkBasicTeamsMp">
        SELECT bdp.id,bdp.basic_type,bdp.basic_name, bd.basic_name as basic_category FROM  sd.basic_data as bd left join  `basic_data_produce` as bdp
                                                                                                                          on bd.id=bdp.basic_category
        where bd.basic_category="process" and bdp.basic_type="teamsgroups" and bd.basic_name = #{process}
        select * from erp_user_info.`user` WHERE address=#{process}
    </select>
    <!--    查询流程卡工艺流程-->
@@ -215,7 +213,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 +256,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 +266,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
@@ -521,7 +519,10 @@
        GROUP BY c.order_number,c.technology_number
    </select>
<select id="selectReportingWorkMp" resultMap="reportingWorkMap">
        select rw.reporting_work_id,
    SELECT a.*,
     round(ogd.child_width*ogd.child_height * a.this_completed_quantity/1000000,2) as completedArea,
    round(ogd.child_width*ogd.child_height * a.this_worn_quantity/1000000,2)      as wornArea
           from (select rw.reporting_work_id,
               (rw.reporting_work_time) as reporting_work_time,
               o.order_id,
               CONCAT(rw.process_id,'/',GROUP_CONCAT(distinct rwd.technology_number SEPARATOR '')) as process_id,
@@ -529,18 +530,18 @@
               o.batch,
               rw.this_process,
               rw.this_completed_quantity,
               round(ogd.child_width*ogd.child_height * rw.this_completed_quantity/1000000,2) as completedArea,
               rw.this_worn_quantity,
               round(ogd.child_width*ogd.child_height * rw.this_worn_quantity/1000000,2)      as wornArea,
               rw.device_name,
               rw.teams_groups_name,
               rw.reviewed_state,
               rw.notes,
               rw.reviewed
               rw.reviewed,
                rwd.order_number,
                rwd.technology_number
        # (IF(rw.reviewed_state = 0, '未审核', IF(rw.reviewed_state = 1, '审核通过', '审核不通过'))) as reviewed_state
        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 and ogd.order_number=rwd.order_number and ogd.technology_number=rwd.technology_number
            left join sd.`order` as o on o.order_id=rw.order_id
        where rw.reviewed_state != 2
          and rw.reporting_work_time >= #{selectTime1}
@@ -574,7 +575,9 @@
        </if>
        GROUP BY rw.reporting_work_id
        ORDER BY rw.reporting_work_id desc
        limit #{offset},#{pageSize};
        limit #{offset},#{pageSize} ) as a
    left join sd.order_glass_detail as ogd on ogd.order_id=a.order_id and ogd.order_number=a.order_number and ogd.technology_number=a.technology_number
    GROUP BY a.reporting_work_id
    </select>
    <select id="getPageTotal">
@@ -952,7 +955,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 +1005,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}
@@ -1021,16 +1024,16 @@
    <select id="getFootSum">
        SELECT
        SUM(rwd.completed_quantity) AS thisCompletedQuantity,
        ROUND(SUM(ogd.child_width * ogd.child_height * rwd.completed_quantity / 1000000), 2) AS completedArea,
        ROUND(SUM(rwd.child_width * rwd.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,
        ROUND(SUM(rwd.child_width * rwd.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
        /*LEFT JOIN sd.order_glass_detail AS ogd ON ogd.order_id = rw.order_id
        AND ogd.order_number = rwd.order_number
        AND ogd.technology_number = rwd.technology_number
        AND ogd.technology_number = rwd.technology_number*/
        LEFT JOIN sd.`order` AS o ON o.order_id = rw.order_id
        WHERE rw.reviewed_state != 2
        and rw.reporting_work_time >= #{selectTime1}
@@ -1062,7 +1065,6 @@
        <if test="reportingWork.teamsGroupsName != null and reportingWork.teamsGroupsName != ''">
            and rw.teams_groups_name regexp #{reportingWork.teamsGroupsName}
        </if>
        limit #{offset},#{pageSize};
    </select>
    <select id="selectReviewedState">