From ce40df5daffae0d17b4e9fa7cb6d677afaa4d66f Mon Sep 17 00:00:00 2001
From: wangxinhui <wangxinhui@hnkhzn.com>
Date: 星期五, 17 十月 2025 11:20:30 +0800
Subject: [PATCH] 更新最新程序,ERP代码,MES代码等
---
项目代码/WMS/WMSServices/WIDESEA_OutboundService/OutMESOrderService.cs | 46 +++++++++++++++++++++++++++++++---------------
1 files changed, 31 insertions(+), 15 deletions(-)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutMESOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutMESOrderService.cs"
index 466fd52..80d17fe 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutMESOrderService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_OutboundService/OutMESOrderService.cs"
@@ -38,44 +38,60 @@
_locationStatusChangeRecordService = locationStatusChangeRecordService;
_mapper = mapper;
}
+ List<string> GradeCodes = new List<string>
+ {
+ "001"
+ };
/// <summary>
/// 鎺ユ敹MES棰嗘枡璁″垝
/// </summary>
/// <returns></returns>
- public WebResponseContent ReceiveOutBound(OutMESOrderDTO outMESOrderDTO)
+ public WebResponseContent ReceiveOutBound(List<OutMESOrderDTO> outMESOrderDTOs)
{
WebResponseContent content = new WebResponseContent();
try
{
- if (outMESOrderDTO==null)
+ if (outMESOrderDTOs==null || outMESOrderDTOs.Count <= 0)
{
return content.Error("棰嗘枡璁″垝浼犲叆淇℃伅涓虹┖");
}
- if (outMESOrderDTO.OutDetailId <= 0)
+ outMESOrderDTOs.Select(x => x.OutDetailId);
+ List<Dt_Warehouse> warehouses = _basicRepository.WarehouseRepository.QueryData();
+ OutMESOrderDTO? CheckGradeCode = outMESOrderDTOs.FirstOrDefault(x => !GradeCodes.Contains(x.GradeCode));
+ if (CheckGradeCode != null)
{
- return content.Error($"棰嗘枡璁″垝{nameof(OutMESOrderDTO.OutDetailId)}:{outMESOrderDTO.OutDetailId}闇�瑕佸ぇ浜�0");
+ return content.Error($"棰嗘枡璁″垝搴撳尯{nameof(OutMESOrderDTO.GradeCode)}:{CheckGradeCode.GradeCode}涓嶅瓨鍦�");
}
- if (outMESOrderDTO.ReqQuantity <= 0)
+ OutMESOrderDTO? CheckOutDetailId = outMESOrderDTOs.FirstOrDefault(x => x.OutDetailId <= 0);
+ if (CheckOutDetailId != null)
{
- return content.Error($"棰嗘枡璁″垝{nameof(OutMESOrderDTO.ReqQuantity)}:{outMESOrderDTO.ReqQuantity}闇�瑕佸ぇ浜�0");
+ return content.Error($"棰嗘枡璁″垝{nameof(OutMESOrderDTO.OutDetailId)}:{CheckOutDetailId.ProductOrderNo}闇�瑕佸ぇ浜�0");
+ }
+ OutMESOrderDTO? CheckReqQuantity = outMESOrderDTOs.FirstOrDefault(x => x.ReqQuantity <= 0);
+ if (CheckReqQuantity != null)
+ {
+ return content.Error($"棰嗘枡璁″垝{nameof(OutMESOrderDTO.ReqQuantity)}:{CheckReqQuantity.ProductOrderNo}闇�瑕佸ぇ浜�0");
}
//鑾峰彇鎵�鏈夌墿鏂欎俊鎭�
List<Dt_MaterielInfo> materielInfos = _basicRepository.MaterielInfoRepository.QueryData(x=>x.MaterielInvOrgId==MaterielInvOrgEnum.鏂板巶.ObjToInt());
- //鑾峰彇鎵�鏈変复鏂欒鍒�
+ //鑾峰彇鎵�鏈夐鏂欒鍒�
List<Dt_OutMESOrder> outMESOrders = BaseDal.QueryData();
- Dt_MaterielInfo? ExistmaterielInfo = materielInfos.FirstOrDefault(x=>x.MaterielCode== outMESOrderDTO.MaterialCode);
- if (ExistmaterielInfo == null)
+ OutMESOrderDTO? CheckMaterialCode = outMESOrderDTOs.FirstOrDefault(x=> !materielInfos.Select(x=>x.MaterielCode).Contains(x.MaterialCode));
+ if (CheckMaterialCode != null)
{
- return content.Error($"鐗╂枡缂栫爜{nameof(OutMESOrderDTO.MaterialCode)}:{outMESOrderDTO.MaterialCode}淇℃伅涓嶅瓨鍦�");
+ return content.Error($"鐗╂枡缂栫爜{nameof(OutMESOrderDTO.MaterialCode)}:{CheckMaterialCode.MaterialCode}淇℃伅涓嶅瓨鍦�");
}
- Dt_OutMESOrder? OldoutMESOrder = outMESOrders.FirstOrDefault(x=>x.OutDetailId==outMESOrderDTO.OutDetailId);
+ Dt_OutMESOrder? OldoutMESOrder = outMESOrders.FirstOrDefault(x=> outMESOrderDTOs.Select(x=>x.OutDetailId).Contains(x.OutDetailId));
if (OldoutMESOrder!=null)
{
- return content.Error($"棰嗘枡璁″垝{nameof(OutMESOrderDTO.OutDetailId)}:{outMESOrderDTO.OutDetailId}淇℃伅宸插瓨鍦�");
+ return content.Error($"棰嗘枡璁″垝{nameof(OutMESOrderDTO.OutDetailId)}:{OldoutMESOrder.OutDetailId}淇℃伅宸插瓨鍦�");
}
- return content.Error($"棰嗘枡璁″垝{nameof(OutMESOrderDTO.ProductOrderNo)}:{outMESOrderDTO.ProductOrderNo},鐗╂枡{outMESOrderDTO.MaterialCode}鏃犲彲鍒嗛厤搴撳瓨");
-
- Dt_OutMESOrder outMESOrder = _mapper.Map<Dt_OutMESOrder>(outMESOrderDTO);
+ List<Dt_OutMESOrder> outMESOrder = outMESOrderDTOs.Select(x=> _mapper.Map<Dt_OutMESOrder>(x)).ToList();
+ foreach (var item in outMESOrder)
+ {
+ Dt_MaterielInfo materielInfo = materielInfos.FirstOrDefault(x=>x.MaterielCode==item.MaterialCode);
+ item.WarehouseId = materielInfo.WarehouseId;
+ }
BaseDal.AddData(outMESOrder);
return content.OK("鎺ユ敹鎴愬姛");
}
--
Gitblit v1.9.3