From d9c99e0480b4910cdb134778dd5c314b35ec4cf2 Mon Sep 17 00:00:00 2001
From: dengjunjie <dengjunjie@hnkhzn.com>
Date: 星期一, 29 九月 2025 10:05:23 +0800
Subject: [PATCH] 1

---
 项目代码/WMS/WIDESEA_WMSServer/WIDESEA_StockService/Base/StockViewService.cs |   27 +++++++++++++++++++--------
 1 files changed, 19 insertions(+), 8 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StockService/Base/StockViewService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StockService/Base/StockViewService.cs"
index a248f3c..3501b4d 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StockService/Base/StockViewService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_StockService/Base/StockViewService.cs"
@@ -177,8 +177,11 @@
                 ISugarQueryable<Dt_LocationInfo> sugarQueryable = _dbBase.Queryable<Dt_LocationInfo>();
                 List<Dt_LocationInfo> dt_LocationInfos = sugarQueryable.ToList();
 
-                ISugarQueryable<Dt_StockInfo> sugarQueryable1 = _dbBase.Queryable<Dt_StockInfo>().Where(x => dt_LocationInfos.Select(x => x.LocationCode).ToList().Contains(x.LocationCode)).Includes(x => x.Details);
-                List<Dt_StockInfo> StockInfos = sugarQueryable1.OrderBy(x => x.InDate).ToList();
+                //ISugarQueryable<Dt_StockInfo> sugarQueryable1 = _dbBase.Queryable<Dt_StockInfo>().Where(x => dt_LocationInfos.Select(x => x.LocationCode).ToList().Contains(x.LocationCode)).Includes(x => x.Details);
+                //List<Dt_StockInfo> StockInfos = sugarQueryable1.OrderBy(x => x.InDate).ToList();
+
+                ISugarQueryable<Dt_InventoryInfo> sugarQueryable1 = _dbBase.Queryable<Dt_InventoryInfo>().Where(x => dt_LocationInfos.Select(x => x.LocationCode).ToList().Contains(x.LocationCode));
+                List<Dt_InventoryInfo> StockInfos = sugarQueryable1.OrderBy(x => x.InDate).ToList();
                 foreach (var dt_LocationInfo in dt_LocationInfos)
                 {
                     LocationStockView locationStockView = new LocationStockView()
@@ -195,16 +198,24 @@
                         RoadwayNo = dt_LocationInfo.RoadwayNo,
                         Row = dt_LocationInfo.Row
                     };
-                    List<Dt_StockInfo> dt_StockInfos = StockInfos.Where(x => x.LocationCode == dt_LocationInfo.LocationCode).ToList();
+                    List<Dt_InventoryInfo> dt_StockInfos = StockInfos.Where(x => x.LocationCode == dt_LocationInfo.LocationCode).ToList();
+                    //List<Dt_StockInfoDetail> Details = new List<Dt_StockInfoDetail>();
+                    //foreach (var item in dt_StockInfos)
+                    //{
+                    //    Details.AddRange(item.Details);
+                    //}
+                    //var BatchNo = string.Join(",", Details.GroupBy(x => x.BatchNo).Select(x => x.Key).ToList());
                     if (dt_StockInfos.Count > 0 && dt_StockInfos != null)
                     {
-                        locationStockView.BatchNo = dt_StockInfos.First().Details.First().BatchNo;
-                        locationStockView.InDate = dt_StockInfos.First().InDate;
-                        locationStockView.MaterielCode = dt_StockInfos.First().Details.First().MaterielCode;
-                        locationStockView.MaterielName = dt_StockInfos.First().Details.First().MaterielName;
-                        locationStockView.OrderNo = dt_StockInfos.First().Details.First().OrderNo;
+                        locationStockView.BatchNo = dt_StockInfos.First().BatchNo;
+                        locationStockView.InDate = dt_StockInfos.OrderByDescending(x => x.InDate).First().InDate;
+                        locationStockView.MaterielCode = dt_StockInfos.First().MaterielCode;
+                        locationStockView.MaterielName = dt_StockInfos.First().MaterielName;
+                        //locationStockView.OrderNo = dt_StockInfos.First().OrderNo;
                         locationStockView.PalletCode = string.Join(",", dt_StockInfos.Select(x => x.PalletCode).ToList());
                         locationStockView.Quantity = dt_StockInfos.Count;
+                        locationStockView.BoxQty = dt_StockInfos.Select(x => x.BoxQuantity).Sum();
+                        locationStockView.StockQuantity = dt_StockInfos.Select(x => x.StockQuantity).Sum();
                     }
                     locationStockViews.Add(locationStockView);
                 }

--
Gitblit v1.9.3