From d8db1698c125618c1b5f62b009204ddc5d4eed5a Mon Sep 17 00:00:00 2001 From: wangxinhui <wangxinhui@hnkhzn.com> Date: 星期三, 19 三月 2025 20:34:08 +0800 Subject: [PATCH] 成品代码更新.... --- 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_StockRepository/ProStockInfoRepository.cs | 35 +++++++++++++++++++++++++++++------ 1 files changed, 29 insertions(+), 6 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 9861ce4..1f4d0ad 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" @@ -25,14 +25,37 @@ proStockInfos = Db.Queryable<Dt_ProStockInfo>().Where(x => locationInfos.Contains(x.LocationCode)) .Includes(x => x.proStockInfoDetails) .Where(x => x.proStockInfoDetails - .Any(x => x.SaleOrder == proOutOrderDetail.SaleOrder - && x.ProductCode == proOutOrderDetail.PCode - && x.ProductVersion == proOutOrderDetail.PVer - && (isCanLot ? x.LotNumber == proOutOrderDetail.PLot : true) - && (isCanDate ? x.DateCode == proOutOrderDetail.DateCode : true) + .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) )) .ToList(); - proStockInfos = proStockInfos.OrderBy(x => x.proStockInfoDetails.FirstOrDefault().DateCode).ToList(); + + proStockInfos = proStockInfos.OrderBy(x => x.proStockInfoDetails.FirstOrDefault()?.DateCode).ThenBy(x=>x.proStockInfoDetails.Sum(x=>x.StockPcsQty)).ToList(); + return proStockInfos; + } + /// <summary> + /// 鑾峰彇MES鎻愬簱搴撳瓨 + /// </summary> + /// <param name="mesRworkOutboundOrder"></param> + /// <param name="locationInfos"></param> + /// <returns></returns> + 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)) + .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) + )) + .ToList(); + proStockInfos = proStockInfos.OrderBy(x => x.proStockInfoDetails.FirstOrDefault()?.DateCode).ThenBy(x => x.proStockInfoDetails.Sum(x => x.StockPcsQty)).ToList(); return proStockInfos; } } -- Gitblit v1.9.3