From 1b86f1120560fbfcad792606064a9bef15d42827 Mon Sep 17 00:00:00 2001
From: bklLiudl <673013083@qq.com>
Date: 星期一, 02 九月 2024 08:24:34 +0800
Subject: [PATCH] Merge branch 'master' into Liudl

---
 Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs |   55 ++++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 42 insertions(+), 13 deletions(-)

diff --git a/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs b/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs
index de3e6a4..4c54ba8 100644
--- a/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs
+++ b/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs
@@ -86,7 +86,7 @@
         {
             if (type == "1")//骞冲簱鍑哄簱鑾峰彇鍗曟嵁
             {
-                var allotList = await Db.Queryable<BllExportAllot>().Where(m => m.IsDel == "0" && m.Status == "1" ).Select(m => m.SONo).Distinct().Where(m => !string.IsNullOrWhiteSpace(m)).ToListAsync();
+                var allotList = await Db.Queryable<BllExportAllot>().Where(m => m.IsDel == "0" && (m.Status == "1" || m.Status =="0")).Select(m => m.SONo).Distinct().Where(m => !string.IsNullOrWhiteSpace(m)).ToListAsync();
                 return allotList;
             }
             //鑾峰彇鐘舵�佷负寰呮嫞璐ф垨鑰呴儴鍒嗘嫞璐х殑鍑哄簱鍗�
@@ -978,6 +978,7 @@
             catch (Exception e)
             {
                 Db.RollbackTran();
+                throw e;
             }
         }
 
@@ -1193,18 +1194,34 @@
         //鑾峰彇骞冲簱鎵樼洏淇℃伅
         public async Task<List<BoxInfo>> GetPingKuInfoByPallet(string soNo, string palletNo)
         {
-            var info = Db.Queryable<BllExportAllot>().Where(m => m.SONo == soNo && m.PalletNo == palletNo && m.IsDel == "0");
+
+            var info = Db.Queryable<BllExportAllot>()
+                .LeftJoin<DataStockDetail>((a, b) => a.PalletNo == b.PalletNo)
+                .Where(a=>a.IsDel == "0" && (a.Status == "0"||a.Status =="1") && a.SONo == soNo)
+                .GroupBy((a,b) => new { a.SkuNo, a.SkuName, a.LotNo, a.PalletNo,b.LocatNo }).Select((a,b) => new BoxInfo()
+                {
+                    PalletNo = a.PalletNo,
+                    SkuNo = a.SkuNo,
+                    SkuName = a.SkuName,
+                    LotNo = a.LotNo,
+                    LocatNo =  b.LocatNo
+                }).ToListAsync();
+            var data = await info;
+
+            /*var a = info.First().LocatNo;
+                
             if (await info.CountAsync() == 0)
             {
                 throw Oops.Bah("鏈煡璇㈠埌鎵樼洏鍒嗛厤涓嬪彂鐨勪俊鎭�");
             }
 
-            var data = await info.GroupBy(m => new { m.SkuNo, m.SkuName, m.LotNo }).Select(m => new BoxInfo()
+            var data = await info.GroupBy(a => new { a.SkuNo, a.SkuName, a.LotNo,a.PalletNo }).Select(a => new BoxInfo()
             {
-                SkuNo = m.SkuNo,
-                SkuName = m.SkuName,
-                LotNo = m.LotNo
-            }).ToListAsync();
+                PalletNo = a.PalletNo,
+                SkuNo = a.SkuNo,
+                SkuName = a.SkuName,
+                LotNo = a.LotNo
+            }).ToListAsync();*/
 
             return data;
         }
@@ -1346,6 +1363,7 @@
             catch (Exception e)
             {
                 Db.RollbackTran();
+                throw e;
             }
         }
 
@@ -1403,7 +1421,8 @@
         }
 
         //鍙栨牱鍑哄簱鎷h揣(鏍囩)
-        public async Task SampleSoSetPick(string soType, string soNo, string soDetailId, string palletNo, string boxNo, string boxNo3, string pickQty1, string asnNo, int userId)
+        public async Task SampleSoSetPick(string soType, string soNo, string soDetailId, string palletNo, string boxNo, string boxNo3, 
+            string pickQty1, string asnNo, int userId)
         {
             Db.BeginTran();
             try
@@ -2043,6 +2062,7 @@
             catch (Exception e)
             {
                 Db.RollbackTran();
+                throw e;
             }
         }
 
