yanjinhui
2026-03-09 b27bc774c69089d29863b5633fcdfa44799eb450
´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs
@@ -16,6 +16,7 @@
#endregion << ç‰ˆ æœ¬ æ³¨ é‡Š >>
using AutoMapper;
using SixLabors.ImageSharp.ColorSpaces;
using SqlSugar;
using System.Diagnostics.CodeAnalysis;
using WIDESEAWCS_BasicInfoService;
@@ -146,6 +147,9 @@
        public WebResponseContent CancelWMSTask(WMSCancelTask wMSCancelTask)
        {
            WebResponseContent content = new WebResponseContent();
            var KLS = new CancelGALAXISTask();
            CancelHIKROBOTTask cancelHIKROBOTTask = new CancelHIKROBOTTask();
            CancelSXCTake cancelSXCTake = new CancelSXCTake();
            try
            {
                Dt_Task dt_Task = BaseDal.QueryFirst(x => x.WMSTaskNum == wMSCancelTask.TaskCode);
@@ -163,7 +167,7 @@
                #region å‡¯ä¹å£«
                if (isGALAXISTask)
                {
                    var KLS = new CancelGALAXISTask
                     KLS = new CancelGALAXISTask
                    {
                        taskId = dt_Task.WMSTaskNum,
                        reportTime = DateTime.Now.ToString()
@@ -176,11 +180,11 @@
                    {
                        //直接移入历史
                        BaseDal.DeleteAndMoveIntoHty(dt_Task, OperateTypeEnum.自动完成);
                        return content.OK("取消任务成功", dt_Task);
                         content.OK("取消任务成功", dt_Task);
                    }
                    else
                    {
                        return content.Error($"任务失败{agvContent.data.returnInfo}");
                        content.Error($"任务失败{agvContent.data.returnInfo}");
                    }
                }
@@ -189,7 +193,7 @@
                #region å››å‘车
                if (isAGV)
                {
                    CancelSXCTake cancelSXCTake = new CancelSXCTake
                     cancelSXCTake = new CancelSXCTake
                    {
                        taskID = dt_Task.RGVTaskId
                    };
@@ -201,18 +205,18 @@
                    {
                        //直接移入历史
                        BaseDal.DeleteAndMoveIntoHty(dt_Task, OperateTypeEnum.自动完成);
                        return content.OK("取消任务成功", dt_Task);
                         content.OK("取消任务成功", dt_Task);
                    }
                    else
                    {
                        return content.Error($"任务失败{fOURBOTReturn.data}");
                        content.Error($"任务失败{fOURBOTReturn.data}");
                    }
                }
                #endregion
                #region æµ·åº·
                if (isHK)
                {
                    CancelHIKROBOTTask cancelHIKROBOTTask = new CancelHIKROBOTTask
                     cancelHIKROBOTTask = new CancelHIKROBOTTask
                    {
                        robotTaskCode = dt_Task.WMSTaskNum,
                        cancelType = "CANCEL"//原软取消,DROP人工介入(原硬取消)
@@ -225,11 +229,11 @@
                    {
                        //直接移入历史
                        BaseDal.DeleteAndMoveIntoHty(dt_Task, OperateTypeEnum.自动完成);
                        return content.OK("取消任务成功", dt_Task);
                         content.OK("取消任务成功", dt_Task);
                    }
                    else
                    {
                        return content.Error($"任务失败{hIKROBOTReturn.data}");
                         content.Error($"任务失败{hIKROBOTReturn.data}");
                    }
                }
@@ -239,6 +243,33 @@
            catch (Exception ex)
            {
                content.Error(ex.Message);
            }
            finally
            {
                // åœ¨ finally ä¸­åˆ¤æ–­å“ªä¸ªå¯¹è±¡è¢«èµ‹å€¼äº†
                object logObject = null;
                string deviceName = "";
                if (KLS != null )
                {
                    logObject = KLS;
                    deviceName = "凯乐士AGV";
                }
                else if (cancelHIKROBOTTask != null )
                {
                    logObject = cancelHIKROBOTTask;
                    deviceName = "海康机器人";
                }
                else if (cancelSXCTake != null )
                {
                    logObject = cancelSXCTake;
                    deviceName = "四向车";
                }
                if (logObject != null)
                {
                    _trackloginfoService.AddTrackLog(logObject, content, $"取消{deviceName}任务", "", "");
                }
            }
            return content;
        }
@@ -252,6 +283,9 @@
        public WebResponseContent UpdateWMSTaskPriority(WMSUpdateTaskPriority updateTaskPriority)
        {
            WebResponseContent content = new WebResponseContent();
            var updateGALAXISTaskGrade = new UpdateGALAXISTaskGrade();
            var request = new UpdateAgvSXCTake();
            var Hkrequest = new HIKROBOTTaskGrade();
            try
            {
                Dt_Task dt_Task = BaseDal.QueryFirst(x => x.WMSTaskNum == updateTaskPriority.taskCode);
@@ -271,7 +305,7 @@
                #region å‡¯ä¹å£«
                if (isGALAXISTask)
                {
                    var updateGALAXISTaskGrade = new UpdateGALAXISTaskGrade
                    updateGALAXISTaskGrade = new UpdateGALAXISTaskGrade
                    {
                        taskId = dt_Task.WMSTaskNum,
                        reportTime = DateTime.Now.ToString(),
@@ -286,11 +320,11 @@
                    {
                        BaseDal.UpdateData(dt_Task);
                        return content.OK("修改任务优先级成功", dt_Task);
                         content.OK("修改任务优先级成功", dt_Task);
                    }
                    else
                    {
                        return content.Error($"任务失败{agvContent.data.returnInfo}");
                         content.Error($"任务失败{agvContent.data.returnInfo}");
                    }
                }
                #endregion
@@ -298,7 +332,7 @@
                #region å››å‘车
                if (isAGV)
                {
                    var request = new UpdateAgvSXCTake
                     request = new UpdateAgvSXCTake
                    {
                        taskID = dt_Task.RGVTaskId,
                        priority = updateTaskPriority.taskPriority
@@ -310,11 +344,11 @@
                    if (fOURBOTReturn.returnCode == 0 && fOURBOTReturn.returnUserMsg == "成功")
                    {
                        BaseDal.UpdateData(dt_Task);
                        return content.OK("修改任务优先级成功", dt_Task);
                         content.OK("修改任务优先级成功", dt_Task);
                    }
                    else
                    {
                        return content.Error($"任务失败{fOURBOTReturn.data}");
                         content.Error($"任务失败{fOURBOTReturn.data}");
                    }
                }
@@ -322,23 +356,23 @@
                #region æµ·åº·
                if (isHK)
                {
                    var request = new HIKROBOTTaskGrade
                     Hkrequest = new HIKROBOTTaskGrade
                    {
                        robotTaskCode = dt_Task.WMSTaskNum,//任务号
                        initPriority = updateTaskPriority.taskPriority//优先级
                    };
                    Dt_ApiInfo? apiInfo = _apiInfoService.Repository.QueryFirst(x => x.ApiCode == nameof(HIKROBOTTaskGrade));
                    if (apiInfo == null) throw new Exception("未找到四向车AGV任务下发接口配置信息!请检查接口配置");
                    string response = HttpHelper.Post(apiInfo.ApiAddress, request.Serialize());
                    string response = HttpHelper.Post(apiInfo.ApiAddress, Hkrequest.Serialize());
                    HIKROBOTReturn hIKROBOTReturn = response.DeserializeObject<HIKROBOTReturn>();
                    if (hIKROBOTReturn.code == "SUCCESS0" && hIKROBOTReturn.message == "成功")
                    {
                        BaseDal.UpdateData(dt_Task);
                        return content.OK("修改任务优先级成功", dt_Task);
                         content.OK("修改任务优先级成功", dt_Task);
                    }
                    else
                    {
                        return content.Error($"任务失败{hIKROBOTReturn.data}");
                         content.Error($"任务失败{hIKROBOTReturn.data}");
                    }
                }
                #endregion
@@ -347,6 +381,33 @@
            {
                content.Error(ex.Message);
            }
            finally
            {
                // åœ¨ finally ä¸­åˆ¤æ–­å“ªä¸ªå¯¹è±¡è¢«èµ‹å€¼äº†
                object logObject = null;
                string deviceName = "";
                if (updateGALAXISTaskGrade != null )
                {
                    logObject = updateGALAXISTaskGrade;
                    deviceName = "凯乐士AGV";
                }
                else if (Hkrequest != null)
                {
                    logObject = Hkrequest;
                    deviceName = "海康机器人";
                }
                else if (request != null )
                {
                    logObject = request;
                    deviceName = "四向车";
                }
                if (logObject != null)
                {
                    _trackloginfoService.AddTrackLog(logObject, content, $"修改{deviceName}任务优先级", "", "");
                }
            }
            return content;
        }