From 810818b52ac65bd701c9582571be23ded5aea776 Mon Sep 17 00:00:00 2001
From: 快乐的昕的电脑 <快乐的昕的电脑@DESKTOP-C2BQPQU>
Date: 星期四, 23 十月 2025 14:30:06 +0800
Subject: [PATCH] 不合格后重送检逻辑_2

---
 Services/MesInvItemBarcodesManager.cs |   34 +++++++++++++++++++++++++++++++++-
 1 files changed, 33 insertions(+), 1 deletions(-)

diff --git a/Services/MesInvItemBarcodesManager.cs b/Services/MesInvItemBarcodesManager.cs
index 5389405..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
         {
@@ -301,7 +305,7 @@
             AddressCode = womdaa.AddressCode,
             MachineNo = womdaa.MachineNo,
             BfQty = query.bf,//涓嶈壇鏁伴噺
-            OkQty = query.currentCjNum - query.initCjNum - query.bf,//鑹搧鏁伴噺
+            OkQty = okQty,//鑹搧鏁伴噺
             CsQty = query.initCjNum,//鍒濆閲囬泦鏁�
             CjQty = query.currentCjNum,//鎶ュ伐鏃堕噰闆嗘暟
             ItemNo = womdaa.Daa002,
@@ -309,6 +313,34 @@
             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)
             .IgnoreColumns(true).ExecuteCommand() > 0;

--
Gitblit v1.9.3