From e1dd1dc9ba7135e3d64a65587d6c1be2c3e18c5a Mon Sep 17 00:00:00 2001 From: wangxinhui <wangxinhui@hnkhzn.com> Date: 星期三, 25 六月 2025 11:01:22 +0800 Subject: [PATCH] 提交最新优化代码 --- 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutStockLockInfoService.cs | 100 +++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 95 insertions(+), 5 deletions(-) diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutStockLockInfoService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutStockLockInfoService.cs" index abf8185..cba7d6c 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutStockLockInfoService.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/OutStockLockInfoService.cs" @@ -52,7 +52,10 @@ OriginalQuantity = item.Details.Where(x => x.MaterielCode == outboundOrderDetail.MaterielCode).Sum(x => x.StockQuantity), Status = taskNum == null ? OutLockStockStatusEnum.宸插垎閰�.ObjToInt() : OutLockStockStatusEnum.鍑哄簱涓�.ObjToInt(), StockId = item.Id, - TaskNum = taskNum + TaskNum = taskNum, + ProductionDate = item.Details.Where(x => x.MaterielCode == outboundOrderDetail.MaterielCode).FirstOrDefault()?.ProductionDate, + EffectiveDate = item.Details.Where(x => x.MaterielCode == outboundOrderDetail.MaterielCode).FirstOrDefault()?.EffectiveDate + }; outStockLockInfos.Add(outStockLockInfo); } @@ -79,12 +82,21 @@ StockId = outStock.Id, TaskNum = taskNum, OrderQuantity = outboundOrderDetail.OrderQuantity, - Unit=outboundOrderDetail.Unit, + Unit = outboundOrderDetail.Unit, + ProductionDate = outStock.Details.Where(x => x.MaterielCode == outboundOrderDetail.MaterielCode).FirstOrDefault()?.ProductionDate, + EffectiveDate = outStock.Details.Where(x => x.MaterielCode == outboundOrderDetail.MaterielCode).FirstOrDefault()?.EffectiveDate }; return outStockLockInfo; } - + /// <summary> + /// PP澶у嵎鍑哄簱 + /// </summary> + /// <param name="mesOutboundOrder"></param> + /// <param name="outStock"></param> + /// <param name="assignQuantity"></param> + /// <param name="taskNum"></param> + /// <returns></returns> public Dt_OutStockLockInfo GetOutStockLockInfo(Dt_MesOutboundOrder mesOutboundOrder, Dt_StockInfo outStock, float assignQuantity, int? taskNum = null) { @@ -104,15 +116,93 @@ StockId = outStock.Id, TaskNum = taskNum, OrderQuantity = mesOutboundOrder.OrderQuantity, - Unit = mesOutboundOrder.Unit + Unit = mesOutboundOrder.Unit, + ProductionDate = outStock.Details.Where(x => x.MaterielCode == mesOutboundOrder.MaterialCode).FirstOrDefault()?.ProductionDate, + EffectiveDate = outStock.Details.Where(x => x.MaterielCode == mesOutboundOrder.MaterialCode).FirstOrDefault()?.EffectiveDate + + }; + + return outStockLockInfo; + } + /// <summary> + /// PP灏忓嵎鍑哄簱 + /// </summary> + /// <param name="mesPPCutOutboundOrderDetail"></param> + /// <param name="outStock"></param> + /// <param name="assignQuantity"></param> + /// <param name="taskNum"></param> + /// <returns></returns> + public List<Dt_OutStockLockInfo> GetOutStockLockInfos(Dt_MesPPCutOutboundOrder mesPPCutOutboundOrder, Dt_MesPPCutOutboundOrderDetail mesPPCutOutboundOrderDetail, List<Dt_StockInfo> outStock, int? taskNum = null) + { + List<Dt_OutStockLockInfo> outStockLockInfos = new List<Dt_OutStockLockInfo>(); + + foreach (var item in outStock) + { + Dt_OutStockLockInfo outStockLockInfo = new Dt_OutStockLockInfo() + { + PalletCode = item.PalletCode, + AssignQuantity = item.Details.Where(x => x.MaterielCode == mesPPCutOutboundOrderDetail.MaterielCode).Sum(x => x.OutboundQuantity), + MaterielCode = mesPPCutOutboundOrderDetail.MaterielCode, + BatchNo = item.Details.FirstOrDefault().BatchNo, + LocationCode = item.LocationCode, + MaterielName = mesPPCutOutboundOrderDetail.MaterielName, + OrderDetailId = mesPPCutOutboundOrderDetail.Id, + OrderNo = mesPPCutOutboundOrder.OrderNo, + OrderType = mesPPCutOutboundOrder.OrderType, + OriginalQuantity = item.Details.Where(x => x.MaterielCode == mesPPCutOutboundOrderDetail.MaterielCode).Sum(x => x.StockQuantity), + Status = taskNum == null ? OutLockStockStatusEnum.宸插垎閰�.ObjToInt() : OutLockStockStatusEnum.鍑哄簱涓�.ObjToInt(), + StockId = item.Id, + TaskNum = taskNum, + OrderQuantity = mesPPCutOutboundOrderDetail.OrderQuantity, + Unit = mesPPCutOutboundOrderDetail.Unit, + ProductionDate = item.Details.Where(x => x.MaterielCode == mesPPCutOutboundOrderDetail.MaterielCode).FirstOrDefault()?.ProductionDate, + EffectiveDate = item.Details.Where(x => x.MaterielCode == mesPPCutOutboundOrderDetail.MaterielCode).FirstOrDefault()?.EffectiveDate + }; + outStockLockInfos.Add(outStockLockInfo); + } + + return outStockLockInfos; + } + + public Dt_OutStockLockInfo GetOutStockLockInfo(Dt_MesPPOutboundOrder mesPPOutboundOrder, Dt_StockInfo outStock, float assignQuantity, int? taskNum = null) + { + + Dt_OutStockLockInfo outStockLockInfo = new Dt_OutStockLockInfo() + { + PalletCode = outStock.PalletCode, + AssignQuantity = assignQuantity, + MaterielCode = mesPPOutboundOrder.MaterialCode, + BatchNo = outStock.Details.FirstOrDefault()?.BatchNo ?? "", + LocationCode = outStock.LocationCode, + MaterielName = mesPPOutboundOrder.MaterialName, + OrderDetailId = mesPPOutboundOrder.Id, + OrderNo = mesPPOutboundOrder.OrderNo, + OrderType = mesPPOutboundOrder.OrderType, + OriginalQuantity = outStock.Details.Where(x => x.MaterielCode == mesPPOutboundOrder.MaterialCode).Sum(x => x.StockQuantity), + Status = taskNum == null ? OutLockStockStatusEnum.宸插垎閰�.ObjToInt() : OutLockStockStatusEnum.鍑哄簱涓�.ObjToInt(), + StockId = outStock.Id, + TaskNum = taskNum, + OrderQuantity = mesPPOutboundOrder.OrderQuantity, + Unit = mesPPOutboundOrder.Unit, + ProductionDate = outStock.Details.Where(x => x.MaterielCode == mesPPOutboundOrder.MaterialCode).FirstOrDefault()?.ProductionDate, + EffectiveDate = outStock.Details.Where(x => x.MaterielCode == mesPPOutboundOrder.MaterialCode).FirstOrDefault()?.EffectiveDate }; return outStockLockInfo; } + public List<Dt_OutStockLockInfo> OutStockLockInfos(string OrderNo) + { + return BaseDal.QueryData(x => x.OrderNo == OrderNo); + } + public List<Dt_OutStockLockInfo> GetByOrderDetailId(int orderDetailId, OutLockStockStatusEnum? outStockStatus) { - return BaseDal.QueryData(x => x.OrderDetailId == orderDetailId && outStockStatus==null?true:x.Status == outStockStatus.ObjToInt()); + return BaseDal.QueryData(x => x.OrderDetailId == orderDetailId && outStockStatus == null ? true : x.Status == outStockStatus.ObjToInt()); + } + public List<Dt_OutStockLockInfo> GetByMesOrderDetail(string taskNo) + { + return BaseDal.QueryData(x => x.OrderNo == taskNo); } public List<Dt_OutStockLockInfo> GetStockOutboundOrder(SaveModel saveModel) -- Gitblit v1.9.3