From e1f772ef890e46813b62a08aa8e77a258f6add2c Mon Sep 17 00:00:00 2001
From: dengjunjie <dengjunjie@hnkhzn.com>
Date: 星期一, 02 三月 2026 10:04:23 +0800
Subject: [PATCH] 添加任务完成反馈给WMS
---
代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskMethods.cs | 32 +++++++++++++++++++++++++++++++-
1 files changed, 31 insertions(+), 1 deletions(-)
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskMethods.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskMethods.cs"
index b542669..be32c60 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskMethods.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskMethods.cs"
@@ -14,6 +14,7 @@
using WIDESEAWCS_Core.Enums;
using WIDESEAWCS_Core.Helper;
using WIDESEAWCS_DTO;
+using WIDESEAWCS_DTO.WMS;
using WIDESEAWCS_Model.Models;
namespace WIDESEAWCS_TaskInfoService
@@ -156,10 +157,39 @@
{
try
{
+ WMSInOutBoundCompleteFeedback boundCompleteFeedback = new WMSInOutBoundCompleteFeedback();
+ WMSReturn agvContent = null;
dt_Task.TaskState = TaskStatusEnum.Finish.ObjToInt();
+
+ Dt_ApiInfo? apiInfo = _apiInfoService.Repository.QueryFirst(x => x.ApiCode == nameof(WMSInOutBoundCompleteFeedback));
+ if (apiInfo == null) dt_Task.ExceptionMessage = "鏈壘鍒板嚭鍏ュ簱瀹屾垚鍙嶉WMS鎺ュ彛閰嶇疆淇℃伅锛佽妫�鏌ユ帴鍙i厤缃�";
+ else
+ {
+ boundCompleteFeedback.taskCode = dt_Task.WMSTaskNum;
+ boundCompleteFeedback.containerCode = dt_Task.PalletCode;
+ boundCompleteFeedback.fromStationCode = dt_Task.SourceAddress;
+ boundCompleteFeedback.toLocationCode = dt_Task.TargetAddress;
+ switch (deviceTypeEnum)
+ {
+ case DeviceTypeEnum.GALAXIS:
+ boundCompleteFeedback.businessType = 1;
+ break;
+ case DeviceTypeEnum.YuanLiJuHe:
+ boundCompleteFeedback.businessType = 2;
+ break;
+ }
+
+ boundCompleteFeedback.completeType = 1;
+ string response = HttpHelper.Post(apiInfo.ApiAddress, boundCompleteFeedback.Serialize());
+ agvContent = response.DeserializeObject<WMSReturn>();
+ if (agvContent.code != 0) dt_Task.ExceptionMessage = agvContent.msg;
+ }
Db.Ado.BeginTran();
UpdateLocationStatus(dt_Task.TargetAddress, deviceTypeEnum, LocationStatusEnum.InStock);
- BaseDal.DeleteAndMoveIntoHty(dt_Task, OperateTypeEnum.鑷姩瀹屾垚);
+ if (agvContent != null && agvContent.code == 0)
+ BaseDal.DeleteAndMoveIntoHty(dt_Task, OperateTypeEnum.鑷姩瀹屾垚);
+ else
+ BaseDal.UpdateData(dt_Task);
Db.Ado.CommitTran();
return WebResponseContent.Instance.OK();
}
--
Gitblit v1.9.3