From ce06fcc3113dc45647910deef0e4adeaa97bfa3f Mon Sep 17 00:00:00 2001
From: 廖井涛 <2265517004@qq.com>
Date: 星期三, 15 十月 2025 13:32:40 +0800
Subject: [PATCH] 语言修改
---
north-glass-erp/src/main/resources/mapper/pp/GlassOptimize.xml | 203 +++++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 172 insertions(+), 31 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 2a1f455..5e9e4e8 100644
--- a/north-glass-erp/src/main/resources/mapper/pp/GlassOptimize.xml
+++ b/north-glass-erp/src/main/resources/mapper/pp/GlassOptimize.xml
@@ -473,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,
@@ -570,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,
@@ -767,11 +767,11 @@
`p`.`frist_stock_qty` AS `Amount of original glass usage 1`,
concat(`p`.`frist_cut_pct`, ' %') AS `Average cutting rate 1`,
`p`.`remark` AS `Notes`,
- `a`.`name` AS `Creator`,
+ `u`.`user_name` AS `Creator`,
`p`.`create_time` AS `Create time`,
`p`.`update_time` AS `Modify time`
from pp.optimize_project as p
- left join pp.optimize_admin as a on p.creater = a.Id
+ left join erp_user_info.user as u on p.creater = u.login_name
where (`p`.`state` > 0)
# and (tempering_state>0 or optimize_state>0)
and DATE (`p`.`create_time`) BETWEEN #{startSelectTime} AND #{endSelectTime}
@@ -1108,14 +1108,14 @@
<update id="updateProjectMp">
update pp.optimize_project set project_name=#{projectNmae},glass_total=#{sumQuantity},glass_total_area= #{sumArea},
- type=#{type},process_qty=#{processIdCount},process_cards=#{processId} where project_no=#{projectId}
+ type=#{type},process_qty=#{processIdCount},process_cards=#{processId},creater = #{userName} where project_no=#{projectId}
</update>
<insert id="addProjectMp">
insert into pp.optimize_project (project_no, project_name, order_glass_type, order_glass_thickness,glass_type, glass_thickness,
- glass_total,glass_total_area,type,state,process_qty,process_cards)
+ glass_total,glass_total_area,type,state,process_qty,process_cards,creater )
values (#{projectId}, #{projectNmae}, #{glassType}, #{glassThickness}, #{glassType}, #{glassThickness},#{sumQuantity}, #{sumArea},
- #{type},1,#{processIdCount},#{processId})
+ #{type},1,#{processIdCount},#{processId},#{userName})
</insert>
@@ -1365,8 +1365,8 @@
#{projectId},
#{glass.stockCode},
1,
- #{glass.width},
- #{glass.height},
+ #{glass.width}+#{glass.leftTrim}+#{glass.rightTrim},
+ #{glass.height}+#{glass.downTrim}+#{glass.upTrim},
#{glass.count},
#{glass.count},
1,
@@ -1413,7 +1413,7 @@
thickness
) VALUES (
#{processId},
- 1,
+ #{stockId},
#{detail.width},
#{detail.height},
#{detail.x},
@@ -1523,10 +1523,20 @@
<update id="updateNormalDetails">
UPDATE pp.optimize_detail
SET
+ glass_point = #{detail.glassPoint},
x_axis = #{detail.x},
y_axis = #{detail.y}
WHERE
project_no = #{processId} AND polys_id = #{detail.polySort}
+ </update>
+ <update id="updateProjectOptimize">
+ update pp.optimize_project as p
+ set p.optimize_state = #{states},
+ p.avg_cut_pct = #{optimalResults.avgCutRate},
+ p.valid_cut_pct = #{optimalResults.validCutRate},
+ p.last_cut_pct = #{optimalResults.lastCutRate},
+ p.raw_stock_qty = #{optimalResults.totalQuantity}
+ where p.project_no = #{projectId}
</update>
<select id="simulatedTypesettingUsingOpt">
@@ -1711,7 +1721,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
@@ -1776,7 +1789,11 @@
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 and LOCATE('#', pd.separation ),
+ REPLACE(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,
@@ -1815,6 +1832,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>
@@ -1878,27 +1896,40 @@
</select>
<select id="getOptimizeDetailsInfo" resultType="java.util.Map">
SELECT
- 0 As isRemain,
- width AS realWidth,
- height AS realHeight,
- p_width AS width,
- p_height AS height,
- process_id AS processId,
- layer,
- total_layer AS totalLayer,
- order_sort As orderSort,
- stock_id AS layoutId,
- stock_number AS glassSort,
- x_axis AS x,
- y_axis AS y,
- mark_icon AS markIcon,
- isRotate,
- glass_point AS glassPoint,
- rack_no As rackNo
+ 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
+ pp.optimize_detail od
+ LEFT JOIN pp.flow_card fc on (od.process_id = fc.process_id and od.layer = fc.technology_number and od.order_sort = fc.order_number )
+ LEFT JOIN sd.order_glass_detail ogd ON (fc.order_id = ogd.order_id and od.order_sort = ogd.order_number)
+ 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 and od.order_sort = ord.order_number)
+ LEFT JOIN pp.optimize_heat_detail h ON (h.process_id = fc.process_id and od.order_sort = h.sort)
WHERE
- project_no = #{projectId}
+ od.project_no = #{projectId}
</select>
<select id="getOptimizeOffsetsInfo" resultType="java.util.Map">
SELECT
@@ -1918,6 +1949,116 @@
WHERE
project_no = #{projectId}
</select>
+ <select id="getReportDataProcessIdSv" resultType="java.util.Map" parameterType="java.lang.String">
+ SELECT
+ op.project_no as projectId,
+ op.glass_total as rectangleQuantity,
+ '0' as otherShapeQuantity,
+ op.glass_total_area as rectangleArea,
+ '0' as otherShapeArea,
+ '0' as otherShapePerimeter
+ FROM
+ pp.optimize_project as op
+ WHERE
+ op.project_no = #{processId}
+ </select>
+ <select id="getPeriMeterDataSv" resultType="java.util.Map" parameterType="java.lang.String">
+ SELECT
+ od.id,
+ od.project_no,
+ od.p_width,
+ od.p_height,
+ (od.p_width + od.p_height)*2 AS perimeter
+ FROM
+ pp.optimize_detail as od
+ WHERE
+ od.project_no = #{processId}
+ </select>
+ <select id="getMaterialInfoSv" resultType="java.util.Map" parameterType="java.lang.String">
+ SELECT
+ ou.raw_stock_code AS code,
+ ou.use_count AS quantity,
+ ou.width,
+ ou.height,
+ ou.width*ou.height*ou.use_count/1000000.0 as useArea
+ FROM
+ pp.optimize_use ou
+ WHERE
+ ou.project_no = #{processId} and ou.state=1
+ </select>
+ <select id="getProductListSv" resultType="java.util.Map" parameterType="java.lang.String">
+
+ </select>
+ <select id="selectProjectList" resultType="java.util.Map" parameterType="java.lang.String">
+ ( SELECT
+ c.project_no,
+ c.quantity AS quantity,
+ d.child_width AS width,
+ d.child_height AS height,
+ concat( c.process_id, '-', c.technology_number ) AS processCard,
+ round( d.area * c.quantity, 4 ) AS Area,
+ c.order_number
+ 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
+ WHERE
+ c.project_no IS NOT NULL
+ AND c.project_no = #{processId}
+
+ ORDER BY
+ c.process_id,
+ c.order_number
+ ) UNION
+ (
+ SELECT
+ c.project_no,
+ c.patch_num AS quantity,
+ d.child_width AS width,
+ d.child_height AS height,
+ concat( c.process_id, '-', c.technology_number ) AS processCard,
+ round( d.area * c.patch_num, 4 ) AS Area,
+ c.order_sort
+ FROM
+ pp.patch_log c
+ LEFT JOIN sd.order_glass_detail d ON c.order_id = d.order_id
+ AND c.order_sort = d.order_number
+ AND c.technology_number = d.technology_number
+ WHERE
+ c.project_no IS NOT NULL
+ AND c.project_no = #{processId}
+
+ ORDER BY
+ c.process_id,
+ c.order_sort)
+ </select>
+ <select id="materialOptimizeUse" resultType="java.util.Map">
+ select ou.raw_stock_code AS id,
+ ou.use_count AS processingQuantity,
+ ou.width,
+ ou.height,
+ ou.left_trim as leftTrim,
+ ou.down_trim as downTrim,
+ ou.up_trim as upTrim,
+ ou.right_trim as rightTrim,
+ JSON_UNQUOTE(JSON_EXTRACT(ms.json, '$.thickness')) AS thickness,
+ JSON_UNQUOTE(JSON_EXTRACT(ms.json, '$.name')) AS name,
+ JSON_UNQUOTE(JSON_EXTRACT(ms.json, '$.model')) AS model
+ from pp.optimize_use ou
+ left join mm.material_store ms on ou.raw_stock_code=ms.id where project_no=#{projectNumber} and state=1
+ </select>
+ <select id="getLayoutSetSv" resultType="java.util.Map">
+ SELECT
+ project_no,
+ width,height,
+ usage_rate,
+ stock_code
+ FROM
+ pp.optimize_layout
+ WHERE
+ project_no = #{processId}
+ </select>
</mapper>
\ No newline at end of file
--
Gitblit v1.8.0