From 583b80a582f9280a262ee72506d31d1bfa46f734 Mon Sep 17 00:00:00 2001
From: 廖井涛 <2265517004@qq.com>
Date: 星期三, 10 十二月 2025 11:29:57 +0800
Subject: [PATCH] 补交

---
 north-glass-erp/src/main/resources/mapper/pp/Report.xml |   81 +++++++++++++++++++++++++++++++++++++---
 1 files changed, 74 insertions(+), 7 deletions(-)

diff --git a/north-glass-erp/src/main/resources/mapper/pp/Report.xml b/north-glass-erp/src/main/resources/mapper/pp/Report.xml
index 03253e7..f169955 100644
--- a/north-glass-erp/src/main/resources/mapper/pp/Report.xml
+++ b/north-glass-erp/src/main/resources/mapper/pp/Report.xml
@@ -278,13 +278,17 @@
                JSON_UNQUOTE( JSON_EXTRACT( od.other_columns, '$.S01' )) AS code,
                CONCAT(rw.process_id,'/',GROUP_CONCAT(distinct dd.technology_number SEPARATOR '')) as process_id,
                rw.creator,
-               rw.reporting_work_id
+               rw.reporting_work_id,
+               ogd.child_width,
+               ogd.child_height,
+               JSON_UNQUOTE(JSON_EXTRACT(pd.separation, '$.thickness')) as thickness
         from
             sd.`order` as o left join sd.order_detail as od on o.order_id=od.order_id
                              left join sd.order_glass_detail as ogd on ogd.order_id=od.order_id and ogd.order_number=od.order_number
                              left join pp.reporting_work as rw on rw.order_id=o.order_id
                              left join pp.damage_details as dd on dd.reporting_work_id=rw.reporting_work_id and dd.order_number=ogd.order_number
             and dd.technology_number=ogd.technology_number
+        left join sd.product_detail as pd on pd.prod_id=od.product_id
         where (rw.reporting_work_time) >= #{startDate}
           and (rw.reporting_work_time) &lt;= #{endDate}
           and rw.this_worn_quantity > 0
