From 8abc9481eafeb715b39a4f4f8d6f628a642e6b53 Mon Sep 17 00:00:00 2001 From: dengjunjie <dengjunjie@hnkhzn.com> Date: 星期三, 19 三月 2025 17:38:18 +0800 Subject: [PATCH] 优化AGV和输送线、产线对接逻辑 --- 项目代码/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/Service/OutboundOrderDetailService.cs | 24 +++++++++++++++++++++++- 1 files changed, 23 insertions(+), 1 deletions(-) diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/Service/OutboundOrderDetailService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/Service/OutboundOrderDetailService.cs" index 56e6f14..275b577 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/Service/OutboundOrderDetailService.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_OutboundService/Service/OutboundOrderDetailService.cs" @@ -26,6 +26,10 @@ { public partial class OutboundOrderDetailService : ServiceBase<Dt_OutboundOrderDetail, IOutboundOrderDetailRepository>, IOutboundOrderDetailService { + public override PageGridData<Dt_OutboundOrderDetail> GetPageData(PageDataOptions options) + { + return base.GetPageData(options); + } public WebResponseContent LockOutboundStock(int orderDetailId) { Dt_OutboundOrderDetail outboundOrderDetail = BaseDal.QueryFirst(x => x.Id == orderDetailId); @@ -126,7 +130,25 @@ } return (true, "鎴愬姛"); } + public (List<Dt_StockInfo>, List<Dt_OutStockLockInfo>, List<Dt_LocationInfo>) AssignStockOutbound(Dt_OutboundOrder outboundOrder, List<StockSelectViewDTO> stockSelectViews) + { + var PalletCodes= stockSelectViews.First().PalletCode.Split(','); + List<Dt_StockInfo> outStocks = _stockService.StockInfoService.Repository.QueryData(x => PalletCodes.Contains(x.PalletCode)); + outStocks.ForEach(x => + { + x.StockStatus = StockStatusEmun.鍑哄簱涓�.ObjToInt(); + }); + + List<Dt_OutStockLockInfo> outStockLockInfos = _outStockLockInfoService.GetOutStockLockInfo(outboundOrder, outboundOrder.Details.First(), outStocks, BatchNo: stockSelectViews.First().BatchNo); + + List<Dt_LocationInfo> locationInfos = _basicService.LocationInfoService.Repository.GetLocationInfos(stockSelectViews.Select(x => x.LocationCode).ToList()); + locationInfos.ForEach(x => + { + x.LocationStatus = LocationStatusEnum.Outbounding.ObjToInt(); + }); + return (outStocks, outStockLockInfos, locationInfos); + } /// <summary> /// 鍒嗛厤鍑哄簱搴撳瓨 /// </summary> @@ -309,7 +331,7 @@ /// <param name="locationStatus"></param> /// <param name="tasks"></param> /// <returns></returns> - public WebResponseContent LockOutboundStockDataUpdate(List<Dt_StockInfo> stockInfos, List<Dt_OutboundOrderDetail> outboundOrderDetails, List<Dt_OutStockLockInfo> outStockLockInfos, List<Dt_LocationInfo> locationInfos, LocationStatusEnum locationStatus = LocationStatusEnum.Lock, List<Dt_Task>? tasks = null) + public WebResponseContent LockOutboundStockDataUpdate(List<Dt_StockInfo> stockInfos, List<Dt_OutboundOrderDetail> outboundOrderDetails, List<Dt_OutStockLockInfo> outStockLockInfos, List<Dt_LocationInfo> locationInfos, LocationStatusEnum locationStatus = LocationStatusEnum.OutLock, List<Dt_Task>? tasks = null) { try { -- Gitblit v1.9.3