From a6e0ea9ce13e791f3edae4edffeb3be3ccb760be Mon Sep 17 00:00:00 2001 From: wangxinhui <wangxinhui@hnkhzn.com> Date: 星期一, 31 三月 2025 02:14:59 +0800 Subject: [PATCH] 版本更新 --- 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_StockRepository/ProStockInfoRepository.cs | 26 ++++++++++++++------------ 1 files changed, 14 insertions(+), 12 deletions(-) diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_StockRepository/ProStockInfoRepository.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_StockRepository/ProStockInfoRepository.cs" index 1f4d0ad..7dea7fd 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_StockRepository/ProStockInfoRepository.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_StockRepository/ProStockInfoRepository.cs" @@ -4,6 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; +using WIDESEA_Common.StockEnum; using WIDESEA_Core.BaseRepository; using WIDESEA_Core.Helper; using WIDESEA_IStockRepository; @@ -20,16 +21,17 @@ public List<Dt_ProStockInfo> GetProStocks(Dt_ProOutOrderDetail proOutOrderDetail,List<string> locationInfos) { List<Dt_ProStockInfo>? proStockInfos = null; - bool isCanLot= !string.IsNullOrEmpty(proOutOrderDetail.PLot); - bool isCanDate = !string.IsNullOrEmpty(proOutOrderDetail.DateCode); - proStockInfos = Db.Queryable<Dt_ProStockInfo>().Where(x => locationInfos.Contains(x.LocationCode)) + bool isCanLot= string.IsNullOrEmpty(proOutOrderDetail.PLot); + bool isCanDate = string.IsNullOrEmpty(proOutOrderDetail.DateCode); + bool isCanVer = string.IsNullOrEmpty(proOutOrderDetail.OutSpecifyVer); + proStockInfos = Db.Queryable<Dt_ProStockInfo>().Where(x => locationInfos.Contains(x.LocationCode) && x.ProStockAttribute == ProStockAttributeEnum.鎴愬搧.ObjToInt()) .Includes(x => x.proStockInfoDetails) .Where(x => x.proStockInfoDetails - .Any(v => v.SaleOrder==proOutOrderDetail.SaleOrder - && v.ProductCode==proOutOrderDetail.PCode - && v.ProductVersion==proOutOrderDetail.PVer - && (isCanLot? v.LotNumber== proOutOrderDetail.PLot:true) - && (isCanDate ? v.DateCode == proOutOrderDetail.DateCode : true) + .Any(v => v.SaleOrder == proOutOrderDetail.SaleOrder + && v.ProductCode == proOutOrderDetail.PCode + && v.ProductVersion == proOutOrderDetail.PVer + && (isCanLot ? isCanLot : v.LotNumber == proOutOrderDetail.PLot) + && (isCanDate ? isCanDate : v.DateCode == proOutOrderDetail.DateCode) )) .ToList(); @@ -37,7 +39,7 @@ return proStockInfos; } /// <summary> - /// 鑾峰彇MES鎻愬簱搴撳瓨 + /// 鑾峰彇MES鎻愬簱搴撳瓨(灏炬暟浠�) /// </summary> /// <param name="mesRworkOutboundOrder"></param> /// <param name="locationInfos"></param> @@ -45,14 +47,14 @@ public List<Dt_ProStockInfo> GetProStocks(Dt_MesRworkOutboundOrder mesRworkOutboundOrder, List<string> locationInfos) { List<Dt_ProStockInfo>? proStockInfos = null; - bool isCanDate = !string.IsNullOrEmpty(mesRworkOutboundOrder.DateCode); - proStockInfos = Db.Queryable<Dt_ProStockInfo>().Where(x => locationInfos.Contains(x.LocationCode)) + bool isCanDate = string.IsNullOrEmpty(mesRworkOutboundOrder.DateCode); + proStockInfos = Db.Queryable<Dt_ProStockInfo>().Where(x => locationInfos.Contains(x.LocationCode) && x.ProStockAttribute==ProStockAttributeEnum.灏炬暟.ObjToInt()) .Includes(x => x.proStockInfoDetails) .Where(x => x.proStockInfoDetails .Any(v => v.SaleOrder == mesRworkOutboundOrder.SaleOrder && v.ProductCode == mesRworkOutboundOrder.ProductCode && v.ProductVersion == mesRworkOutboundOrder.ProductVersion - && (isCanDate ? v.DateCode == mesRworkOutboundOrder.DateCode : true) + && (isCanDate ? isCanDate : v.DateCode == mesRworkOutboundOrder.DateCode) )) .ToList(); proStockInfos = proStockInfos.OrderBy(x => x.proStockInfoDetails.FirstOrDefault()?.DateCode).ThenBy(x => x.proStockInfoDetails.Sum(x => x.StockPcsQty)).ToList(); -- Gitblit v1.9.3