From 636eec68dd5b988ea1b753a9b7ebc39f23eb501a Mon Sep 17 00:00:00 2001
From: ZengTao <2773468879@qq.com>
Date: 星期一, 13 十月 2025 07:55:56 +0800
Subject: [PATCH] 1、修改932线出片类型判断 2、钢化,仓储修改websocket推送方式

---
 hangzhoumesParent/moduleService/hollowGlassModule/src/main/resources/mapper/HollowBigStorageCageDetailsMapper.xml |   37 ++++++++++++++++++++++++++++++-------
 1 files changed, 30 insertions(+), 7 deletions(-)

diff --git a/hangzhoumesParent/moduleService/hollowGlassModule/src/main/resources/mapper/HollowBigStorageCageDetailsMapper.xml b/hangzhoumesParent/moduleService/hollowGlassModule/src/main/resources/mapper/HollowBigStorageCageDetailsMapper.xml
index 22cfa0d..0a9cf77 100644
--- a/hangzhoumesParent/moduleService/hollowGlassModule/src/main/resources/mapper/HollowBigStorageCageDetailsMapper.xml
+++ b/hangzhoumesParent/moduleService/hollowGlassModule/src/main/resources/mapper/HollowBigStorageCageDetailsMapper.xml
@@ -324,14 +324,37 @@
         ),
         glass_info_temp AS (
         SELECT
-        gi.id,
-        gi.glass_id,
+        flow_card_id,
+        engineer_id
+        FROM
+        (
+        SELECT
         gi.flow_card_id,
-        gi.layer,
-        gi.thickness,
-        gi.filmsId
-        FROM hollow_flow_temp hft
+        gi.engineer_id,
+        ROW_NUMBER() OVER ( PARTITION BY gi.flow_card_id ,gi.layer ORDER BY COUNT( gi.glass_id ) DESC ) AS rn
+        FROM
+        hollow_flow_temp hft
         INNER JOIN glass_info gi ON hft.flow_card_id = gi.flow_card_id
+        GROUP BY
+        gi.flow_card_id,
+        gi.engineer_id ,
+        gi.layer
+        ) t
+        WHERE
+        rn = 1
+        ),
+        glass_result AS (
+        SELECT
+        t1.id,
+        t1.glass_id,
+        t1.flow_card_id,
+        t1.layer,
+        t1.thickness,
+        t1.filmsId
+        FROM
+        glass_info_temp t
+        INNER JOIN glass_info t1 ON t.engineer_id = t1.engineer_id
+        AND t.flow_card_id = t1.flow_card_id
         ),
         damage_ranked AS (
         SELECT
@@ -360,7 +383,7 @@
         COUNT(DISTINCT t1.glass_id) as real_count,
         COUNT(DISTINCT t.id) - COUNT(DISTINCT t1.glass_id) as lack_count,
         COUNT(DISTINCT CASE WHEN t2.type IN (8,9) AND t2.status = 1 THEN t.glass_id END) as damage_count
-        FROM glass_info_temp t
+        FROM glass_result t
         LEFT JOIN hollow_details_temp t1 ON t.glass_id = t1.glass_id
         LEFT JOIN damage_latest t2 ON t.glass_id = t2.glass_id
         GROUP BY t.flow_card_id, t.layer, t.thickness, t.filmsId

--
Gitblit v1.8.0