From 3a1a5e58e9ac1b4a8449601db8c6608897877746 Mon Sep 17 00:00:00 2001 From: helongyang <647556386@qq.com> Date: 星期五, 21 三月 2025 11:26:12 +0800 Subject: [PATCH] 界面更新 --- 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_StockRepository/ProStockInfoRepository.cs | 46 +++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 45 insertions(+), 1 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 0d83d13..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" @@ -1,9 +1,11 @@ -锘縰sing System; +锘縰sing Microsoft.IdentityModel.Tokens; +using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using WIDESEA_Core.BaseRepository; +using WIDESEA_Core.Helper; using WIDESEA_IStockRepository; using WIDESEA_Model.Models; @@ -14,5 +16,47 @@ public ProStockInfoRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage) { } + //鏍规嵁鏄庣粏鏁版嵁鏌ユ壘鍙敤搴撳瓨搴撳瓨 + 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)) + .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) + )) + .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