From 130fe64dd3eb0617ddc1f38afcd07656d56db27c Mon Sep 17 00:00:00 2001
From: guoyujie <guoyujie@ng.com>
Date: 星期五, 12 十二月 2025 08:41:23 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/ERP_override
---
north-glass-erp/src/main/resources/mapper/mm/FinishedOperateLog.xml | 71 +++++++++++++++++++++++++++++------
1 files changed, 58 insertions(+), 13 deletions(-)
diff --git a/north-glass-erp/src/main/resources/mapper/mm/FinishedOperateLog.xml b/north-glass-erp/src/main/resources/mapper/mm/FinishedOperateLog.xml
index 4b0a927..5fb149d 100644
--- a/north-glass-erp/src/main/resources/mapper/mm/FinishedOperateLog.xml
+++ b/north-glass-erp/src/main/resources/mapper/mm/FinishedOperateLog.xml
@@ -36,6 +36,7 @@
<result column="project" property="order.project"/>
<result column="customer_name" property="order.customerName"/>
<result column="customer_Id" property="order.customerId"/>
+ <result column="order_type" property="order.orderType"/>
</resultMap>
@@ -63,10 +64,23 @@
fol.money,
o.customer_name,
o.project,
- od.price
+ od.price,
+ CASE
+ WHEN #{type} = '鍏ュ簱' THEN
+ if(fgi.quantity_available>fol.quantity,fol.quantity,fgi.quantity_available)
+ ELSE
+ 0
+ END AS quantity_available,
+ CASE
+ WHEN #{type} = '鍏ュ簱' THEN
+ if(fgi.quantity_available>fol.quantity,fol.quantity,fgi.quantity_available)
+ ELSE
+ 0
+ END AS cancelAvailable
from (select *
from mm.finished_operate_log aa where aa.operate_type = #{type} and aa.status!='宸蹭綔搴�') fol
left join sd.order_detail od on fol.order_id = od.order_id and fol.operation_number = od.order_number
+ left join mm.finished_goods_inventory fgi on fgi.order_id = fol.order_id and fol.operation_number = fgi.order_number and fgi.box_no=fol.remarks
left join sd.`order` o on o.order_id=fol.order_id
<where>
date(fol.operate_time)>=#{startDate} and date(fol.operate_time) <= #{endDate}
@@ -134,16 +148,20 @@
and o.project regexp #{finishedOperateLog.order.project}
</if>
</where>
+ group by fol.order_id,fol.operation_number,fol.remarks
order by fol.operate_time desc
limit #{offset},#{pageSize};
</select>
<select id="getSelectStorageRecordLogPageTotal">
- select CEILING(count(fol.id)/#{pageSize}) as 'pageTotal',
- count(fol.id) as 'total'
+ select
+ CEILING(count(zu.id)/#{pageSize}) as 'pageTotal',
+ count(zu.id) as 'total' from (
+ select fol.id
from (select *
from mm.finished_operate_log aa where aa.operate_type = #{type} and aa.status!='宸蹭綔搴�') fol
left join sd.order_detail od on fol.order_id = od.order_id and fol.operation_number = od.order_number
+ left join mm.finished_goods_inventory fgi on fgi.order_id = fol.order_id and fol.operation_number = fgi.order_number and fgi.box_no=fol.remarks
left join sd.`order` o on o.order_id=fol.order_id
<where>
date(fol.operate_time)>=#{startDate} and date(fol.operate_time) <= #{endDate}
@@ -211,7 +229,9 @@
and o.project regexp #{finishedOperateLog.order.project}
</if>
</where>
+ group by fol.order_id,fol.operation_number,fol.remarks
order by fol.`status` desc
+ ) as zu
</select>
<update id="updateToExamine">
@@ -220,6 +240,11 @@
<update id="updateFinishedOperateLogState">
update mm.finished_operate_log set status=#{type} where id=#{finishedOperateLog.id};
+ </update>
+
+ <update id="updateFinishedOperateLogQuantity">
+ update mm.finished_operate_log set quantity=quantity-#{finishedOperateLog.cancelAvailable},
+ area=area-#{deliveryDetailArea},money=money-#{deliveryDetailMoney} where id=#{finishedOperateLog.id};
</update>
<select id="getSelectOperateRecord" resultMap="selectFinishedGoodsInventory">
@@ -483,7 +508,8 @@
fol.money,
o.customer_name,
o.project,
- od.price
+ od.price,
+ o.order_type
from (select *
from mm.finished_operate_log aa where aa.status!='宸蹭綔搴�') fol
left join sd.order_detail od on fol.order_id = od.order_id and fol.operation_number = od.order_number
@@ -552,6 +578,9 @@
</if>
<if test="finishedOperateLog.orderDetail!=null and finishedOperateLog.orderDetail.price != null and finishedOperateLog.orderDetail.price != ''">
and od.price regexp #{finishedOperateLog.orderDetail.price}
+ </if>
+ <if test="finishedOperateLog.order !=null and (finishedOperateLog.order.orderType != null and finishedOperateLog.order.orderType != '')">
+ and o.order_type regexp #{finishedOperateLog.order.orderType}
</if>
</where>
order by fol.`status` desc
@@ -630,6 +659,9 @@
<if test="finishedOperateLog.orderDetail!=null and finishedOperateLog.orderDetail.price != null and finishedOperateLog.orderDetail.price != ''">
and od.price regexp #{finishedOperateLog.orderDetail.price}
</if>
+ <if test="finishedOperateLog.order !=null and (finishedOperateLog.order.orderType != null and finishedOperateLog.order.orderType != '')">
+ and o.order_type regexp #{finishedOperateLog.order.orderType}
+ </if>
</where>
</select>
@@ -658,7 +690,8 @@
status,
remarks,
money,
- area
+ area,
+ compute_area
)
values (
#{oddNumber} ,#{flowCard.order.orderId},#{flowCard.processId},#{flowCard.orderNumber},"鍏ュ簱",#{userName},
@@ -669,7 +702,7 @@
<if test="createTime == null">
now()
</if>
- ,"鏈鏍�",#{container},#{deliveryDetailMoney},#{deliveryDetailArea}
+ ,"鏈鏍�",#{container},#{deliveryDetailMoney},#{deliveryDetailArea},#{getComputeArea}
)
</insert>
@@ -772,7 +805,8 @@
fol.money,
o.customer_name,
o.project,
- od.price
+ od.price,
+ o.order_type
from (select *
from mm.finished_operate_log aa where aa.status!='宸蹭綔搴�') fol
left join sd.order_detail od on fol.order_id = od.order_id and fol.operation_number = od.order_number
@@ -790,16 +824,21 @@
operator,
quantity,
operate_time,
- status
+ status,
+ area,
+ compute_area,
+ remarks,
+ money
)
values (
- #{oddNumber} ,#{orderDetail.orderId},"",#{orderDetail.orderNumber},"鍏ュ簱",#{userName},#{orderDetail.quantity},now(),"鏈鏍�"
+ #{oddNumber} ,#{orderDetail.orderId},#{processId},#{orderDetail.orderNumber},"鍏ュ簱",#{userName},#{orderDetail.quantity},now(),"鏈鏍�",
+ #{orderDetail.computeGrossArea},#{orderDetail.computeArea},"",#{orderDetail.grossAmount}
)
</insert>
- <delete id="updateOrderFinishedOperateLog" >
+ <update id="updateOrderFinishedOperateLog" >
update mm.finished_operate_log set status="宸蹭綔搴�" where order_id=#{orderDetail.orderId} and operation_number=#{orderDetail.orderNumber} and operate_type="鍏ュ簱";
- </delete>
+ </update>
<select id="getSelectStorageRecordPint" resultMap="selectFinishedGoodsInventory">
select fol.id,
@@ -947,7 +986,8 @@
o.batch,
fol.remarks,
SUM(fol.quantity) as quantity,
- ROUND( sum(od.width * od.height * fol.quantity) / 1000000, 2 ) as area,
+ /*ROUND( sum(od.width * od.height * fol.quantity) / 1000000, 2 ) as area,*/
+ fol.area as area,
ROUND( sum(od.width * od.height * fol.quantity*p.total_thickness*2.5) / 1000000, 2 ) as weight,
fol.process_id,
aaa.teams_groups_name,
@@ -1000,7 +1040,8 @@
sum(fol.quantity) as quantity,
od.product_name,
od.product_id,
- ROUND(sum(od.width * od.height * fol.quantity / 1000000) , 2 ) as area,
+ /*ROUND(sum(od.width * od.height * fol.quantity / 1000000) , 2 ) as area,*/
+ ROUND(sum(fol.compute_area * fol.quantity) , 2 ) as area,
ROUND(sum(od.width * od.height * fol.quantity / 1000000) , 2 )*#{thickness}*2.5 as weight
FROM
( SELECT * FROM mm.finished_operate_log aa WHERE aa.operate_type = '鍏ュ簱' AND aa.STATUS != '宸蹭綔搴�' ) fol
@@ -1060,4 +1101,8 @@
left join sd.`order` o on o.order_id=fol.order_id
where fol.operation_order_number=#{deliveryId}
</select>
+
+
+
+
</mapper>
\ No newline at end of file
--
Gitblit v1.8.0