From c1fc00d00df3fc637cb38da33ad1ca3f233b6aee Mon Sep 17 00:00:00 2001
From: chenlu <1320612696@qq.com>
Date: 星期五, 25 七月 2025 14:46:18 +0800
Subject: [PATCH] 次破报表求和查询添加审核状态条件
---
north-glass-erp/src/main/resources/mapper/pp/GlassOptimize.xml | 156 ++++++++++++++++++++++++++++++++++++---------------
1 files changed, 110 insertions(+), 46 deletions(-)
diff --git a/north-glass-erp/src/main/resources/mapper/pp/GlassOptimize.xml b/north-glass-erp/src/main/resources/mapper/pp/GlassOptimize.xml
index 6c9cab4..afbd97d 100644
--- a/north-glass-erp/src/main/resources/mapper/pp/GlassOptimize.xml
+++ b/north-glass-erp/src/main/resources/mapper/pp/GlassOptimize.xml
@@ -95,39 +95,45 @@
<!--绗竴娆′紭鍖栨煡璇�-->
<select id="firstOptimization">
- ( SELECT
- c.project_no,
- d.child_width as 'width',
- d.child_height as 'height',
- c.quantity,
- o.shape,
- concat( c.process_id, '-', c.technology_number ) AS 'process_id',
- c.technology_number as layer,
- c.layers_number as total_layer,
- d.glass_child,
- o.product_name,
- o.price,
- o.remarks,
- o.building_number,
- round( d.area * c.quantity, 4 ) as 'area',
- c.order_number,
- d.icon,
- op.project_name,
- 0 as patch_state
- FROM
- pp.flow_card c
- LEFT JOIN sd.order_detail o ON c.order_id = o.order_id
- AND c.order_number = o.order_number
- LEFT JOIN sd.order_glass_detail d ON c.order_id = d.order_id
- AND c.order_number = d.order_number
- AND c.technology_number = d.technology_number
- INNER JOIN pp.optimize_project AS op ON op.project_no = c.project_no
- WHERE
- c.project_no IS NOT NULL
- and c.project_no = #{projectNo}
- ORDER BY
- c.process_id,
- c.order_number
+ (SELECT
+ c.project_no,
+ d.child_width as 'width',
+ d.child_height as 'height',
+ c.quantity,
+ o.shape,
+ concat( c.process_id, '-', c.technology_number ) AS 'process_id',
+ c.process_id AS 'process_ids',
+ c.technology_number as layer,
+ c.layers_number as total_layer,
+ d.glass_child,
+ o.product_name,
+ o.price,
+ o.remarks,
+ o.building_number,
+ round( d.area * c.quantity, 4 ) as 'area',
+ c.order_number,
+ d.icon,
+ op.project_name,
+ 0 as patch_state,
+ a.id as rackNo
+ FROM
+ pp.flow_card c
+ LEFT JOIN sd.order_detail o ON c.order_id = o.order_id
+ AND c.order_number = o.order_number
+ LEFT JOIN sd.order_glass_detail d ON c.order_id = d.order_id
+ AND c.order_number = d.order_number
+ AND c.technology_number = d.technology_number
+ INNER JOIN pp.optimize_project AS op ON op.project_no = c.project_no
+ left join
+ (select (@row_number := @row_number + 1) as id,process_id as process_id,technology_number as technology_number from (select process_id,technology_number from pp.flow_card tt where project_no =#{projectNo} group by process_id,technology_number) tt,(select @row_number := 0) as t) a
+ on a.process_id=c.process_id and a.technology_number=c.technology_number
+ WHERE
+ c.project_no IS NOT NULL
+ and c.project_no = #{projectNo}
+ ORDER BY
+ a.id,
+ c.process_id,
+ c.order_number
) union
(
SELECT
@@ -137,6 +143,7 @@
c.patch_num as quantity,
o.shape,
concat( c.process_id, '-', c.technology_number ) AS 'process_id',
+ c.process_id AS 'process_ids',
c.technology_number as layer,
fc.layers_number as total_layer,
d.glass_child,
@@ -148,7 +155,8 @@
c.order_sort as order_number,
d.icon,
op.project_name,
- 1 as patch_state
+ 1 as patch_state,
+ a.id as rackNo
FROM
pp.patch_log c
LEFT JOIN sd.order_detail o ON c.order_id = o.order_id
@@ -158,10 +166,14 @@
AND c.technology_number = d.technology_number
INNER JOIN pp.optimize_project AS op ON op.project_no = c.project_no
LEFT JOIN pp.flow_card fc ON c.process_id = fc.process_id and fc.technology_number=c.technology_number
+ left join
+ (select (@row_number := @row_number + 1) as id,process_id as process_id,technology_number as technology_number from (select process_id,technology_number from pp.flow_card tt where project_no =#{projectNo} group by process_id,technology_number) tt,(select @row_number := 0) as t) a
+ on a.process_id=c.process_id and a.technology_number=c.technology_number
WHERE
c.project_no IS NOT NULL
and c.project_no = #{projectNo}
ORDER BY
+ a.id,
c.process_id,
c.order_sort)
</select>
@@ -171,7 +183,7 @@
<select id="analogComputationOptimization">
SELECT
h.project_no,
- h.layout_id,
+ h.layout_id as rackNo,
h.width AS width,
h.height AS height,
count( 1 ) AS quantity,
@@ -225,6 +237,57 @@
ORDER BY
LENGTH( h.layout_id ),
h.layout_id;
+ </select>
+
+
+ <select id="getOptimizeDetail">
+ SELECT
+ h.project_no,
+ h.heat_layout_id as rackNo,
+ h.o_width AS width,
+ h.o_height AS height,
+ (h.height-h.o_height)/2 as shortGrind1,
+ (h.height-h.o_height)/2 as shortGrind2,
+ (h.width-h.o_width)/2 as longGrind2,
+ (h.width-h.o_width)/2 as longGrind1,
+ count( 1 ) AS quantity,
+ o.shape,
+ concat( h.process_id, '-', h.layer ) AS 'process_id',
+ h.process_id as process_ids,
+ h.layer,
+ h.total_layer as total_layer,
+ d.glass_child,
+ o.product_name,
+ o.price,
+ o.remarks,
+ o.building_number,
+ round( d.area * count( 1 ), 4 ) AS 'area',
+ c.order_number,
+ d.icon,
+ o.price,
+ h.patch_state
+ from
+ pp.`optimize_detail` h
+ LEFT JOIN pp.flow_card c ON h.process_id = c.process_id
+ AND h.layer = c.technology_number
+ AND h.order_sort = c.order_number
+ LEFT JOIN sd.order_detail o ON c.order_id = o.order_id
+ AND c.order_number = o.order_number
+ LEFT JOIN sd.order_glass_detail d ON c.order_id = d.order_id
+ AND c.order_number = d.order_number
+ AND c.technology_number = d.technology_number
+ WHERE
+ h.project_no =#{projectNo}
+ GROUP BY
+ h.project_no,
+ h.heat_layout_id,
+ h.width,
+ h.height,
+ h.process_id,
+ h.layer,
+ c.order_number
+ ORDER BY
+ h.heat_layout_id;
</select>
<!--宸ョ▼淇℃伅娴佺▼鍗�-->
@@ -482,7 +545,7 @@
鏁伴噺 as quantity,
褰㈢姸 as shape,
椤圭洰 as project,
- 鍗曠墖鍚嶇О as glass_child,
+ 浜у搧鍚嶇О as glass_child,
闈㈢Н as area,
GlassType as glassType,
patch_state
@@ -498,7 +561,7 @@
鏁伴噺 as quantity,
褰㈢姸 as shape,
椤圭洰 as project,
- 鍗曠墖鍚嶇О as glass_child,
+ 浜у搧鍚嶇О as glass_child,
闈㈢Н as area,
GlassType as glassType,
patch_state
@@ -514,7 +577,7 @@
鏁伴噺 as quantity,
褰㈢姸 as shape,
椤圭洰 as project,
- 鍗曠墖鍚嶇О as glass_child,
+ 浜у搧鍚嶇О as glass_child,
闈㈢Н as area,
GlassType as glassType,
patch_state
@@ -664,7 +727,8 @@
p.remark,
a.name,
p.create_time,
- p.update_time
+ p.update_time,
+ p.optimize_state
FROM
(
pp.optimize_project p
@@ -1063,8 +1127,8 @@
#{glass.orderSort},
#{glass.stockSort},
#{glass.polySort},
- #{glass.realwidth},
- #{glass.realheight},
+ #{glass.realWidth},
+ #{glass.realHeight},
#{glass.width},
#{glass.height},
#{glass.x},
@@ -1219,7 +1283,7 @@
JSON_EXTRACT( oc.config_detail, '$.load_length' ) as load_length,
JSON_EXTRACT( oc.config_detail, '$.x_space' ) as x_space,
JSON_EXTRACT( oc.config_detail, '$.y_space' ) as y_space
- from pp.optimize_admin oa left join pp.optimize_config oc on oa.h_id=oc.id where name='admin'
+ from pp.optimize_admin oa where config_type=1 and creater=#{username}
</select>
<select id="getEdgeTrimming">
@@ -1229,7 +1293,7 @@
JSON_EXTRACT( oc.config_detail, '$.down_trim' ) as downTrim,
JSON_EXTRACT( oc.config_detail, '$.auto_fill_trim' ) as autoFillTrim,
JSON_EXTRACT( oc.config_detail, '$.quick_trim' ) as quickTrim
- from pp.optimize_config oc where config_type=5
+ from pp.optimize_config oc where config_type=5 and creater=#{username}
</select>
<select id="getGrindingTrimming">
@@ -1240,12 +1304,12 @@
JSON_EXTRACT( oc.config_detail, '$.auto_fill_edge' ) as autoFillEdge,
JSON_EXTRACT( oc.config_detail, '$.quick_edge' ) as quickEdge,
JSON_EXTRACT( oc.config_detail, '$.min_auto_lenght' ) as minAutoLenght
- from pp.optimize_config oc where config_type=4
+ from pp.optimize_config oc where config_type=4 and creater=#{username}
</select>
<update id="updateOptimizeConfig">
UPDATE pp.optimize_config set config_detail=#{json},create_time=now()
- where config_type=#{type}
+ where config_type=#{type} and creater=#{username}
</update>
<select id="simulatedTypesettingUsingOpt">
@@ -1297,7 +1361,7 @@
鏁伴噺 as quantity,
褰㈢姸 as shape,
椤圭洰 as project,
- 鍗曠墖鍚嶇О as glass_child,
+ 浜у搧鍚嶇О as glass_child,
闈㈢Н as area,
GlassType as glassType,
patch_state
--
Gitblit v1.8.0