From ef4e456bb392c7260f2d8af886d7786f471b6ae0 Mon Sep 17 00:00:00 2001
From: yanjinhui <3306209981@qq.com>
Date: 星期一, 02 三月 2026 10:41:03 +0800
Subject: [PATCH] 11
---
代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs | 92 +++++++++++++++++++++++++++++++++++++++-------
1 files changed, 78 insertions(+), 14 deletions(-)
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs"
index f7722d1..bb6a084 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs"
@@ -26,8 +26,10 @@
using WIDESEAWCS_Core;
using WIDESEAWCS_Core.BaseRepository;
using WIDESEAWCS_Core.BaseServices;
+using WIDESEAWCS_Core.Enums;
using WIDESEAWCS_Core.Helper;
using WIDESEAWCS_DTO;
+using WIDESEAWCS_DTO.RGV.FOURBOT;
using WIDESEAWCS_DTO.TaskInfo;
using WIDESEAWCS_DTO.WMS;
using WIDESEAWCS_IBasicInfoService;
@@ -40,6 +42,7 @@
{
public partial class TaskService : ServiceBase<Dt_Task, IRepository<Dt_Task>>, ITaskService
{
+ private readonly ITrackloginfoService _trackloginfoService;
private readonly IRouterService _routerService;
private readonly ITaskExecuteDetailService _taskExecuteDetailService;
private readonly IHKLocationInfoService _hKLocationInfoService;
@@ -47,6 +50,7 @@
private readonly IRGVLocationInfoService _rGVLocationInfoService;
private readonly IRepository<Dt_TaskExecuteDetail> _taskExecuteDetailRepository;
private readonly IApiInfoService _apiInfoService;
+ private readonly IStationMangerService _stationMangerService;
private readonly IMapper _mapper;
private Dictionary<string, OrderByType> _taskOrderBy = new()
@@ -66,7 +70,7 @@
/// </summary>
public IRepository<Dt_Task> Repository => BaseDal;
- public TaskService(IRepository<Dt_Task> BaseDal, IRouterService routerService, ITaskExecuteDetailService taskExecuteDetailService, IRepository<Dt_TaskExecuteDetail> taskExecuteDetailRepository, IMapper mapper, IKLSLocationInfoService kLSLocationInfoService, IRGVLocationInfoService rGVLocationInfoService, IHKLocationInfoService hKLocationInfoService, IApiInfoService apiInfoService) : base(BaseDal)
+ public TaskService(IRepository<Dt_Task> BaseDal, IRouterService routerService, ITaskExecuteDetailService taskExecuteDetailService, IRepository<Dt_TaskExecuteDetail> taskExecuteDetailRepository, IMapper mapper, IKLSLocationInfoService kLSLocationInfoService, IRGVLocationInfoService rGVLocationInfoService, IHKLocationInfoService hKLocationInfoService, IApiInfoService apiInfoService,ITrackloginfoService trackloginfoService) : base(BaseDal)
{
_routerService = routerService;
_taskExecuteDetailService = taskExecuteDetailService;
@@ -75,7 +79,8 @@
_kLSLocationInfoService = kLSLocationInfoService;
_rGVLocationInfoService = rGVLocationInfoService;
_hKLocationInfoService = hKLocationInfoService;
- _apiInfoService = apiInfoService;
+ _apiInfoService = apiInfoService;
+ _trackloginfoService = trackloginfoService;
}
public WebResponseContent ReceiveWMSTask([NotNull] List<WMSTasksDTO> taskDTOs)
{
@@ -144,7 +149,7 @@
{
Dt_Task dt_Task = BaseDal.QueryFirst(x => x.WMSTaskNum == wMSCancelTask.TaskCode);
if (dt_Task == null) throw new Exception("鏈煡璇㈠埌浠诲姟鍙风浉鍏充换鍔�");
-
+
// 鍒ゆ柇褰撳墠浠诲姟鏄惁涓哄嚡涔愬+浠诲姟
bool isGALAXISTask = dt_Task.TaskType == (int)TaskTypeEnum.MLInbound ||
dt_Task.TaskType == (int)TaskTypeEnum.MLOutbound;
@@ -153,13 +158,14 @@
//娴峰悍
bool isHK = dt_Task.TaskType == (int)TaskTypeEnum.Carry || dt_Task.TaskType == (int)TaskTypeEnum.CJInbound || dt_Task.TaskType == (int)TaskTypeEnum.CJInbound || dt_Task.TaskType == (int)TaskTypeEnum.CJOutbound;
//杩欓噷灏嗙姸鎬佹敼鍙樹簡198鍙栨秷浠诲姟
- dt_Task.TaskType = TaskOutStatusEnum.OutCancel.ObjToInt();
+ dt_Task.TaskType = TaskStatusEnum.WMSCancel.ObjToInt();
+ #region
if (isGALAXISTask)
{
- var KLS = new CancelGALAXISTask
- {
- taskId= dt_Task.WMSTaskNum,
- reportTime=DateTime.Now.ToString()
+ var KLS = new CancelGALAXISTask
+ {
+ taskId = dt_Task.WMSTaskNum,
+ reportTime = DateTime.Now.ToString()
};
Dt_ApiInfo? apiInfo = _apiInfoService.Repository.QueryFirst(x => x.ApiCode == nameof(CancelGALAXISTask));
if (apiInfo == null) throw new Exception("鏈壘鍒板嚡涔愬+AGV浠诲姟涓嬪彂鎺ュ彛閰嶇疆淇℃伅锛佽妫�鏌ユ帴鍙i厤缃�");
@@ -167,11 +173,41 @@
GALAXISReturn agvContent = response.DeserializeObject<GALAXISReturn>();
if (agvContent.success == true && agvContent.code == 0)
{
- BaseDal.UpdateData(dt_Task);
- return content.OK("鍙栨秷浠诲姟鎴愬姛", dt_Task);
+ //鐩存帴绉诲叆鍘嗗彶
+ BaseDal.DeleteAndMoveIntoHty(dt_Task, OperateTypeEnum.鑷姩瀹屾垚);
+ return content.OK("鍙栨秷浠诲姟鎴愬姛", dt_Task);
+ }
+ else
+ {
+ return content.Error($"浠诲姟澶辫触{agvContent.data.returnInfo}");
+
}
}
- content.Error("鍙栨秷浠诲姟澶辫触");
+ #endregion
+
+ #region 鍥涘悜杞�
+ if (isAGV)
+ {
+ CancelSXCTake cancelSXCTake = new CancelSXCTake
+ {
+ taskID = dt_Task.RGVTaskId
+ };
+ Dt_ApiInfo? apiInfo = _apiInfoService.Repository.QueryFirst(x => x.ApiCode == nameof(CancelSXCTake));
+ if (apiInfo == null) throw new Exception("鏈壘鍒板嚡涔愬+AGV浠诲姟涓嬪彂鎺ュ彛閰嶇疆淇℃伅锛佽妫�鏌ユ帴鍙i厤缃�");
+ string response = HttpHelper.Post(apiInfo.ApiAddress, cancelSXCTake.Serialize());
+ FOURBOTReturn fOURBOTReturn = response.DeserializeObject<FOURBOTReturn>();
+ if (fOURBOTReturn.returnCode == 0 && fOURBOTReturn.returnUserMsg == "鎴愬姛")
+ {
+ //鐩存帴绉诲叆鍘嗗彶
+ BaseDal.DeleteAndMoveIntoHty(dt_Task, OperateTypeEnum.鑷姩瀹屾垚);
+ return content.OK("鍙栨秷浠诲姟鎴愬姛", dt_Task);
+ }
+ else
+ {
+ return content.Error($"浠诲姟澶辫触{fOURBOTReturn.data}");
+ }
+ }
+ #endregion
}
catch (Exception ex)
{
@@ -210,7 +246,7 @@
{
var updateGALAXISTaskGrade = new UpdateGALAXISTaskGrade
{
- taskId = dt_Task.TaskNum.ToString(),
+ taskId = dt_Task.WMSTaskNum,
reportTime = DateTime.Now.ToString(),
district = dt_Task.Roadway,//浠诲姟搴撳尯
priorityCode = updateTaskPriority.taskPriority,
@@ -221,12 +257,40 @@
GALAXISReturn agvContent = response.DeserializeObject<GALAXISReturn>();
if (agvContent.success == true && agvContent.code == 0)
{
+
BaseDal.UpdateData(dt_Task);
- return content.OK("淇敼浠诲姟浼樺厛绾ф垚鍔�", dt_Task);
+ return content.OK("淇敼浠诲姟浼樺厛绾ф垚鍔�", dt_Task);
+ }
+ else {
+ return content.Error($"浠诲姟澶辫触{agvContent.data.returnInfo}");
}
}
#endregion
- content.Error("淇敼浠诲姟浼樺厛绾уけ璐�");
+
+ #region 鍥涘悜杞�
+ if (isAGV)
+ {
+ var request = new UpdateAgvSXCTake
+ {
+ taskID = dt_Task.RGVTaskId,
+ priority = updateTaskPriority.taskPriority
+ };
+ Dt_ApiInfo? apiInfo = _apiInfoService.Repository.QueryFirst(x => x.ApiCode == nameof(UpdateAgvSXCTake));
+ if (apiInfo == null) throw new Exception("鏈壘鍒板嚡涔愬+AGV浠诲姟涓嬪彂鎺ュ彛閰嶇疆淇℃伅锛佽妫�鏌ユ帴鍙i厤缃�");
+ string response = HttpHelper.Post(apiInfo.ApiAddress, request.Serialize());
+ FOURBOTReturn fOURBOTReturn = response.DeserializeObject<FOURBOTReturn>();
+ if (fOURBOTReturn.returnCode == 0 && fOURBOTReturn .returnUserMsg== "鎴愬姛")
+ {
+
+ return content.OK("淇敼浠诲姟浼樺厛绾ф垚鍔�", dt_Task);
+ }
+ else
+ {
+ return content.Error($"浠诲姟澶辫触{fOURBOTReturn.data}");
+ }
+ }
+ #endregion
+
}
catch (Exception ex)
{
--
Gitblit v1.9.3