From 2be1922b035c182c3c516427aa68be54badd6938 Mon Sep 17 00:00:00 2001
From: IPC-610 <IPC-610@DESKTOP-6LEOOS3>
Date: 星期四, 26 九月 2024 15:15:52 +0800
Subject: [PATCH] 登录页修改

---
 Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs |   72 +++++++++++++++++++++++-------------
 1 files changed, 46 insertions(+), 26 deletions(-)

diff --git a/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs b/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs
index 78c8489..b506589 100644
--- a/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs
+++ b/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs
@@ -68,7 +68,7 @@
                     throw new Exception("鎵樼洏鐮佷负绌猴紝璇疯緭鍏ユ墭鐩樼爜");
                 }
                 var palletInfo = Db.Queryable<DataStockDetail>().First(w => w.IsDel == "0" && w.PalletNo == palletNo);
-                if (!string.IsNullOrEmpty(palletInfo.WareHouseNo))
+                if (!string.IsNullOrEmpty(palletInfo.WareHouseNo) && type != "1")
                 {
                     throw new Exception("璇ユ墭鐩樿繕鏈嚭搴�");
                 }
@@ -447,7 +447,7 @@
                     {
                         throw new Exception("鎷h揣鏁伴噺涓嶈兘澶т簬绠卞唴鍓╀綑寰呮嫞鏁伴噺");
                     }
-                    var pickQty = 0;//鎷h揣鐨勬暟閲�
+                    decimal pickQty = 0;//鎷h揣鐨勬暟閲�
                     var comDetailList = Db.Queryable<BllCompleteDetail>().Where(m => m.IsDel == "0" && m.ExportAllotId == allot.Id && m.PalletNo == palletNo).ToList();
                     var comList = new List<BllCompleteDetail>();
                     foreach (var item in boxInfos)
@@ -580,7 +580,7 @@
                         {
                             throw new Exception("璇ョ鐮佸唴瀛樺湪鏀爜涓嶈兘杩涜鏁伴噺鎷h揣");
                         }
-                        int boxQty = boxInfo.First().Qty;
+                        decimal boxQty = boxInfo.First().Qty;
                         if (Convert.ToInt32(pickQty1) > boxQty)
                         {
                             throw new Exception("鎷h揣鏁伴噺涓嶈兘澶т簬绠卞唴鏁伴噺");
@@ -616,7 +616,7 @@
                             }
                         }
                     }
-                    var pickQty = 0;//鎷h揣鐨勬暟閲�
+                    decimal pickQty = 0;//鎷h揣鐨勬暟閲�
 
                     var comList = new List<BllCompleteDetail>();
                     foreach (var item in boxInfos)
@@ -639,7 +639,7 @@
                             SkuName = allot.SkuName,
                             Standard = allot.Standard,
                             PalletNo = palletNo,
-                            CompleteQty = biaoShi == "2" ? int.Parse(pickQty1) : item.Qty,
+                            CompleteQty = biaoShi == "2" ? decimal.Parse(pickQty1) : item.Qty,
 
                             CreateUser = userId
                         };
@@ -652,14 +652,14 @@
                         }
                         else//鏁伴噺鎷h揣
                         {
-                            if (int.Parse(pickQty1) == item.Qty)
+                            if (decimal.Parse(pickQty1) == item.Qty)
                             {
                                 //鍒犻櫎搴撳瓨绠辩爜鏄庣粏
                                 Db.Deleteable(item).ExecuteCommand();
                             }
                             else
                             {
-                                item.Qty -= int.Parse(pickQty1);
+                                item.Qty -= decimal.Parse(pickQty1);
                                 item.BitBoxMark = "1";//闆剁鏍囪瘑
                                 Db.Updateable(item).ExecuteCommand();
                             }
@@ -1101,7 +1101,7 @@
                         PalletNo = exTask.PalletNo,//鎵樼洏鍙�
                         StartLocate = exTask.StartLocat, // 璧峰浣嶇疆
                         StartRoadway = locat.RoadwayNo, //鎵�灞炲贩閬�
-                        EndLocate = "", // 鐩爣浣嶇疆 
+                        EndLocate = model.OutMode, // 鐩爣浣嶇疆 
                         TaskNo = exTask.TaskNo, // 浠诲姟鍙�
                         TaskType = "1",// 浠诲姟绫诲瀷 (鍑哄簱)
                         OutMode = model.OutMode,  //鐩爣鍦板潃
@@ -1228,7 +1228,21 @@
 
                 if (result.WareHouseNo != "W02")//W02锛氶浂绠卞簱
                 {
-                    throw new Exception("璇ユ墭鐩樻湭鍦ㄩ浂绠卞簱锛岃妫�鏌�!");
+                    throw new Exception("璇ユ墭鐩樻湭鍦ㄥ钩搴撳唴锛岃妫�鏌�!");
+                }
+
+                #endregion
+
+                #region 楠岃瘉鍌ㄤ綅鐘舵�佹槸鍚︽甯�
+
+                var locat = Db.Queryable<SysStorageLocat>().First(a=>a.IsDel == "0" && a.LocatNo == result.LocatNo);
+                if (locat == null)
+                {
+                    throw new Exception("鏈幏鍙栧埌瀵瑰簲鍌ㄤ綅淇℃伅锛岃妫�鏌�!");
+                }
+                if (locat.Status != "3")
+                {
+                    throw new Exception("褰撳墠鍌ㄤ綅涓嶆槸鍑哄簱涓紝璇锋鏌�!");
                 }
 
                 #endregion
@@ -1284,6 +1298,10 @@
                         item.AreaNo = "";//鎵�灞炲尯鍩熸洿鏀癸紙鏀逛负绌猴級
                         Db.Updateable(item).ExecuteCommand();
                     }