@@ -2515,6 +2535,7 @@
             catch (Exception e)
             {
                 Db.RollbackTran();
+                throw e;
             }
         }
 
@@ -3050,6 +3071,7 @@
             catch (Exception e)
             {
                 Db.RollbackTran();
+                throw e;
             }
         }
         /// <summary>
@@ -3363,6 +3385,7 @@
             catch (Exception e)
             {
                 Db.RollbackTran();
+                throw e;
             }
         }
         #endregion
@@ -3407,7 +3430,7 @@
             var samplingQty = await Db.Queryable<BllSamplingDetails>().Where(m => m.IsDel == "0" && m.QcNo == qcNo).SumAsync(m => m.CompleteQty);
 
             data.QcNo = qcNo;
-            data.Sku = inspectionRequest.SkuNo;
+            data.Sku = inspectionRequest.SkuNo + "-" + inspectionRequest.SkuName;
             data.LotNo = inspectionRequest.LotNo;
             data.Qty = inspectionRequest.SamplingQty.ToString();
             data.SamplingQty = samplingQty == null ? "0" : samplingQty.ToString();
@@ -3873,6 +3896,7 @@
             catch (Exception e)
             {
                 Db.RollbackTran();
+                throw e;
             }
         }
 
@@ -3917,14 +3941,20 @@
                     throw Oops.Bah("璇烽獙鍗曠姸鎬侀敊璇紝璇锋牳瀹�");
                 }
                 //搴撳瓨鏄庣粏淇℃伅
-                var stockDetail = await Db.Queryable<DataStockDetail>().FirstAsync(m => m.IsDel == "0" && m.PalletNo == palletNo && m.SkuNo == inspecd.SkuNo && m.LotNo == inspecd.LotNo);
+                var stockDetail = await Db.Queryable<DataStockDetail>().FirstAsync(m => m.IsDel == "0" && m.PalletNo == palletNo 
+                && m.SkuNo == inspecd.SkuNo && m.LotNo == inspecd.LotNo);
                 if (stockDetail == null)
                 {
                     throw Oops.Bah("鏈湪搴撳瓨涓煡璇㈠嚭褰撳墠鎵樼洏淇℃伅");
                 }
+                // 鍒ゆ柇鎵樼洏鏄惁鍦ㄥ簱鍐�
                 if (!string.IsNullOrWhiteSpace(stockDetail.LocatNo))
                 {
-                    throw Oops.Bah("褰撳墠鎵樼洏涓嶆槸搴撳鎵樼洏锛岃鏍稿疄");
+                    var wareHouseData = await Db.Queryable<SysWareHouse>().FirstAsync(m => m.IsDel == "0" && m.WareHouseNo == stockDetail.WareHouseNo);
+                    if (wareHouseData.Type != "2") 
+                    {
+                        throw Oops.Bah("褰撳墠鎵樼洏涓嶆槸搴撳鎵樼洏锛岃鏍稿疄");
+                    }
                 }
                 //搴撳瓨鎬昏〃
                 var stock = await Db.Queryable<DataStock>().FirstAsync(m => m.IsDel == "0" && m.SkuNo == inspecd.SkuNo && m.LotNo == inspecd.LotNo);
@@ -4051,8 +4081,6 @@
                 await Db.Updateable(inspecd).ExecuteCommandAsync();
                 #endregion
 
-
-
                 //娣诲姞鎿嶄綔鏃ュ織璁板綍
                 var k = new OperationSOServer().AddLogOperationSo("PDA妯″潡", "鍙栨牱鎷h揣", qcNo, "鎷h揣", $"鍦≒DA涓婂璇烽獙鍗曞彿涓猴細{qcNo}鐨勬墭鐩樼爜涓猴細{palletNo}鐨勬嫞璐ф搷浣�", userId);
                 Db.CommitTran();
@@ -4060,6 +4088,7 @@
             catch (Exception e)
             {
                 Db.RollbackTran();
+                throw e;
             }
         }
 

--
Gitblit v1.8.0