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_TaskInfoService/MesTaskService.cs | 51 +++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 39 insertions(+), 12 deletions(-) diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/MesTaskService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/MesTaskService.cs" index aa4c376..ffd078d 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/MesTaskService.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/MesTaskService.cs" @@ -30,6 +30,7 @@ using WIDESEA_DTO.Stock; using SqlSugar; using OfficeOpenXml.FormulaParsing.Excel.Functions.RefAndLookup; +using OfficeOpenXml.FormulaParsing.Excel.Functions.Math; namespace WIDESEA_TaskInfoService { @@ -97,6 +98,13 @@ PalletType = stockInfo.PalletType, WarehouseId = stockInfo.WarehouseId, }; + string MaterielCode = stockInfo.Details.Where(x => x.StockId == stockInfo.Id).FirstOrDefault()?.MaterielCode; + float Quantity = (float)stockInfo.Details.Where(x => x.StockId == stockInfo.Id).Sum(x => x.StockQuantity); + if (MaterielCode != null && Quantity != null) + { + taskOut.MaterielCode = MaterielCode; + taskOut.Quantity = Quantity; + } stockInfo.StockStatus = (int)StockStatusEmun.鍑哄簱閿佸畾; LocationStatusEnum locationStatus = (LocationStatusEnum)locationInfo.LocationStatus; locationInfo.LocationStatus = (int)LocationStatusEnum.Lock; @@ -130,11 +138,6 @@ MesResponseContent responseContent = new MesResponseContent(); try { - Dt_Task exsit = Repository.QueryFirst(x => x.TargetAddress == model.TargetAddressCode); - if (exsit != null) - { - return responseContent.Error($"鐩爣鍦板潃閲嶅"); - } Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseCode == WarehouseEnum.HA154.ToString()); //鑾峰彇搴撳瓨璁板綍 @@ -176,6 +179,13 @@ PalletType = stockInfo.PalletType, WarehouseId = stockInfo.WarehouseId, }; + string MaterielCode = stockInfo.Details.Where(x => x.StockId == stockInfo.Id).FirstOrDefault()?.MaterielCode; + float Quantity = (float)stockInfo.Details.Where(x => x.StockId == stockInfo.Id).Sum(x => x.StockQuantity); + if (MaterielCode != null && Quantity != null) + { + taskOut.MaterielCode = MaterielCode; + taskOut.Quantity = Quantity; + } stockInfo.StockStatus = (int)StockStatusEmun.鍑哄簱閿佸畾; LocationStatusEnum locationStatus = (LocationStatusEnum)locationInfo.LocationStatus; locationInfo.LocationStatus = (int)LocationStatusEnum.Lock; @@ -210,11 +220,7 @@ MesResponseContent responseContent = new MesResponseContent(); try { - Dt_Task exsit = Repository.QueryFirst(x => x.TargetAddress == model.TargetAddressCode); - if (exsit != null) - { - return responseContent.Error($"鐩爣鍦板潃閲嶅"); - } + Dt_Warehouse warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseCode == WarehouseEnum.HA154.ToString()); //鑾峰彇搴撳瓨璁板綍 @@ -256,6 +262,13 @@ PalletType = stockInfo.PalletType, WarehouseId = stockInfo.WarehouseId, }; + string MaterielCode = stockInfo.Details.Where(x => x.StockId == stockInfo.Id).FirstOrDefault()?.MaterielCode; + float Quantity = (float)stockInfo.Details.Where(x => x.StockId == stockInfo.Id).Sum(x => x.StockQuantity); + if (MaterielCode != null && Quantity != null) + { + taskOut.MaterielCode = MaterielCode; + taskOut.Quantity = Quantity; + } stockInfo.StockStatus = (int)StockStatusEmun.鍑哄簱閿佸畾; LocationStatusEnum locationStatus = (LocationStatusEnum)locationInfo.LocationStatus; locationInfo.LocationStatus = (int)LocationStatusEnum.Lock; @@ -318,6 +331,13 @@ PalletType = stockInfo.PalletType, WarehouseId = stockInfo.WarehouseId, }; + string MaterielCode = stockInfo.Details.Where(x => x.StockId == stockInfo.Id).FirstOrDefault()?.MaterielCode; + float Quantity = (float)stockInfo.Details.Where(x => x.StockId == stockInfo.Id).Sum(x => x.StockQuantity); + if (MaterielCode != null && Quantity != null) + { + taskIn.MaterielCode = MaterielCode; + taskIn.Quantity = Quantity; + } //鏇存敼搴撳瓨鐘舵�� stockInfo.StockStatus = StockStatusEmun.閫�搴�.ObjToInt(); BaseDal.AddData(taskIn); @@ -540,9 +560,11 @@ List<Dt_OutStockLockInfo>? outStockLockInfos = null; List<Dt_LocationInfo>? locationInfos = null; { + //鍒嗛厤搴撳瓨 (List<Dt_StockInfo>, Dt_MesOutboundOrder, List<Dt_OutStockLockInfo>, List<Dt_LocationInfo>) result = _outboundService.MesOutboundOrderService.AssignStockOutbound(mesOutboundOrder); if (result.Item1 != null && result.Item1.Count > 0) { + //鍒涘缓浠诲姟 tasks = GetTasks(result.Item1, TaskTypeEnum.MesOutbound); result.Item2.OrderStatus = OrderDetailStatusEnum.Outbound.ObjToInt(); result.Item3.ForEach(x => @@ -1034,9 +1056,14 @@ TaskStatus = TaskStatusEnum.New.ObjToInt(), WarehouseId = stockInfo.WarehouseId, PalletType = stockInfo.PalletType, - MaterielCode = stockInfo.Details.Where(x => x.StockId == stockInfo.Id).FirstOrDefault()?.MaterielCode, - Quantity = (float)stockInfo.Details.Where(x => x.StockId == stockInfo.Id).FirstOrDefault()?.StockQuantity, }; + string MaterielCode = stockInfo.Details.Where(x => x.StockId == stockInfo.Id).FirstOrDefault()?.MaterielCode; + float Quantity = (float)stockInfo.Details.Where(x => x.StockId == stockInfo.Id).Sum(x => x.StockQuantity); + if (MaterielCode != null && Quantity != null) + { + newTask.MaterielCode = MaterielCode; + newTask.Quantity = Quantity; + } LocationStatusEnum lastStatus = (LocationStatusEnum)locationInfo.LocationStatus; _unitOfWorkManage.BeginTran(); _recordService.LocationStatusChangeRecordSetvice.AddLocationStatusChangeRecord(locationInfo, lastStatus, LocationStatusEnum.Lock, LocationChangeType.InboundAssignLocation); -- Gitblit v1.9.3