@@ -331,6 +335,15 @@
         <if test="crossProcessBreakingDTO.reportingWorkId != null and crossProcessBreakingDTO.reportingWorkId != ''">
             and rw.reporting_work_id like concat('%', #{crossProcessBreakingDTO.reportingWorkId}, '%')
         </if>
+        <if test="crossProcessBreakingDTO.childWidth != null and crossProcessBreakingDTO.childWidth != ''">
+            and ogd.child_width regexp REGEXP_REPLACE(#{crossProcessBreakingDTO.childWidth},'\\.0+$','')
+        </if>
+        <if test="crossProcessBreakingDTO.childHeight != null and crossProcessBreakingDTO.childHeight != ''">
+            and ogd.child_height regexp REGEXP_REPLACE(#{crossProcessBreakingDTO.childHeight},'\\.0+$','')
+        </if>
+        <if test="crossProcessBreakingDTO.thickness != null and crossProcessBreakingDTO.thickness != ''">
+            and JSON_UNQUOTE(JSON_EXTRACT(pd.separation, '$.thickness')) like concat('%', #{crossProcessBreakingDTO.thickness}, '%')
+        </if>
         GROUP BY dd.id
         order by dd.id desc
         limit #{offset},#{pageSize}
@@ -354,13 +367,17 @@
         JSON_UNQUOTE( JSON_EXTRACT( od.other_columns, '$.S01' )) AS code,
         CONCAT(rw.process_id,'/',GROUP_CONCAT(distinct dd.technology_number SEPARATOR '')) as process_id,
         rw.creator,
-        rw.reporting_work_id
+        rw.reporting_work_id,
+        ogd.child_width,
+        ogd.child_height,
+        JSON_UNQUOTE(JSON_EXTRACT(pd.separation, '$.thickness')) as thickness
         from
         sd.`order` as o left join sd.order_detail as od on o.order_id=od.order_id
         left join sd.order_glass_detail as ogd on ogd.order_id=od.order_id and ogd.order_number=od.order_number
         left join pp.reporting_work as rw on rw.order_id=o.order_id
         left join pp.damage_details as dd on dd.reporting_work_id=rw.reporting_work_id and dd.order_number=ogd.order_number
         and dd.technology_number=ogd.technology_number
+        left join sd.product_detail as pd on pd.prod_id=od.product_id
         where (rw.reporting_work_time) >= #{startDate}
         and (rw.reporting_work_time) &lt;= #{endDate}
         and rw.this_worn_quantity > 0
@@ -406,6 +423,15 @@
         </if>
         <if test="crossProcessBreakingDTO.reportingWorkId != null and crossProcessBreakingDTO.reportingWorkId != ''">
             and rw.reporting_work_id like concat('%', #{crossProcessBreakingDTO.reportingWorkId}, '%')
+        </if>
+        <if test="crossProcessBreakingDTO.childWidth != null and crossProcessBreakingDTO.childWidth != ''">
+            and ogd.child_width regexp REGEXP_REPLACE(#{crossProcessBreakingDTO.childWidth},'\\.0+$','')
+        </if>
+        <if test="crossProcessBreakingDTO.childHeight != null and crossProcessBreakingDTO.childHeight != ''">
+            and ogd.child_height regexp REGEXP_REPLACE(#{crossProcessBreakingDTO.childHeight},'\\.0+$','')
+        </if>
+        <if test="crossProcessBreakingDTO.thickness != null and crossProcessBreakingDTO.thickness != ''">
+            and JSON_UNQUOTE(JSON_EXTRACT(pd.separation, '$.thickness')) like concat('%', #{crossProcessBreakingDTO.thickness}, '%')
         </if>
         GROUP BY dd.id
         order by dd.id desc
@@ -469,6 +495,15 @@
         <if test="crossProcessBreakingDTO.reportingWorkId != null and crossProcessBreakingDTO.reportingWorkId != ''">
             and rw.reporting_work_id like concat('%', #{crossProcessBreakingDTO.reportingWorkId}, '%')
         </if>
+        <if test="crossProcessBreakingDTO.childWidth != null and crossProcessBreakingDTO.childWidth != ''">
+            and ogd.child_width regexp REGEXP_REPLACE(#{crossProcessBreakingDTO.childWidth},'\\.0+$','')
+        </if>
+        <if test="crossProcessBreakingDTO.childHeight != null and crossProcessBreakingDTO.childHeight != ''">
+            and ogd.child_height regexp REGEXP_REPLACE(#{crossProcessBreakingDTO.childHeight},'\\.0+$','')
+        </if>
+        <if test="crossProcessBreakingDTO.thickness != null and crossProcessBreakingDTO.thickness != ''">
+            and JSON_UNQUOTE(JSON_EXTRACT(pd.separation, '$.thickness')) like concat('%', #{crossProcessBreakingDTO.thickness}, '%')
+        </if>
         order by dd.id desc
     </select>
 
@@ -528,6 +563,15 @@
         </if>
         <if test="crossProcessBreakingDTO.reportingWorkId != null and crossProcessBreakingDTO.reportingWorkId != ''">
             and rw.reporting_work_id like concat('%', #{crossProcessBreakingDTO.reportingWorkId}, '%')
+        </if>
+        <if test="crossProcessBreakingDTO.childWidth != null and crossProcessBreakingDTO.childWidth != ''">
+            and ogd.child_width regexp REGEXP_REPLACE(#{crossProcessBreakingDTO.childWidth},'\\.0+$','')
+        </if>
+        <if test="crossProcessBreakingDTO.childHeight != null and crossProcessBreakingDTO.childHeight != ''">
+            and ogd.child_height regexp REGEXP_REPLACE(#{crossProcessBreakingDTO.childHeight},'\\.0+$','')
+        </if>
+        <if test="crossProcessBreakingDTO.thickness != null and crossProcessBreakingDTO.thickness != ''">
+            and JSON_UNQUOTE(JSON_EXTRACT(pd.separation, '$.thickness')) like concat('%', #{crossProcessBreakingDTO.thickness}, '%')
         </if>
         order by dd.id desc
     </select>
@@ -788,7 +832,8 @@
         ifnull(JSON_UNQUOTE(JSON_EXTRACT(od.other_columns, '$.S01')),'') AS glassNumber,
         rw.this_process,
         rw.creator,
-        rw.reporting_work_id
+        rw.reporting_work_id,
+        JSON_UNQUOTE(JSON_EXTRACT(pd.separation, '$.thickness')) AS thickness
         FROM
         sd.ORDER AS o
         LEFT JOIN sd.order_glass_detail AS ogd ON ogd.order_id = o.order_id
@@ -797,6 +842,7 @@
         AND dd.order_number = ogd.order_number
         AND dd.technology_number = ogd.technology_number
         left join sd.order_detail as od on o.order_id = od.order_id and od.order_number=ogd.order_number
+        left join sd.product_detail as pd on pd.prod_id=od.product_id
         WHERE
         rw.reporting_work_time >= #{selectTime1}
         AND rw.reporting_work_time &lt;=  #{selectTime2}
@@ -852,6 +898,9 @@
         </if>
         <if test="damageReportDTO.childHeight != null and damageReportDTO.childHeight != ''">
             and ogd.child_height regexp REGEXP_REPLACE(#{damageReportDTO.childHeight},'\\.0+$','')
+        </if>
+        <if test="damageReportDTO.thickness != null and damageReportDTO.thickness != ''">
+            and JSON_UNQUOTE(JSON_EXTRACT(pd.separation, '$.thickness')) like concat('%', #{damageReportDTO.thickness}, '%')
         </if>
         GROUP BY
         dd.id
@@ -870,6 +919,7 @@
         AND dd.order_number = ogd.order_number
         AND dd.technology_number = ogd.technology_number
         left join sd.order_detail as od on o.order_id = od.order_id and od.order_number=ogd.order_number
+        left join sd.product_detail as pd on pd.prod_id=od.product_id
         WHERE
         rw.reporting_work_time >= #{selectTime1}
         AND rw.reporting_work_time &lt;=  #{selectTime2}
@@ -924,6 +974,9 @@
         </if>
         <if test="damageReportDTO.childHeight != null and damageReportDTO.childHeight != ''">
             and ogd.child_height regexp REGEXP_REPLACE(#{damageReportDTO.childHeight},'\\.0+$','')
+        </if>
+        <if test="damageReportDTO.thickness != null and damageReportDTO.thickness != ''">
+            and JSON_UNQUOTE(JSON_EXTRACT(pd.separation, '$.thickness')) like concat('%', #{damageReportDTO.thickness}, '%')
         </if>
         limit #{offset},#{pageSize};
     </select>
@@ -1302,7 +1355,10 @@
                JSON_UNQUOTE( JSON_EXTRACT( od.other_columns, '$.S01' )) AS code,
                CONCAT(rw.process_id,'/',GROUP_CONCAT(distinct dd.technology_number SEPARATOR '')) as process_id,
                rw.creator,
-               rw.reporting_work_id
+               rw.reporting_work_id,
+               ogd.child_width,
+               ogd.child_height,
+               JSON_UNQUOTE(JSON_EXTRACT(pd.separation, '$.thickness')) as thickness
         from damage_details as dd
                  left join reporting_work as rw
                            on rw.reporting_work_id = dd.reporting_work_id
@@ -1339,7 +1395,10 @@
                JSON_UNQUOTE( JSON_EXTRACT( od.other_columns, '$.S01' )) AS code,
                CONCAT(rw.process_id,'/',GROUP_CONCAT(distinct dd.technology_number SEPARATOR '')) as process_id,
                rw.creator,
-               rw.reporting_work_id
+               rw.reporting_work_id,
+               ogd.child_width,
+               ogd.child_height,
+               JSON_UNQUOTE(JSON_EXTRACT(pd.separation, '$.thickness')) as thickness
         from damage_details as dd
                  left join reporting_work as rw
                            on rw.reporting_work_id = dd.reporting_work_id
@@ -1381,7 +1440,8 @@
                ifnull(JSON_UNQUOTE(JSON_EXTRACT(od.other_columns, '$.S01')),'') AS glassNumber,
                rw.this_process,
                rw.creator,
-               rw.reporting_work_id
+               rw.reporting_work_id,
+               JSON_UNQUOTE(JSON_EXTRACT(pd.separation, '$.thickness')) AS thickness
         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 = o.order_id
@@ -1389,6 +1449,7 @@
             AND dd.order_number = ogd.order_number
             AND dd.technology_number = ogd.technology_number
             left join sd.order_detail as od on o.order_id = od.order_id and od.order_number=ogd.order_number
+            left join sd.product_detail as pd on pd.prod_id=od.product_id
         WHERE rw.reporting_work_time >= #{dates[0]}
           and rw.reporting_work_time &lt;= #{dates[1]}
           AND dd.available = 0 and rw.reviewed_state>=0
@@ -1461,7 +1522,8 @@
                od.quantity - odpd.reporting_work_num                                as incompleteNum,
                ROUND(ogd.child_width * ogd.child_height * (od.quantity - odpd.reporting_work_num) / 1000000,
                      2)                                                             as incompleteArea,
-               od.product_name
+               od.product_name,
+               JSON_UNQUOTE(JSON_EXTRACT(pd.separation, '$.thickness')) AS thickness
 
         from sd.order_detail AS od
                  LEFT JOIN sd.order_glass_detail AS ogd
@@ -1479,6 +1541,7 @@
                                and odpd.process_id = fc.process_id
                  left join sd.`order` as o
                            on o.order_id = od.order_id
+                 left join sd.product_detail as pd on pd.prod_id=od.product_id
         where  o.create_order>0
           and odpd.process = #{process}
           and date(o.create_time) >= #{date[0]}
@@ -2668,6 +2731,7 @@
                 AND dd.technology_number = ogd.technology_number
                 LEFT JOIN sd.order_detail AS od ON o.order_id = od.order_id
                 AND od.order_number = ogd.order_number
+                left join sd.product_detail as pd on pd.prod_id=od.product_id
         WHERE
             rw.reporting_work_time >= #{selectTime1}
           AND rw.reporting_work_time &lt;=  #{selectTime2}
@@ -2723,6 +2787,9 @@
         <if test="damageReportDTO.childHeight != null and damageReportDTO.childHeight != ''">
             and ogd.child_height regexp REGEXP_REPLACE(#{damageReportDTO.childHeight},'\\.0+$','')
         </if>
+        <if test="damageReportDTO.thickness != null and damageReportDTO.thickness != ''">
+            and JSON_UNQUOTE(JSON_EXTRACT(pd.separation, '$.thickness')) like concat('%', #{damageReportDTO.thickness}, '%')
+        </if>
     </select>
 
     <select id="teamOutputFootSum">

--
Gitblit v1.8.0