From 5e01ac69c7fa9a55e691c455986ad20c4f447299 Mon Sep 17 00:00:00 2001
From: 快乐的昕的电脑 <快乐的昕的电脑@DESKTOP-C2BQPQU>
Date: 星期三, 22 十月 2025 15:45:27 +0800
Subject: [PATCH] 逻辑优化

---
 Services/MesInvItemBarcodesManager.cs |   50 ++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 42 insertions(+), 8 deletions(-)

diff --git a/Services/MesInvItemBarcodesManager.cs b/Services/MesInvItemBarcodesManager.cs
index ab3cc5d..66f895b 100644
--- a/Services/MesInvItemBarcodesManager.cs
+++ b/Services/MesInvItemBarcodesManager.cs
@@ -290,6 +290,10 @@
 
         if (womdaa == null) throw new Exception("宸ュ崟鍗曞彿涓嶅瓨鍦�");
 
+        if (womdaa.Daa018 != "寮�宸�") throw new Exception("宸ュ崟鏈紑宸�");
+
+        var okQty = query.currentCjNum - query.initCjNum - query.bf;//鑹搧鏁伴噺
+
         // 鍒涘缓鎶ュ伐璁板綍
         var mesReporting = new MesReporting
         {
@@ -300,12 +304,42 @@
             // BgPerson = strings[0],
             AddressCode = womdaa.AddressCode,
             MachineNo = womdaa.MachineNo,
-            BfQty = query.bf,
-            // OkQty = print,
+            BfQty = query.bf,//涓嶈壇鏁伴噺
+            OkQty = okQty,//鑹搧鏁伴噺
+            CsQty = query.initCjNum,//鍒濆閲囬泦鏁�
+            CjQty = query.currentCjNum,//鎶ュ伐鏃堕噰闆嗘暟
             ItemNo = womdaa.Daa002,
             BillNo = womdaa.Daa001,
             BgPerson = query.staffNo // 鏂板锛氭姤宸ヤ汉缂栧彿
         };
+
+        // 鏇存柊宸ュ崟Daa011涓哄師鍊煎姞涓婃湰娆¤壇鍝佹暟閲忥紝Daa012涓哄師鍊煎姞涓婃湰娆′笉鑹搧鏁伴噺
+        Db.Updateable<Womdaa>()
+            .SetColumns(x => x.Daa011 == (womdaa.Daa011 ?? 0) + (okQty ?? 0))
+            .SetColumns(x => x.Daa012 == (womdaa.Daa012 ?? 0) + (query.bf ?? 0))
+            .Where(x => x.Daa001 == womdaa.Daa001)
+            .ExecuteCommand();
+
+        // 鍒ゆ柇鏄惁鍏ㄩ儴瀹屽伐锛岃嫢鏄垯鍐欏叆瀹為檯瀹屽伐鏃ユ湡
+        var womdaaAfter = Db.Queryable<Womdaa>()
+            .Where(s => s.Daa001 == query.orderNo)
+            .First();
+        if (womdaaAfter != null && womdaaAfter.Daa011 >= womdaaAfter.Daa008)
+        {
+            var finishTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
+            Db.Updateable<Womdaa>()
+                .SetColumns(x => x.Daa017 == DateTime.Parse(finishTime))
+                .SetColumns(x => x.Daa018 == "瀹屽伐")
+                .Where(x => x.Daa001 == womdaaAfter.Daa001)
+                .ExecuteCommand();
+
+            // 鍚屾鏇存柊MES_ORDER_STA鐨凟ND_TIME
+            Db.Updateable<object>()
+                .AS("MES_ORDER_STA")
+                .SetColumns("END_TIME", finishTime)
+                .Where($"ORDER_NO = '{womdaaAfter.Daa001}'")
+                .ExecuteCommand();
+        }
 
         // 鎻掑叆鎶ュ伐璁板綍鍜屾潯鐮佽褰�
         return Db.Insertable(mesReporting)
@@ -326,7 +360,7 @@
         var s1 = DateTime.Now.ToString("yyyy-MM-dd");
 
         // 鑾峰彇鏁伴噰鏁版嵁
-        var CjQty = Db.Queryable<MesNumerical>()
+        var CjQty = Db.Queryable<MesNumericalBycl>()
             .Where(s =>
                 s.MachineNo == mesReporting.MachineNo && s.EditDate == s1)
             .OrderByDescending(s => s.CjTiem)
@@ -362,12 +396,12 @@
 
         // 鏇存柊鎶ュ伐璁板綍
         Db.Updateable<MesReporting>()
-            .SetColumns(a => a.BlQty == BlQty.ToString())
-            .SetColumns(a => a.CsQty == anchors.InitialValue.ToString())
-            .SetColumns(a => a.JtQty == jt.ToString())
+            .SetColumns(a => a.BlQty == BlQty)
+            .SetColumns(a => a.CsQty == (anchors.InitialValue ?? 0))
+            .SetColumns(a => a.JtQty == jt)
             // .SetColumns(a => a.BfQty == bfQty)
-            .SetColumns(a => a.CjQty == ljcj.ToString())
-            .SetColumns(a => a.DyQty == DyQty.ToString())
+            .SetColumns(a => a.CjQty == ljcj)
+            .SetColumns(a => a.DyQty == DyQty)
             .Where(a => a.ItemNoCade == mesReporting.ItemNoCade)
             .ExecuteCommand();
     }

--
Gitblit v1.9.3