From 096ccbee5905d5119e57a929fc19f49f9d5b6618 Mon Sep 17 00:00:00 2001
From: wxw <Administrator@DESKTOP-5BIMHQ3>
Date: 星期六, 22 十一月 2025 08:35:44 +0800
Subject: [PATCH] 修改自动分配排除线边库

---
 Wms/WMS.BLL/BllPdaServer/PdaCrServer.cs |   29 ++++++++++++++++++-----------
 1 files changed, 18 insertions(+), 11 deletions(-)

diff --git a/Wms/WMS.BLL/BllPdaServer/PdaCrServer.cs b/Wms/WMS.BLL/BllPdaServer/PdaCrServer.cs
index 00f9118..47e0c36 100644
--- a/Wms/WMS.BLL/BllPdaServer/PdaCrServer.cs
+++ b/Wms/WMS.BLL/BllPdaServer/PdaCrServer.cs
@@ -422,30 +422,37 @@
         /// <param name="palletNo">鎵樼洏鍙�</param> 
         /// <param name="boxNo">绠辩爜</param> 
         /// <returns></returns>
-        public async Task<List<StockDetailWithQtyDto>> GetStockQueryList(string locatNo, string palletNo, string boxNo)
+        public List<StockDetailWithQtyDto> GetStockQueryList(string locatNo, string palletNo, string boxNo)
         {
-            string dataSql = "";
+            string dataSql = "", whereStr = "";
 
             if (string.IsNullOrWhiteSpace(boxNo))
             {
-                dataSql = $@"select SkuName,SkuNo,LotNo,sum(isnull(Qty,0)) as Qty,sum(isnull(LockQty,0)) as LockQty,sum(isnull(LockQty,0)) as FrozenQty
+                whereStr = string.IsNullOrWhiteSpace(locatNo) ? "1=1" : $@"LocatNo='{locatNo}'";
+
+                dataSql = $@"select SkuName,SkuNo,LotNo,LocatNo,PalletNo,sum(isnull(Qty,0)) as Qty,sum(isnull(LockQty,0)) as LockQty,sum(isnull(LockQty,0)) as FrozenQty
 	from DataStockDetail
-	where IsDel='0' and (PalletNo='{palletNo}' or LocatNo='{locatNo}')
-	group by SkuName,SkuNo,LotNo
+	where IsDel='0' and PalletNo='{palletNo}' and {whereStr}
+	group by SkuName,SkuNo,LotNo,LocatNo,PalletNo
 	order by SkuNo,LotNo";
             }
             else
             {
-                dataSql = $@"select SkuName,SkuNo,LotNo,sum(isnull(Qty,0)) as Qty,0 as LockQty,0 as FrozenQty
-	from DataBoxInfo
-	where IsDel='0' and BoxNo='{boxNo}' and PalletNo='{palletNo}'
-	group by SkuName,SkuNo,LotNo
-	order by SkuNo,LotNo";
+                whereStr = string.IsNullOrWhiteSpace(palletNo) ? "1=1" : $@"a.PalletNo='{palletNo}'";
+
+                dataSql = $@"select a.SkuName,a.SkuNo,a.LotNo,b.LocatNo,a.PalletNo,sum(isnull(a.Qty,0)) as Qty,0 as LockQty,0 as FrozenQty
+	from DataBoxInfo a
+	left join DataStockDetail b on b.Id=a.StockDetailId
+	where a.IsDel='0' and a.BoxNo='{boxNo}' and {whereStr}
+	group by a.SkuName,a.SkuNo,a.LotNo,b.LocatNo,a.PalletNo
+	order by a.SkuNo,a.LotNo";
             }
-            DataTable dataDt = await Db.Ado.GetDataTableAsync(dataSql);
+            DataTable dataDt = Db.Ado.GetDataTable(dataSql);
 
             var result = dataDt.Rows.Cast<DataRow>().Select(e => new StockDetailWithQtyDto
             {
+                LocatNo = e["LocatNo"] + "",
+                PalletNo = e["PalletNo"] + "",
                 SkuNo = e["SkuNo"] + "",
                 SkuName = e["SkuName"] + "",
                 LotNo = e["LotNo"] + "",

--
Gitblit v1.8.0