From 48bd9e20aa649145c9bf643e375c0cd86f7bb800 Mon Sep 17 00:00:00 2001
From: guoyujie <guoyujie@ng.com>
Date: 星期四, 04 九月 2025 08:28:52 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/ERP_override
---
north-glass-erp/src/main/resources/mapper/pp/GlassOptimize.xml | 214 ++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 200 insertions(+), 14 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 b8e3b09..ea8cf33 100644
--- a/north-glass-erp/src/main/resources/mapper/pp/GlassOptimize.xml
+++ b/north-glass-erp/src/main/resources/mapper/pp/GlassOptimize.xml
@@ -196,13 +196,22 @@
op.project_name,
0 as patchState,
c.rack AS rackNo,
- 0 as layoutId
+ 0 as heatLayoutId,
+ d.process,
+ o.order_id AS orderNo,
+ o.customer_name AS customerName,
+ o.processing_note AS processingNote,
+ o.project AS projectName,
+ od.product_name AS productName,
+ od.building_number AS buildingNumber
FROM
pp.flow_card c
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 sd.ORDER o ON o.order_id = c.order_id
+ LEFT JOIN order_detail od ON c.order_id = od.order_id
WHERE
c.project_no IS NOT NULL
and c.project_no = #{projectNo}
@@ -226,7 +235,14 @@
op.project_name,
1 as patch_state,
a.id as rackNo,
- 0 as layoutId
+ 0 as heatLayoutId,
+ d.process,
+ o.order_id AS orderNo,
+ o.customer_name AS customerName,
+ o.processing_note AS processingNote,
+ o.project AS projectName,
+ od.product_name AS productName,
+ od.building_number AS buildingNumber
FROM
pp.patch_log c
LEFT JOIN sd.order_glass_detail d ON c.order_id = d.order_id
@@ -234,6 +250,8 @@
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 sd.ORDER o ON o.order_id = c.order_id
+ LEFT JOIN order_detail od ON c.order_id = od.order_id
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
@@ -311,7 +329,7 @@
<select id="computeAndOptimization">
SELECT
c.rack AS rackNo,
- h.layout_id as layoutId,
+ h.layout_id as heatLayoutId,
h.width AS width,
h.height AS height,
count( 1 ) AS quantity,
@@ -323,7 +341,14 @@
c.order_number,
h.order_sort AS orderSort,
d.icon AS markIcon,
- h.patch_state AS patchState
+ h.patch_state AS patchState,
+ d.process,
+ o.order_id AS orderNo,
+ o.customer_name AS customerName,
+ o.processing_note AS processingNote,
+ o.project AS projectName,
+ od.product_name AS productName,
+ od.building_number AS buildingNumber
from
pp.`optimize_heat_detail` h
LEFT JOIN pp.flow_card c ON h.process_id = c.process_id
@@ -332,6 +357,8 @@
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
+ LEFT JOIN sd.order o on o.order_id = c.order_id
+ LEFT JOIN order_detail od on c.order_id = od.order_id
WHERE
h.project_no = #{projectNo}
GROUP BY
@@ -446,7 +473,7 @@
<!--搴撳瓨淇℃伅-->
<select id="materialStoreMp">
SELECT
- i.id AS id,
+ i.material_code AS id,
i.producer AS producer,
i.available_quantity-i.plan_quantity AS available_quantity,
null as processingQuantity,
@@ -543,7 +570,7 @@
<select id="materialStoreOptimizeUse">
- select ms.id AS id,
+ select ou.raw_stock_code AS id,
ou.use_count AS processingQuantity,
ou.width,
ou.height,
@@ -746,7 +773,7 @@
from pp.optimize_project as p
left join pp.optimize_admin as a on p.creater = a.Id
where (`p`.`state` > 0)
- and (tempering_state>0 or optimize_state>0)
+# and (tempering_state>0 or optimize_state>0)
and DATE (`p`.`create_time`) BETWEEN #{startSelectTime} AND #{endSelectTime}
<if test="optimizeProjectMange.projectNumber != null and optimizeProjectMange.projectNumber != ''">
and p.project_no regexp #{optimizeProjectMange.projectNumber}
@@ -1224,14 +1251,16 @@
order_sort,
stock_id,
polys_id,
- o_width,
- o_height,
+ p_width,
+ p_height,
width,
height,
x_axis,
y_axis,
patch_state,
mark_icon,
+ isRotate,
+ glass_point,
rack_no
) VALUES (
#{projectId},
@@ -1249,6 +1278,8 @@
#{glass.y},
#{glass.patchState},
#{glass.markIcon},
+ #{glass.isRotate},
+ #{glass.glassPoint},
#{glass.rackNo}
);
</foreach>
@@ -1279,12 +1310,15 @@
stock_id,
width,
height,
+ realwidth,
+ realheight,
usage_rate,
stock_code,
up_trim,
down_trim,
left_trim,
right_trim,
+ count,
glass_count,
glass_area,
create_time
@@ -1293,13 +1327,16 @@
#{glass.stockId},
#{glass.width},
#{glass.height},
+ #{glass.realWidth},
+ #{glass.realHeight},
#{glass.usageRate},
#{glass.stockCode},
#{glass.upTrim},
#{glass.downTrim},
#{glass.leftTrim},
#{glass.rightTrim},
- #{glass.glassCount},
+ #{glass.count},
+ #{glass.glassQuantity},
#{glass.glassArea},
now()
);
@@ -1341,6 +1378,48 @@
now()
);
</foreach>
+ </insert>
+ <insert id="addOptimizeOffcut">
+ INSERT INTO pp.optimize_offcut (
+ project_no,
+ stock_id,
+ width,
+ height,
+ x_axis,
+ y_axis,
+ model,
+ thickness
+ ) VALUES (
+ #{projectId},
+ #{map.stockSort},
+ #{map.width},
+ #{map.height},
+ #{map.x},
+ #{map.y},
+ #{glassType},
+ #{glassThickness}
+
+ )
+ </insert>
+ <insert id="addUpdateOffcut">
+ INSERT INTO pp.optimize_offcut (
+ project_no,
+ stock_id,
+ width,
+ height,
+ x_axis,
+ y_axis,
+ model,
+ thickness
+ ) VALUES (
+ #{processId},
+ 1,
+ #{detail.width},
+ #{detail.height},
+ #{detail.x},
+ #{detail.y},
+ #{glassType},
+ #{glassThickness})
</insert>
@@ -1440,6 +1519,14 @@
UPDATE pp.flow_card
SET rack = #{rackValue}
WHERE process_id = #{processId} AND technology_number = #{technologyNumber}
+ </update>
+ <update id="updateNormalDetails">
+ UPDATE pp.optimize_detail
+ SET
+ x_axis = #{detail.x},
+ y_axis = #{detail.y}
+ WHERE
+ project_no = #{processId} AND polys_id = #{detail.polySort}
</update>
<select id="simulatedTypesettingUsingOpt">
@@ -1624,7 +1711,10 @@
p.creater = a.Id
)))
WHERE
- ( p.state = 1 ) and p.tempering_state=0 and optimize_state=0 and p.project_no = #{projectNo}
+ ( p.state = 1 ) and
+# p.tempering_state=0 and
+# optimize_state=0 and
+ p.project_no = #{projectNo}
ORDER BY
p.create_time DESC,
p.project_no
@@ -1634,6 +1724,16 @@
<delete id="deleteOptimizeDetailThirdParty">
delete from pp.other_flow_card
where project_no = #{projectNumber}
+ </delete>
+ <delete id="deleteOptimizeOffcut">
+ DELETE
+ FROM
+ pp.optimize_offcut
+ WHERE
+ project_no = #{projectNumber}
+ </delete>
+ <delete id="deleteOffcutDetails">
+ delete from pp.optimize_offcut where project_no = #{processId}
</delete>
@@ -1679,7 +1779,9 @@
opd.glass_id as glassId,
opd.project_no as engineerId,
opd.process_id as flowCardId,
- opd.order_sort as orderNumber,
+ od.order_id as orderNumber,
+ opd.order_sort as productSortNumber,
+ IF(LOCATE('涓┖', ogd.process ) > 0, JSON_UNQUOTE(JSON_EXTRACT(pd.separation, "$.lowE")), 0) as hollowCombineDirection,
opd.o_width as width,
opd.o_height as height,
op.glass_thickness as thickness,
@@ -1718,6 +1820,7 @@
and ogd.technology_number = fc.technology_number
left join pp.optimize_heat_detail ohd on ohd.layout_id = opd.heat_layout_id
and ohd.sort = opd.heat_layout_sort and ohd.project_no=opd.project_no
+ left join sd.product_detail pd on od.product_id=pd.prod_id and opd.layer=pd.glass_sort
where
opd.project_no = #{projectNo}
</select>
@@ -1749,8 +1852,91 @@
where
project_no =#{projectNo}
</select>
-
-
+ <select id="getGlassInfo" resultType="java.util.Map">
+ select
+ project_no,
+ glass_type,
+ glass_thickness
+ from
+ pp.optimize_project
+ where
+ project_no = #{projectId}
+ </select>
+ <select id="getOptimizeLayoutsInfo" resultType="java.util.Map">
+ SELECT
+ width,
+ height,
+ realwidth,
+ realheight,
+ stock_id AS stockId,
+ stock_code AS stockCode,
+ usage_rate AS usageRate,
+ up_trim AS upTrim,
+ down_trim AS downTrim,
+ left_trim AS leftTrim,
+ right_trim AS rightTrim,
+ count AS quantity,
+ glass_count AS glassQuantity
+ FROM
+ pp.optimize_layout
+ where
+ project_no = #{projectId}
+ </select>
+ <select id="getOptimizeDetailsInfo" resultType="java.util.Map">
+ SELECT
+ 0 AS isRemain,
+ od.width AS realWidth,
+ od.height AS realHeight,
+ od.p_width AS width,
+ od.p_height AS height,
+ od.process_id AS processId,
+ od.layer,
+ od.total_layer AS totalLayer,
+ od.order_sort AS orderSort,
+ od.stock_id AS layoutId,
+ od.stock_number AS glassSort,
+ od.x_axis AS x,
+ od.y_axis AS y,
+ od.mark_icon AS markIcon,
+ od.isRotate,
+ od.glass_point AS glassPoint,
+ fc.order_id AS orderNo,
+ ogd.process,
+ o.customer_name AS customerName,
+ o.processing_note AS processingNote,
+ o.project AS projectName,
+ ord.product_name AS productName,
+ ord.building_number AS buildingNumber,
+ COALESCE(h.layout_id, 0) as heatLayoutId,
+ od.rack_no AS rackNo
+ FROM
+ pp.optimize_detail od
+ LEFT JOIN pp.flow_card fc on od.process_id = fc.process_id
+ LEFT JOIN sd.order_glass_detail ogd ON fc.order_id = ogd.order_id
+ LEFT JOIN sd.ORDER o ON o.order_id = fc.order_id
+ LEFT JOIN sd.order_detail ord ON fc.order_id = ord.order_id
+ LEFT JOIN pp.optimize_heat_detail h ON h.process_id = fc.process_id
+ WHERE
+ od.project_no = #{projectId}
+ </select>
+ <select id="getOptimizeOffsetsInfo" resultType="java.util.Map">
+ SELECT
+ 1 AS isRemain,
+ 0 AS isRotate,
+ width AS realWidth,
+ height AS realHeight,
+ width AS width,
+ height AS height,
+ stock_id AS stockSort,
+ x_axis AS x,
+ y_axis AS y,
+ model AS glassType,
+ thickness AS glassThickness
+ FROM
+ pp.optimize_offcut
+ WHERE
+ project_no = #{projectId}
+ </select>
</mapper>
\ No newline at end of file
--
Gitblit v1.8.0