From 6f635c9b0fa09deef3ee579981add6f182be4e0f Mon Sep 17 00:00:00 2001
From: 南骏 池 <chiffly@163.com>
Date: 星期二, 11 二月 2025 08:52:49 +0800
Subject: [PATCH] 1.生产退补料后台优化

---
 service/Warehouse/MesItemBlManager.cs |   21 +++++++++++++++------
 1 files changed, 15 insertions(+), 6 deletions(-)

diff --git a/service/Warehouse/MesItemBlManager.cs b/service/Warehouse/MesItemBlManager.cs
index 0349e88..a80a2a2 100644
--- a/service/Warehouse/MesItemBlManager.cs
+++ b/service/Warehouse/MesItemBlManager.cs
@@ -94,7 +94,7 @@
             throw new Exception("鐢ㄦ埛鍚嶄笉鑳戒负绌猴紒");
 
         if (string.IsNullOrEmpty(query.blNo))
-            throw new Exception("琛ユ枡鍗曞彿涓嶈兘涓虹┖锛�");
+            throw new Exception("鐢宠鍗曞彿涓嶈兘涓虹┖锛�");
 
 
         // 妫�楠屾槸鍚﹂噸澶嶆壂鎻�
@@ -185,9 +185,17 @@
         // 寮�鍚簨鍔″鐞�
         var success = UseTransaction(db =>
         {
+            var outNoType = "";
+            if(query.Type == "鐢熶骇琛ユ枡")
+            {
+                outNoType = "BL(宸ュ崟琛ユ枡)";
+            }else 
+            {
+                outNoType = "CL(宸ュ崟瓒呴)";
+            }
             // 鑾峰彇鎴栧垱寤哄嚭搴撳崟
             var outId = Guid.NewGuid();
-            var outNo = BillNo.GetBillNo("BL(宸ュ崟琛ユ枡)");
+            var outNo = BillNo.GetBillNo(outNoType);
 
             var existingOut = db.Queryable<MesInvItemOuts>()
                 .Where(a => a.BbillNo == query.blNo
@@ -221,7 +229,7 @@
                     Remark = mesItemBl.Bl007,
                     DepotCode = womdab.Dab017,
                     OutPart = womdaa.Daa013,
-                    OutType = "鐢熶骇琛ユ枡",
+                    OutType = query.Type,
                     FType = 0,
                     Factory = stockBarcode.Factory,
                     Company = stockBarcode.Company,
@@ -237,7 +245,7 @@
             // 妫�鏌ュ苟鏇存柊鍑哄簱鍗曠墿鏂欐槑缁�
             var itemCount = db.Queryable<MesInvItemOutItems>()
                 .Where(i =>
-                    i.ItemOutId == outId && i.ItemId == stockBarcode.ItemId && i.ItemOutId == outId)
+                    i.ItemOutId == outId && i.ItemId == stockBarcode.ItemId && i.ItemOutId == outId && i.DepotId == stockBarcode.DepotsId.ToString())
                 .Count();
 
             if (itemCount > 0)
@@ -246,7 +254,7 @@
                     .SetColumns(i =>
                         i.TlQty == i.TlQty + stockBarcode.Quantity)
                     .Where(i =>
-                        i.ItemOutId == outId && i.ItemId == stockBarcode.ItemId && i.ItemOutId == outId)
+                        i.ItemOutId == outId && i.ItemId == stockBarcode.ItemId && i.ItemOutId == outId && i.DepotId == stockBarcode.DepotsId.ToString())
                     .ExecuteCommand();
             else
                 // 鎻掑叆鏂扮殑鐗╂枡鏄庣粏璁板綍
@@ -271,7 +279,8 @@
                     ErpId = womdab.Eid,
                     ErpAutoid = womdab.Erpid,
                     PbillNo = query.billNo,
-                    ItemId = blDetail.Bld012
+                    ItemId = blDetail.Bld012,
+                    DepotId = stockBarcode.DepotsId.ToString(),
                     // Unit = blDetail.Bld009,
                     // DepotId = (int)stockBarcode.DepotsId
                 }).IgnoreColumns(true).ExecuteCommand();

--
Gitblit v1.9.3