From 6ec432ea8db5aa36c7cc50f90a7e02676950a22f Mon Sep 17 00:00:00 2001
From: wxw <Administrator@DESKTOP-5BIMHQ3>
Date: 星期一, 14 七月 2025 17:21:16 +0800
Subject: [PATCH] 修改问题

---
 Wms/WMS.BLL/HttpServer.cs |   51 +++++++++++++++++++++++++++++++++------------------
 1 files changed, 33 insertions(+), 18 deletions(-)

diff --git a/Wms/WMS.BLL/HttpServer.cs b/Wms/WMS.BLL/HttpServer.cs
index 55e1e9a..8672d8e 100644
--- a/Wms/WMS.BLL/HttpServer.cs
+++ b/Wms/WMS.BLL/HttpServer.cs
@@ -1763,9 +1763,9 @@
                     {
                         throw new Exception("鍌ㄤ綅鎹熷潖涓嶈兘鍑哄簱");
                     }
-                    if (locate.WareHouseNo != "W02")
+                    if (locate.WareHouseNo != "W02" && locate.WareHouseNo != "W04")
                     {
-                        throw new Exception("鎵樼洏涓嶅湪璐ф灦搴撲笂");
+                        throw new Exception("鎵樼洏涓嶅湪璐ф灦搴撲笂涔熶笉鍦ㄥ钩搴�");
                     }
                     var locateEnd = Db.Queryable<SysStorageLocat>().First(m => m.LocatNo == outModeLocate && m.IsDel == "0");//褰撳墠鍑哄簱鐨勭洰鏍囧偍浣嶄俊鎭�
                     if (locateEnd == null)
@@ -1778,11 +1778,16 @@
                         if (logEnd != null && logEnd.PalletNo != palletNo)
                         {
                             throw new Exception("鐩爣鍌ㄤ綅鐘舵�佷笉鏄┖鍌ㄤ綅");
-                        }                       
+                        }
+                        var detailEnd = Db.Queryable<DataStockDetail>().First(w => w.IsDel == "0" && w.LocatNo == locateEnd.LocatNo);
+                        if (detailEnd != null && detailEnd.PalletNo != palletNo)
+                        {
+                            throw new Exception("鐩爣鍌ㄤ綅鐘舵�佷笉鏄┖鍌ㄤ綅");
+                        }
                     }
                     #endregion
 
-                    if (locate.Status == "1") //鏈夌墿鍝�
+                    if (locate.WareHouseNo == "W02" && locate.Status == "1") //鏈夌墿鍝�
                     {
                         #region 娣诲姞鍑哄簱浠诲姟
 
@@ -1861,9 +1866,9 @@
                         Db.Updateable(item).ExecuteCommand();
 
                         #endregion
-                        
+
                     }
-                    else if (locate.Status == "3") //鍑哄簱涓�
+                    else if (locate.Status == "3" || locate.WareHouseNo == "W04") //鍑哄簱涓垨宸插湪骞冲簱
                     {
                         #region 鏀瑰彉鏁版嵁
                         //鍒ゆ柇鏄惁鏄凡缁忓嚭杩囧簱鍙堝洖搴擄紙鐘舵�佷负寰呮嫞璐х殑 1锛�
@@ -1887,21 +1892,31 @@
                                 }
                             }
                         }
-                        var taskNo = Db.Queryable<LogTask>().First(m => m.OrderType == "1" && m.TaskNo != item.TaskNo && m.Status == "1" && m.PalletNo == item.PalletNo);
-                        if (taskNo == null)
+                        if (locate.WareHouseNo == "W04")
                         {
-                            taskNo = logTaskList.FirstOrDefault(m => m.PalletNo == item.PalletNo);//褰撳墠鏈夊悓鎵樼洏涓嶅悓鐗╂枡鍑哄簱
+                            item.TaskNo = "";
+                            item.Status = "2"; // 鍑哄簱鍒嗛厤淇℃伅鐘舵�佹敼涓烘鍦ㄦ墽琛� 
+                            item.OutMode = item.OutMode;//鍑哄簱鍙�
+                            //item.UnstackingMode = unstackingMode2;//鎷嗗灈妯″紡
+                            Db.Updateable(item).ExecuteCommand();
                         }
-                        if (taskNo == null)
+                        else
                         {
-                            throw new Exception($"鎵樼洏鍙凤細{item.PalletNo},鍑哄簱寮傚父");
-                        }
-                        item.TaskNo = taskNo.TaskNo;
-                        item.Status = "1"; // 鍑哄簱鍒嗛厤淇℃伅鐘舵�佹敼涓烘鍦ㄦ墽琛� 
-                        item.OutMode = item.OutMode;//鍑哄簱鍙�
-                        //item.UnstackingMode = unstackingMode2;//鎷嗗灈妯″紡
-                        Db.Updateable(item).ExecuteCommand();
-                        
+                            var taskNo = Db.Queryable<LogTask>().First(m => m.OrderType == "1" && m.TaskNo != item.TaskNo && m.Status == "1" && m.PalletNo == item.PalletNo);
+                            if (taskNo == null)
+                            {
+                                taskNo = logTaskList.FirstOrDefault(m => m.PalletNo == item.PalletNo);//褰撳墠鏈夊悓鎵樼洏涓嶅悓鐗╂枡鍑哄簱
+                            }
+                            if (taskNo == null)
+                            {
+                                throw new Exception($"鎵樼洏鍙凤細{item.PalletNo},鍑哄簱寮傚父");
+                            }
+                            item.TaskNo = taskNo.TaskNo;
+                            item.Status = "1"; // 鍑哄簱鍒嗛厤淇℃伅鐘舵�佹敼涓烘鍦ㄦ墽琛� 
+                            item.OutMode = item.OutMode;//鍑哄簱鍙�
+                            //item.UnstackingMode = unstackingMode2;//鎷嗗灈妯″紡
+                            Db.Updateable(item).ExecuteCommand();
+                        }                     
                         #endregion
                     }
                     else if (locate.Status == "5") //绉诲嚭涓�

--
Gitblit v1.8.0