From f147cfa91feec613eb304c78fecafdf43286034a Mon Sep 17 00:00:00 2001
From: Administrator <Administrator@DESKTOP-5BIMHQ3>
Date: 星期六, 30 三月 2024 11:12:24 +0800
Subject: [PATCH] Merge branch 'wxw'

---
 Wms/WMS.BLL/BllCheckServer/StockCheckServer.cs |   56 +++++++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 45 insertions(+), 11 deletions(-)

diff --git a/Wms/WMS.BLL/BllCheckServer/StockCheckServer.cs b/Wms/WMS.BLL/BllCheckServer/StockCheckServer.cs
index 4875522..3e4ae44 100644
--- a/Wms/WMS.BLL/BllCheckServer/StockCheckServer.cs
+++ b/Wms/WMS.BLL/BllCheckServer/StockCheckServer.cs
@@ -200,7 +200,7 @@
                     LotNo = m.LotNo,
                     LotText = m.LotText,
                     SupplierLot = m.SupplierLot,
-                    Qty = (int)m.Qty,
+                    Qty = (decimal)m.Qty,
 
                     PalletNo = m.PalletNo
                 }).ToList();
@@ -641,7 +641,7 @@
                                     BoxNo2 = l.BoxNo2,
                                     BoxNo3 = l.BoxNo3,
                                     PalletNo = l.PalletNo,
-                                    Qty = (int)l.RealQty,
+                                    Qty = (decimal)l.RealQty,
                                     FullQty = stockBoxInfo.FullQty,//婊$鏁伴噺
                                     Status = "2",
                                     SkuNo = l.SkuNo,
@@ -658,12 +658,12 @@
                                 };
                                 Db.Insertable<DataBoxInfo>(databox).ExecuteCommand();
                                 //搴撳瓨鏄庣粏澧炲姞鏁伴噺
-                                stockDetailInfo.Qty += (int)l.RealQty;
+                                stockDetailInfo.Qty += l.RealQty;
                             }
                             else
                             {
                                 //搴撳瓨鏄庣粏澧炲姞鏁伴噺
-                                stockDetailInfo.Qty = (int)l.RealQty;
+                                stockDetailInfo.Qty = l.RealQty;
                             }
                             stockDetailInfo.Status = "0";
 
@@ -676,11 +676,11 @@
                             }
                             if (sku.Type != "4")
                             {
-                                de.Qty += (int)l.RealQty;
+                                de.Qty += (decimal)l.RealQty;
                             }
                             else
                             {
-                                de.Qty += (int)(l.RealQty - l.Qty);
+                                de.Qty += (decimal)(l.RealQty - l.Qty);
                             }
 
                             Db.Updateable(de).ExecuteCommand();
@@ -1327,21 +1327,47 @@
                 // 鏇存敼褰撳墠浠诲姟涓殑鍌ㄤ綅鐘舵�侊紙鏀逛负0绌哄偍浣嶏級
                 locate.Status = "0"; 
                 Db.Updateable(locate).ExecuteCommand();
+
+                //鐩爣鍌ㄤ綅淇℃伅
+                var endLocate = Db.Queryable<SysStorageLocat>().First(m => m.LocatNo == task.EndLocat);
+                if (endLocate != null)
+                {
+                    if (endLocate.Status != "0")
+                    {
+                        throw new Exception("鐩爣鍌ㄤ綅鐘舵�侀潪绌哄偍浣�");
+                    }
+                }
                 //鏇存敼搴撳瓨鏄庣粏
                 foreach (var item in stockDetail)
                 {
                     item.Status = "0";//寰呭垎閰�
                     item.LockQty = 0;//閿佸畾鏁伴噺鏀逛负0
-                    item.LocatNo = "";//鍌ㄤ綅鏇存敼锛堟敼涓虹┖锛�
-                    item.WareHouseNo = "";//鎵�灞炰粨搴撴洿鏀癸紙鏀逛负绌猴級
-                    item.RoadwayNo = "";//鎵�灞炲贩閬撴洿鏀癸紙鏀逛负绌猴級
-                    item.AreaNo = "";//鎵�灞炲尯鍩熸洿鏀癸紙鏀逛负绌猴級
+                    if (endLocate != null)//鏈夌洰鏍囧偍浣嶈鏄庣Щ鍒板叾浠栧尯鍩熷偍浣�
+                    {
+                        item.LocatNo = endLocate.LocatNo;//鍌ㄤ綅鏇存敼
+                        item.WareHouseNo = endLocate.WareHouseNo;//鎵�灞炰粨搴撴洿鏀�
+                        item.RoadwayNo = endLocate.RoadwayNo;//鎵�灞炲贩閬撴洿鏀�
+                        item.AreaNo = endLocate.AreaNo;//鎵�灞炲尯鍩熸洿鏀�
+                    }
+                    else//娌℃湁鐩爣鍌ㄤ綅璇存槑绉诲埌鍏ュ簱鍙�
+                    {
+                        item.LocatNo = "";//鍌ㄤ綅鏇存敼锛堟敼涓虹┖锛�
+                        item.WareHouseNo = "";//鎵�灞炰粨搴撴洿鏀癸紙鏀逛负绌猴級
+                        item.RoadwayNo = "";//鎵�灞炲贩閬撴洿鏀癸紙鏀逛负绌猴級
+                        item.AreaNo = "";//鎵�灞炲尯鍩熸洿鏀癸紙鏀逛负绌猴級
+                    }                   
                     Db.Updateable(item).ExecuteCommand();
 
                     //鏇存敼搴撳瓨鎬昏〃
                     var stock = Db.Queryable<DataStock>().First(w => w.IsDel == "0" && w.SkuNo == item.SkuNo && w.LotNo == item.LotNo);
                     stock.LockQty -= (decimal)item.Qty;
                     Db.Updateable(stock).ExecuteCommand();
+                }
+                if (endLocate != null)
+                {
+                    //鏇存敼鐩爣鍌ㄤ綅鐘舵��
+                    endLocate.Status = "1";//鏈夌墿鍝�
+                    Db.Updateable(endLocate).ExecuteCommand();
                 }
 
                 if (userId != 0)
@@ -1527,7 +1553,7 @@
                 task.CancelDate = DateTime.Now;
                 Db.Updateable(task).ExecuteCommand();
 
-                //淇敼鍌ㄤ綅淇℃伅
+                //淇敼璧峰鍌ㄤ綅淇℃伅
                 var locat = Db.Queryable<SysStorageLocat>().First(a => a.IsDel == "0" && a.WareHouseNo == "W02" && a.LocatNo == task.StartLocat);
                 if (locat == null)
                 {
@@ -1536,6 +1562,14 @@
                 locat.Status = "1"; //鏈夌墿鍝�
                 Db.Updateable(locat).ExecuteCommand();
 
+                //淇敼鐩爣鍌ㄤ綅淇℃伅
+                var locatEnd = Db.Queryable<SysStorageLocat>().First(a => a.IsDel == "0" && a.WareHouseNo == "W02" && a.LocatNo == task.EndLocat);
+                if (locatEnd != null)
+                {
+                    locatEnd.Status = "0"; //绌哄偍浣�
+                    Db.Updateable(locatEnd).ExecuteCommand();
+                }                
+
                 //淇敼搴撳瓨鏄庣粏
                 var stockDetail = Db.Queryable<DataStockDetail>().First(w => w.IsDel == "0" && w.PalletNo == task.PalletNo);
                 if (stockDetail == null)

--
Gitblit v1.8.0