+                    //鍙樻洿鍌ㄤ綅鐘舵��
+                    locat.Status = "0";//鍌ㄤ綅鏇存敼锛堟敼涓虹┖鍌ㄤ綅锛�
+                    Db.Updateable(locat).ExecuteCommand();
+
                     //鍑哄簱娴佹按锛堟洿鏀圭姸鎬侊級
                     var allot = Db.Queryable<BllExportAllot>().Where(m => m.IsDel == "0" && m.Status == "1" && m.PalletNo == palletNo && m.SONo == soNo).ToList();
 
@@ -1596,7 +1614,7 @@
                         {
                             throw new Exception("璇ョ鐮佸唴瀛樺湪鏀爜涓嶈兘杩涜鏁伴噺鎷h揣");
                         }
-                        int boxQty = boxInfo.First().Qty;
+                        decimal boxQty = boxInfo.First().Qty;
                         if (Convert.ToInt32(pickQty1) > boxQty)
                         {
                             throw new Exception("鎷h揣鏁伴噺涓嶈兘澶т簬绠卞唴鏁伴噺");
@@ -1622,7 +1640,7 @@
                             }
                         }
                     }
-                    var pickQty = 0;//鎷h揣鐨勬暟閲�
+                    decimal pickQty = 0;//鎷h揣鐨勬暟閲�
 
                     var comList = new List<BllCompleteDetail>();
                     foreach (var item in boxInfos)
@@ -1649,7 +1667,7 @@
                             SkuName = allot2.SkuName,
                             Standard = allot2.Standard,
                             PalletNo = palletNo,
-                            CompleteQty = biaoShi == "2" ? int.Parse(pickQty1) : item.Qty,
+                            CompleteQty = biaoShi == "2" ? decimal.Parse(pickQty1) : item.Qty,
                             InspectMark = "1",
 
                             CreateUser = userId
@@ -1663,20 +1681,20 @@
                         }
                         else//鏁伴噺鎷h揣
                         {
-                            if (int.Parse(pickQty1) == item.Qty)
+                            if (decimal.Parse(pickQty1) == item.Qty)
                             {
                                 //鍒犻櫎搴撳瓨绠辩爜鏄庣粏
                                 Db.Deleteable(item).ExecuteCommand();
                             }
                             else
                             {
-                                item.Qty -= int.Parse(pickQty1);
+                                item.Qty -= decimal.Parse(pickQty1);
                                 item.BitBoxMark = "1";//闆剁鏍囪瘑
                                 item.InspectMark = "1";//鎶芥绠辨爣璇�
                                 Db.Updateable(item).ExecuteCommand();
                             }
                         }
-                        pickQty += biaoShi == "2" ? int.Parse(pickQty1) : item.Qty;
+                        pickQty += biaoShi == "2" ? decimal.Parse(pickQty1) : item.Qty;
                     }
 
 
@@ -1850,7 +1868,7 @@
                         {
                             throw new Exception("璇ョ鐮佸唴瀛樺湪鏀爜涓嶈兘杩涜鏁伴噺鎷h揣");
                         }
