From c5ba5ced45cddbe2fb4964dddc620f8fcecce6af Mon Sep 17 00:00:00 2001
From: wxw <Administrator@DESKTOP-5BIMHQ3>
Date: 星期三, 17 九月 2025 17:54:24 +0800
Subject: [PATCH] 修改PDA组托收货功能

---
 Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs |   37 ++++++++++++++++++++++++++-----------
 1 files changed, 26 insertions(+), 11 deletions(-)

diff --git a/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs b/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs
index 657aebb..f854f15 100644
--- a/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs
+++ b/Wms/WMS.BLL/BllPdaServer/PdaAsnServer.cs
@@ -126,11 +126,11 @@
                     throw new Exception("褰撳墠鐗╂枡鍙婃壒娆′笌鍗曟嵁鏃犲叧鑱旓紝璇锋牳瀹�!");
                 }
                 //鍒ゆ柇鎵樼洏鏄惁鍦ㄥ簱澶�
-                var stockDetail = Db.Queryable<DataStockDetail>().First(m => m.IsDel == "0" && m.PalletNo == model.PalletNo);
-                if (stockDetail != null && !string.IsNullOrEmpty(stockDetail.WareHouseNo))
-                {
-                    throw new Exception("璇ユ墭鐩樺凡鏈夊偍浣嶄俊鎭紝涓嶅彲缁勬墭锛岃鏍稿疄锛�");
-                }
+                //var stockDetail = Db.Queryable<DataStockDetail>().First(m => m.IsDel == "0" && m.PalletNo == model.PalletNo);
+                //if (stockDetail != null && !string.IsNullOrEmpty(stockDetail.WareHouseNo))
+                //{
+                //    throw new Exception("璇ユ墭鐩樺凡鏈夊偍浣嶄俊鎭紝涓嶅彲缁勬墭锛岃鏍稿疄锛�");
+                //}
 
                 #endregion
 
@@ -272,13 +272,13 @@
                     }
 
                     // 鍒ゆ柇搴撳瓨鏄庣粏鏄惁宸叉湁姝ゆ墭鐩樹俊鎭�  
-                    var sd1 = Db.Queryable<DataStockDetail>().First(m => m.IsDel == "0" && m.ASNDetailNo == bind.ASNDetailNo && m.PalletNo == model.PalletNo);
+                    var sd1 = Db.Queryable<DataStockDetail>().First(m => m.IsDel == "0" && m.PalletNo == model.PalletNo && m.LotNo == detail.LotNo && m.SkuNo == detail.SkuNo);// && m.ASNDetailNo == bind.ASNDetailNo
                     var sdId1 = 0;
                     if (sd1 != null)
                     {
                         sdId1 = sd1.Id;
                         // 搴撳瓨宸插瓨鍦� 鏇存柊鏁版嵁
-                        sd1.Qty = bind.Qty;
+                        sd1.Qty += bind.Qty;
                         sd1.CompleteTime = comTime;
                         sd1.UpdateUser = userId;
                         sd1.UpdateTime = comTime;
@@ -286,7 +286,7 @@
                         Db.Updateable(sd1).ExecuteCommand();
                     }
                     else
-                    {
+                    {                        
                         // 搴撳瓨涓嶅瓨鍦� 鎻掑叆鏁版嵁
                         sd1 = new DataStockDetail()
                         {
@@ -325,6 +325,14 @@
                             CreateUser = 0,
                             CreateTime = comTime
                         };
+                        var palletData = Db.Queryable<DataStockDetail>().First(w => w.IsDel == "0" && w.PalletNo == sd1.PalletNo && !string.IsNullOrEmpty(w.LocatNo));
+                        if (palletData != null)
+                        {
+                            sd1.WareHouseNo = palletData.WareHouseNo;
+                            sd1.RoadwayNo = palletData.RoadwayNo;
+                            sd1.AreaNo = palletData.AreaNo;
+                            sd1.LocatNo = palletData.LocatNo;
+                        }
 
                         //缁存姢搴撳瓨鏄庣粏璐т富/渚涘簲鍟嗕俊鎭� //0:鎴愬搧鍏ュ簱锛�2:涓棿鍝佸叆搴�,4:杞﹂棿浣欐枡鍏ュ簱,6:浠e偍鍏ュ簱,7:瀵勫瓨鍏ュ簱
                         if (notice.Type == "0" || notice.Type == "2" || notice.Type == "4" || notice.Type == "6" || notice.Type == "7")
@@ -484,6 +492,10 @@
                     }
                     detail.UpdateUser = userId;
                     detail.UpdateTime = comTime;
+                    if (notice.Type == "4" || notice.Type == "8")
+                    {
+                        detail.InspectStatus = "1";//杞﹂棿閫�鏂欓粯璁ゆ楠屽悎鏍�
+                    }
                     //鏇存柊鍏ュ簱鍗曟槑缁�
                     Db.Updateable(detail).ExecuteCommand();
 
@@ -504,7 +516,10 @@
                     #endregion
 
                     #region 搴撳瓨鏄庣粏
-                    sd1.Qty = bind.Qty;
+                    if (sd1.Qty <= 0)
+                    {
+                        sd1.Qty = bind.Qty;
+                    }
                     //鏇存敼搴撳瓨鏄庣粏鏁伴噺
                     Db.Updateable(sd1).Where(m => m.Id == sdId1).ExecuteCommand();
                     #endregion
@@ -1822,7 +1837,7 @@
 
                     }
                 }
-                else if (notice.Type == "1" || notice.Type == "4") //閲囪喘鍏ュ簱
+                else if (notice.Type == "1" || notice.Type == "4" || notice.Type == "8") //閲囪喘鍏ュ簱
                 {
                     string sqlString = $@"SELECT 
                                             ASNNo,
@@ -2726,7 +2741,7 @@
                         ExpirationTime = boxInfoOne.ExpirationTime,
                         Status = "0",
                         InspectMark = boxInfoOne.InspectMark,
-                        InspectStatus = sku.IsInspect,
+                        InspectStatus = "1",//sku.IsInspect,//浠庤溅闂村叆搴撶殑璐ㄦ鐘舵�侀粯璁ゅ悎鏍�
                         BitPalletMark = "1",
                         PackagNo = sku.PackagNo,
 

--
Gitblit v1.8.0