From 65a231315d1dcc35d2996106d36e9cca9aba6ce6 Mon Sep 17 00:00:00 2001
From: wangxinhui <wangxinhui@hnkhzn.com>
Date: 星期五, 06 三月 2026 09:06:44 +0800
Subject: [PATCH] 更新码垛分配工位优化,老厂退库称重上报设定差异范围
---
项目代码/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService_Outbound.cs | 42 +++++++++++++++++++++++++-----------------
1 files changed, 25 insertions(+), 17 deletions(-)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService_Outbound.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService_Outbound.cs"
index 4463a90..adae872 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService_Outbound.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/TaskService_Outbound.cs"
@@ -839,7 +839,8 @@
//鑾峰彇棰嗘枡鏉$爜鍙婂簱瀛�
List<string> lockCodes = bSTPickInfoDTOs.SelectMany(x => x.PaperMattakeDetails).Select(x=>x.Barcode).Distinct().ToList();
- List<Dt_StockInfo> stockInfos = _stockRepository.StockInfoRepository.QueryData(x=> lockCodes.Contains(x.PalletCode));
+ List<Dt_StockInfo> stockInfos = _stockRepository.StockInfoRepository.QueryData(x => lockCodes.Contains(x.PalletCode) && x.WarehouseId == WarehouseEnum.LLDOldCache.ObjToInt());
+ List<string> ExistNoCodes = lockCodes.Where(x => !stockInfos.Select(x=>x.PalletCode).Contains(x)).ToList();
//鑾峰彇寰呴鏂欑殑鍑哄簱璇︽儏
List<Dt_OutStockLockInfo> outStockLockInfos = _outboundRepository.OutStockLockInfoRepository.QueryData(x => x.OrderType == OutOrderTypeEnum.OutSGPick.ObjToInt() && x.Status==OutLockStockStatusEnum.鍑哄簱瀹屾垚.ObjToInt() && lockCodes.Distinct().ToList().Contains(x.PalletCode));
//鍑哄簱璇︽儏鐘舵�佹洿鏂�
@@ -898,6 +899,7 @@
_outboundRepository.OutSGOrderRepository.UpdateData(outSGOrders);
_outboundRepository.OutSGOrderDetailRepository.UpdateData(orderDetails);
_unitOfWorkManage.CommitTran();
+ content.OK(ExistNoCodes.Count>0 ? string.Join(",", ExistNoCodes)+"鑰佸巶鍙墸搴撳瓨涓嶅瓨鍦�" : "");
}
catch (Exception ex)
{
@@ -945,6 +947,7 @@
public WebResponseContent ReceiveOutBound(List<OutMESOrderDTO> outMESOrderDTOs)
{
WebResponseContent content = new WebResponseContent();
+ string ErrorMsg = "";
try
{
if (outMESOrderDTOs == null || outMESOrderDTOs.Count <= 0)
@@ -974,11 +977,11 @@
//鑾峰彇鎵�鏈夊姞宸ヤ腑蹇�
List<Dt_MakeCenterInfo> makeCenterInfos = _basicRepository.MakeCenterInfoRepository.QueryData();
- OutMESOrderDTO? CheckMaterialCode = outMESOrderDTOs.FirstOrDefault(x => !materielInfos.Select(x => x.MaterielCode).Contains(x.MaterialCode));
- if (CheckMaterialCode != null)
- {
- return content.Error($"鐗╂枡缂栫爜{nameof(OutMESOrderDTO.MaterialCode)}:{CheckMaterialCode.MaterialCode}淇℃伅涓嶅瓨鍦�");
- }
+ //OutMESOrderDTO? CheckMaterialCode = outMESOrderDTOs.FirstOrDefault(x => !materielInfos.Select(x => x.MaterielCode).Contains(x.MaterialCode));
+ //if (CheckMaterialCode != null)
+ //{
+ // return content.Error($"鐗╂枡缂栫爜{nameof(OutMESOrderDTO.MaterialCode)}:{CheckMaterialCode.MaterialCode}淇℃伅涓嶅瓨鍦�");
+ //}
OutMESOrderDTO? CheckMakeCenterCode = outMESOrderDTOs.FirstOrDefault(x => !makeCenterInfos.Select(x => x.MakeCode).Contains(x.MakeCode));
if (CheckMakeCenterCode!=null)
{
@@ -989,17 +992,23 @@
{
return content.Error($"棰嗘枡璁″垝{nameof(OutMESOrderDTO.OutDetailId)}:{OldoutMESOrder.OutDetailId}淇℃伅宸插瓨鍦�");
}
- List<Dt_OutMESOrder> AddoutMESOrders = outMESOrderDTOs.Select(x => _mapper.Map<Dt_OutMESOrder>(x)).ToList();
- foreach (var item in AddoutMESOrders)
+ List<Dt_OutMESOrder> AddoutMESOrders = new List<Dt_OutMESOrder>();
+ foreach (var item in outMESOrderDTOs)
{
- Dt_MaterielInfo materielInfo = materielInfos.FirstOrDefault(x => x.MaterielCode == item.MaterialCode);
- Dt_MakeCenterInfo makeCenterInfo=makeCenterInfos.FirstOrDefault(x => x.MakeCode == item.MakeCode);
- item.MakeArea = makeCenterInfo.MakeArea;
- item.WarehouseId = materielInfo.WarehouseId;
- item.MaterielUnit = materielInfo.MaterielUnit;
- item.AssistUnitCode = materielInfo.AssistUnitCode;
+ Dt_MaterielInfo? materielInfo = materielInfos.FirstOrDefault(x => x.MaterielCode == item.MaterialCode);
+ if (materielInfo==null)
+ {
+ ErrorMsg += $"鐗╂枡缂栫爜:{item.MaterialCode}淇℃伅涓嶅瓨鍦�;";
+ continue;
+ }
+ Dt_MakeCenterInfo makeCenterInfo = makeCenterInfos.FirstOrDefault(x => x.MakeCode == item.MakeCode);
+ Dt_OutMESOrder outMESOrder = _mapper.Map<Dt_OutMESOrder>(item);
+ outMESOrder.MakeArea = makeCenterInfo.MakeArea;
+ outMESOrder.WarehouseId = materielInfo.WarehouseId;
+ outMESOrder.MaterielUnit = materielInfo.MaterielUnit;
+ outMESOrder.AssistUnitCode = materielInfo.AssistUnitCode;
+ AddoutMESOrders.Add(outMESOrder);
}
-
_unitOfWorkManage.BeginTran();
//鎿嶄綔鏁版嵁锛屽苟鍒嗛厤闇�姹傚簱瀛�
_outboundRepository.OutMESOrderRepository.AddData(AddoutMESOrders);
@@ -1088,8 +1097,7 @@
// }
//}
_unitOfWorkManage.CommitTran();
-
- return content.OK("鎺ユ敹鎴愬姛");
+ return content.OK(ErrorMsg.IsNullOrEmpty()? "鎺ユ敹鎴愬姛" : $"淇℃伅锛歿ErrorMsg}");
}
catch (Exception ex)
{
--
Gitblit v1.9.3