From a0a0df2e824b6fe7e5a3c0afce78127fecf84fc9 Mon Sep 17 00:00:00 2001
From: wangxinhui <wangxinhui@hnkhzn.com>
Date: 星期一, 03 十一月 2025 08:23:05 +0800
Subject: [PATCH] ERP接口代码更新,WCS代码优化,出入库分配优化
---
项目代码/WMS/WMSServices/WIDESEA_TaskInfoService/MesTaskService.cs | 99 ++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 88 insertions(+), 11 deletions(-)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/MesTaskService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/MesTaskService.cs"
index f45c567..1ded967 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/MesTaskService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WMSServices/WIDESEA_TaskInfoService/MesTaskService.cs"
@@ -45,14 +45,22 @@
WebResponseContent content = new WebResponseContent();
try
{
+ if (autoIssueDTO == null)
+ {
+ return content.Error("浼犲叆淇℃伅涓嶈兘涓虹┖");
+ }
//鑾峰彇瀵瑰簲鍗曟嵁
- Dt_OutMESOrder? outMESOrder = _outMESOrderRepository.QueryFirst(x=>x.OutDetailId==autoIssueDTO.OutDetailId);
+ Dt_OutMESOrder? outMESOrder = _outboundRepository.OutMESOrderRepository.QueryFirst(x=>x.OutDetailId==autoIssueDTO.OutDetailId);
if (outMESOrder==null)
{
return content.Error($"棰嗘枡璁″垝{nameof(MESAutoIssueDTO.OutDetailId)}{autoIssueDTO.OutDetailId}涓嶅瓨鍦�");
}
+ if (outMESOrder.OutMESOrderStatus==OutOrderStatusEnum.鍏抽棴.ObjToInt())
+ {
+ return content.Error($"棰嗘枡璁″垝{nameof(MESAutoIssueDTO.OutDetailId)}{outMESOrder.ProductOrderNo}宸ュ崟宸插叧闂�");
+ }
//鑾峰彇鍛ㄨ浆浣嶇疆缂栧彿
- Dt_AGVStationInfo? stationInfo = _agvStationInfoRepository.QueryFirst(x=>x.MESPointCode==autoIssueDTO.PointCode);
+ Dt_AGVStationInfo? stationInfo = _basicRepository.AGVStationInfoRepository.QueryFirst(x=>x.MESPointCode==autoIssueDTO.PointCode);
if (stationInfo == null)
{
return content.Error($"棰嗘枡璁″垝鍛ㄨ浆浣峽nameof(MESAutoIssueDTO.PointCode)}{autoIssueDTO.PointCode}涓嶅瓨鍦�");
@@ -61,15 +69,15 @@
{
return content.Error($"棰嗘枡璁″垝鍛ㄨ浆浣峽nameof(MESAutoIssueDTO.PointCode)}{autoIssueDTO.PointCode}瀛樺湪绌烘墭");
}
- Dt_Task? task = BaseDal.QueryData(x => x.OrderNo == outMESOrder.OutMESOrderNo && x.TaskStatus==TaskStatusEnum.CallPending.ObjToInt()).OrderByDescending(x=>x.Grade).ThenBy(x=>x.TaskNum).FirstOrDefault();
- //鑾峰彇浠诲姟
- if (task==null)
- {
- return content.Error($"鏈壘鍒伴鏂欒鍒掔紪鍙穥outMESOrder.ProductOrderNo}鍙厤閫佷换鍔�");
- }
- task.TaskStatus = TaskStatusEnum.New.ObjToInt();
- task.TargetAddress= stationInfo.AGVStationCode;
- PushTasksToWCS(new List<Dt_Task> { task });
+ //Dt_Task? task = BaseDal.QueryData(x => x.OrderNo == outMESOrder.OutMESOrderNo && x.TaskStatus == TaskStatusEnum.CallPending.ObjToInt()).OrderByDescending(x => x.Grade).ThenBy(x => x.TaskNum).FirstOrDefault();
+ ////鑾峰彇浠诲姟
+ //if (task == null)
+ //{
+ // return content.Error($"鏈壘鍒伴鏂欒鍒掔紪鍙穥outMESOrder.ProductOrderNo}鍙厤閫佷换鍔�");
+ //}
+ //task.TaskStatus = TaskStatusEnum.New.ObjToInt();
+ //task.TargetAddress = stationInfo.AGVStationCode;
+ //PushTasksToWCS(new List<Dt_Task> { task });
return content.OK("鍙枡鎴愬姛");
}
catch (Exception ex)
@@ -78,5 +86,74 @@
}
return content;
}
+
+ public WebResponseContent ReceiveManualIssue(MESManualIssueDTO manualIssueDTO)
+ {
+ WebResponseContent content = new WebResponseContent();
+ try
+ {
+ if (manualIssueDTO == null)
+ {
+ return content.Error("浼犲叆淇℃伅涓嶈兘涓虹┖");
+ }
+ //鑾峰彇瀵瑰簲鍗曟嵁
+ Dt_OutMESOrder? outMESOrder = _outboundRepository.OutMESOrderRepository.QueryFirst(x => x.OutDetailId == manualIssueDTO.OutDetailId);
+ if (outMESOrder == null)
+ {
+ return content.Error($"棰嗘枡璁″垝{nameof(MESAutoIssueDTO.OutDetailId)}{manualIssueDTO.OutDetailId}涓嶅瓨鍦�");
+ }
+ if (outMESOrder.OutMESOrderStatus == OutOrderStatusEnum.鍏抽棴.ObjToInt())
+ {
+ return content.Error($"棰嗘枡璁″垝{nameof(MESAutoIssueDTO.OutDetailId)}{outMESOrder.ProductOrderNo}宸ュ崟宸插叧闂�");
+ }
+ //鑾峰彇鍛ㄨ浆浣嶇疆缂栧彿
+ Dt_AGVStationInfo? stationInfo = _basicRepository.AGVStationInfoRepository.QueryFirst(x => x.MESPointCode == manualIssueDTO.PointCode);
+ if (stationInfo == null)
+ {
+ return content.Error($"棰嗘枡璁″垝鍛ㄨ浆浣峽nameof(MESAutoIssueDTO.PointCode)}{manualIssueDTO.PointCode}涓嶅瓨鍦�");
+ }
+ //Dt_Task? task = BaseDal.QueryData(x => x.OrderNo == outMESOrder.OutMESOrderNo && x.TaskStatus == TaskStatusEnum.CallPending.ObjToInt()).OrderByDescending(x => x.Grade).ThenBy(x => x.TaskNum).FirstOrDefault();
+ ////鑾峰彇浠诲姟
+ //if (task == null)
+ //{
+ // return content.Error($"鏈壘鍒伴鏂欒鍒掔紪鍙穥outMESOrder.ProductOrderNo}鍙厤閫佷换鍔�");
+ //}
+ //task.TaskStatus = TaskStatusEnum.New.ObjToInt();
+ //task.TargetAddress = stationInfo.AGVStationCode;
+ //PushTasksToWCS(new List<Dt_Task> { task });
+ return content.OK("鍙枡鎴愬姛");
+ }
+ catch (Exception ex)
+ {
+ content.Error(ex.Message);
+ }
+ return content;
+ }
+
+ public WebResponseContent ReceiveReturnIssue(List<MESReturnIssueDTO> returnIssueDTOs)
+ {
+ WebResponseContent content = new WebResponseContent();
+ try
+ {
+ if (returnIssueDTOs==null || returnIssueDTOs.Count<=0)
+ {
+ return content.Error("浼犲叆淇℃伅涓嶈兘涓虹┖");
+ }
+ //鑾峰彇鎵�鏈堿GV鐐逛綅
+ List<Dt_AGVStationInfo> aGVStationInfos= _basicRepository.AGVStationInfoRepository.QueryData(x => !string.IsNullOrEmpty(x.MESPointCode));
+ MESReturnIssueDTO? returnIssueDTO = returnIssueDTOs.FirstOrDefault(x=> !aGVStationInfos.Select(x=>x.MESPointCode).Contains(x.PointCode));
+ if (returnIssueDTO != null)
+ {
+ return content.Error($"鍛ㄨ浆浣峽nameof(MESReturnIssueDTO.PointCode)}{returnIssueDTO.PointCode}涓嶅瓨鍦�");
+ }
+ content.OK("鍛煎彨鎴愬姛");
+ }
+ catch (Exception ex)
+ {
+ content.Error(ex.Message);
+ }
+ return content;
+ }
+
}
}
--
Gitblit v1.9.3