-                        int boxQty = boxInfo.First().Qty;
+                        decimal boxQty = boxInfo.First().Qty;
                         if (Convert.ToInt32(pickQty1) > boxQty)
                         {
                             throw new Exception("鎷h揣鏁伴噺涓嶈兘澶т簬绠卞唴鏁伴噺");
@@ -1885,7 +1903,7 @@
                             }
                         }
                     }
-                    var pickQty = 0;//鎷h揣鐨勬暟閲�
+                    decimal pickQty = 0;//鎷h揣鐨勬暟閲�
 
                     var comList = new List<BllCompleteDetail>();
                     foreach (var item in boxInfos)
@@ -1912,7 +1930,7 @@
                             SkuName = allot.SkuName,
                             Standard = allot.Standard,
                             PalletNo = palletNo,
-                            CompleteQty = biaoShi == "2" ? int.Parse(pickQty1) : item.Qty,
+                            CompleteQty = biaoShi == "2" ? decimal.Parse(pickQty1) : item.Qty,
 
                             CreateUser = userId
                         };
@@ -1925,14 +1943,14 @@
                         }
                         else//鏁伴噺鎷h揣
                         {
-                            if (int.Parse(pickQty1) == item.Qty)
+                            if (decimal.Parse(pickQty1) == item.Qty)
                             {
                                 //鍒犻櫎搴撳瓨绠辩爜鏄庣粏
                                 Db.Deleteable(item).ExecuteCommand();
                             }
                             else
                             {
-                                item.Qty -= int.Parse(pickQty1);
+                                item.Qty -= decimal.Parse(pickQty1);
                                 item.BitBoxMark = "1";//闆剁鏍囪瘑
                                 Db.Updateable(item).ExecuteCommand();
                             }
@@ -2597,7 +2615,7 @@
                 #region 鎷兼墭淇℃伅
                 var sdId = 0;
                 bool isNew = false;
-                var pinStockDetail = Db.Queryable<DataStockDetail>().First(m => m.IsDel == "0" && m.PalletNo == palletNoNew);
+                var pinStockDetail = Db.Queryable<DataStockDetail>().First(m => m.IsDel == "0" && m.PalletNo == palletNoNew && m.SkuNo == allot.SkuNo && m.LotNo == allot.LotNo);
                 if (pinStockDetail != null)
                 {
                     if (palletNo != palletNoNew)//闈炴暣鎵樻嫞璐�
@@ -2674,7 +2692,7 @@
                 }
                 #endregion
 
-                var pickQty = 0;//鎷h揣鐨勬暟閲�
+                decimal pickQty = 0;//鎷h揣鐨勬暟閲�
                 if (string.IsNullOrWhiteSpace(boxNo))//鏁存墭鎷h揣
                 {
                     List<DataBoxInfo> boxInfos;
@@ -2830,7 +2848,7 @@
                         {
                             throw new Exception("璇ョ鐮佸唴瀛樺湪鏀爜涓嶈兘杩涜鏁伴噺鎷h揣");
                         }
-                        int boxQty = boxInfo.First().Qty;
+                        decimal boxQty = boxInfo.First().Qty;
                         if (Convert.ToInt32(pickQty1) > boxQty)
                         {
                             throw new Exception("鎷h揣鏁伴噺涓嶈兘澶т簬绠卞唴鏁伴噺");
@@ -2888,7 +2906,7 @@
                             SkuName = allot.SkuName,
                             Standard = allot.Standard,
                             PalletNo = palletNo,
-                            CompleteQty = biaoShi == "2" ? int.Parse(pickQty1) : item.Qty,
+                            CompleteQty = biaoShi == "2" ? decimal.Parse(pickQty1) : item.Qty,
 
                             CreateUser = userId
                         };
@@ -2920,7 +2938,7 @@
                         }
                         else//鏁伴噺鎷h揣
                         {
-                            if (int.Parse(pickQty1) == item.Qty)
+                            if (decimal.Parse(pickQty1) == item.Qty)
                             {
                                 //淇敼搴撳瓨绠辩爜鏄庣粏
                                 item.StockDetailId = sdId;
@@ -2931,7 +2949,7 @@
                             }
                             else
                             {
-                                item.Qty -= int.Parse(pickQty1);
+                                item.Qty -= decimal.Parse(pickQty1);
                                 item.BitBoxMark = "1";//闆剁鏍囪瘑
                                 Db.Updateable(item).ExecuteCommand();
                             }
@@ -3016,6 +3034,8 @@
                 {
                     sd.Qty = pickQty;
                     sd.LockQty = pickQty;
+
+                    Db.Updateable(sd).ExecuteCommand();
                 }
                 else
                 {

--
Gitblit v1.8.0