From 554886463a4cb4a2d5c042f08e85d2dfcd6e9dcf Mon Sep 17 00:00:00 2001
From: chenlu <1320612696@qq.com>
Date: 星期五, 12 十二月 2025 10:02:22 +0800
Subject: [PATCH] 修改义乌合片流程卡配置

---
 north-glass-erp/src/main/resources/mapper/sd/BomDataMapper.xml |   72 ++++++++++++++++++++++++++++++++++-
 1 files changed, 69 insertions(+), 3 deletions(-)

diff --git a/north-glass-erp/src/main/resources/mapper/sd/BomDataMapper.xml b/north-glass-erp/src/main/resources/mapper/sd/BomDataMapper.xml
index ef9f0b5..86f0d35 100644
--- a/north-glass-erp/src/main/resources/mapper/sd/BomDataMapper.xml
+++ b/north-glass-erp/src/main/resources/mapper/sd/BomDataMapper.xml
@@ -6,9 +6,9 @@
 
     <insert id="saveMaterialBomDataMp">
         insert into sd.bom_base
-            (material_id, material, status, type, consume, price,create_time)
+            (material_id, material, status, type, consume, price,unit,create_time)
         values
-            (#{id}, #{name}, 0, #{type}, #{consume},#{price}, now())
+            (#{id}, #{name}, 0, #{type}, #{consume},#{price}, #{unit},now())
     </insert>
 
     <select id="getMaterialId">
@@ -17,7 +17,7 @@
 
     <update id="updateMaterialBomDataMp">
         update sd.bom_base
-        set type=#{type},consume=#{consume},price=#{price},create_time=now()
+        set type=#{type},consume=#{consume},price=#{price},unit=#{unit},create_time=now()
         where material_id = #{id}
     </update>
 
@@ -26,4 +26,70 @@
                 (product_id,base_id,product_layer)
         values (#{produceId},#{tabId},#{layer})
     </insert>
+
+    <select id="getOrderBomDataMp">
+        SELECT  product_id,product_name,SUM(quantity) as quantity,
+            SUM(gross_area) as area,SUM(perimeter) as perimeter,order_id from sd.order_detail where order_id=#{orderId}
+            GROUP BY product_id
+    </select>
+
+    <select id="getBOMDetails">
+        select bp.*,bb.*,(consume*price) as materialPric,od.quantity from sd.bom_product as bp
+            left join sd.bom_base as bb on bb.id=bp.base_id
+            left join ( select order_id,product_id,SUM(quantity) as quantity from sd.order_detail GROUP BY  order_id,product_id
+        ) as od on od.product_id = bp.product_id
+        where bp.product_id = #{productId} and od.order_id = #{orderId} ORDER BY product_layer
+    </select>
+
+    <select id="getOrderBomSumDataMp">
+        SELECT  product_id,product_name,SUM(quantity) as quantity,SUM(gross_area) as area,SUM(perimeter) as perimeter
+        from sd.order_detail where order_id=#{orderId}
+    </select>
+
+    <select id="getOrderBomsumDataDatilsMp">
+        SELECT
+            od.order_id,
+            bp.product_id,
+            bb.material_id,
+            bb.material,
+            bb.`status`,
+            bb.type,
+            sum(bb.consume) as consume,
+            sum(bb.price) as price,
+            sum(bb.consume * bb.price) AS materialPrice,
+            od.quantity
+        FROM
+            sd.bom_product AS bp
+                LEFT JOIN sd.bom_base AS bb ON bb.id = bp.base_id
+                LEFT JOIN (
+                select order_id,product_id,SUM(quantity) as quantity from sd.order_detail GROUP BY  order_id,product_id
+            ) as od on od.product_id = bp.product_id
+
+        WHERE od.order_id=#{orderId}
+        GROUP BY bb.material_id
+        ORDER BY bp.product_layer
+    </select>
+
+    <select id="getEditProductBOMSv">
+        SELECT
+            bp.product_layer,
+            bb.material_id,
+            bb.material,
+            JSON_UNQUOTE(
+                    JSON_EXTRACT( ms.json, '$.thickness' )) AS thickness,
+            JSON_UNQUOTE(
+                    JSON_EXTRACT( ms.json, '$.width' )) AS width,
+            JSON_UNQUOTE(
+                    JSON_EXTRACT( ms.json, '$.height' )) AS height,
+            JSON_UNQUOTE(
+                    JSON_EXTRACT( ms.json, '$.unit' )) AS unit,
+            bb.consume,
+            bb.price
+        FROM
+            bom_product AS bp
+                LEFT JOIN bom_base AS bb ON bb.id = bp.base_id
+                LEFT JOIN mm.material_store AS ms ON ms.id = bb.material_id
+        WHERE
+            bp.product_id = #{produceId}
+    </select>
 </mapper>
\ No newline at end of file

--
Gitblit v1.8.0