duyongjia
2025-01-09 daf541c51a7687b338e17b1543266bacee4ff2d3
ÏîÄ¿´úÂë/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs
@@ -29,6 +29,7 @@
using System.Text;
using System.Threading.Tasks;
using WIDESEAWCS_Common.Http;
using WIDESEAWCS_Common.ServiceLog;
using WIDESEAWCS_Common.TaskEnum;
using WIDESEAWCS_Core;
using WIDESEAWCS_Core.BaseRepository;
@@ -95,26 +96,31 @@
                    }
                    Dt_Task task = _mapper.Map<Dt_Task>(item);
                    task.Creater = "WMS";
                    //空车入库
                    if (item.TaskType == (int)TaskInboundTypeEnum.InInventory)
                    {
                        task.TaskType= (int)TaskInboundTypeEnum.InInventory;
                        task.TaskState= (int)TaskInStatusEnum.InNew;
                    }
                    else if(item.TaskType==(int)TaskOutboundTypeEnum.OutInventory)
                    if(item.TaskType==(int)TaskOutboundTypeEnum.OutInventory)
                    {
                        task.TaskType=(int)TaskOutboundTypeEnum.OutInventory;
                        task.TaskState=(int)TaskOutStatusEnum.OutNew;
                    }
                    else if (item.TaskType == (int)TaskOutboundTypeEnum.Outbound)
                    {
                        task.TaskType = (int)TaskOutboundTypeEnum.Outbound;
                        task.TaskState = (int)TaskOutStatusEnum.OutNew;
                    }
                    else if (item.TaskType == (int)TaskInboundTypeEnum.Inbound)
                    {
                        task.TaskType = (int)TaskInboundTypeEnum.Inbound;
                        task.TaskState = (int)TaskInStatusEnum.InNew;
                    }
                    else if (item.TaskType == (int)TaskOutboundTypeEnum.Outbound)
                    else if (item.TaskType == (int)TaskInboundTypeEnum.InInventory)
                    {
                        task.TaskType = (int)TaskOutboundTypeEnum.Outbound;
                        task.TaskState = (int)TaskOutStatusEnum.OutNew;
                        task.TaskType = (int)TaskInboundTypeEnum.InInventory;
                        task.TaskState = (int)TaskInStatusEnum.InNew;
                    }
                    else if (item.TaskType == (int)TaskInboundTypeEnum.InPick)
                    {
                        task.TaskType = (int)TaskInboundTypeEnum.InPick;
                        task.TaskState = (int)TaskInStatusEnum.InNew;
                    }
                    tasks.Add(task);
                }
@@ -475,6 +481,16 @@
                        _unitOfWorkManage.BeginTran();
                        UpdateTaskStatus(task.TaskId, (int)TaskOutStatusEnum.SC_OutFinish);
                        _taskExecuteDetailService.AddTaskExecuteDetail(task.TaskId, $"堆垛机出库完成");
                        ServiceLogger.WriteDebug("StackCraneTaskCompleted", $"堆垛机出库完成状态回写WMS,任务号:【{taskNum}】");
                        var response = HttpHelpers.Post<WebResponseContent>(url.Replace("PDA", "Task") + "UpdateTaskStatus?taskNum=" + task.TaskNum, "", "更新任务状态");
                        if(response.Status)
                        {
                            ServiceLogger.WriteDebug("StackCraneTaskCompleted", $"堆垛机出库完成状态回写WMS成功,任务号:【{taskNum}】");
                        }
                        else
                        {
                            ServiceLogger.WriteDebug("StackCraneTaskCompleted", $"堆垛机出库完成状态回写WMS失败,任务号:【{taskNum}】");
                        }
                        _unitOfWorkManage.CommitTran();
                        return content.OK();
                    }
@@ -487,27 +503,41 @@
                    
                }
                else if (task.TaskType == (int)TaskInboundTypeEnum.Inbound || task.TaskType == (int)TaskInboundTypeEnum.InInventory)
                else if (task.TaskType == (int)TaskInboundTypeEnum.Inbound || task.TaskType == (int)TaskInboundTypeEnum.InInventory || task.TaskType == (int)TaskInboundTypeEnum.InPick)
                {
                    _unitOfWorkManage.BeginTran();
                    UpdateTaskStatus(task.TaskId, (int)TaskInStatusEnum.SC_InFinish);
                    _taskExecuteDetailService.AddTaskExecuteDetail(task.TaskId, $"堆垛机入库完成");
                    ServiceLogger.WriteDebug("StackCraneTaskCompleted", $"堆垛机入库完成状态回写WMS,任务号:【{taskNum}】");
                    var response= HttpHelpers.Post<WebResponseContent>(url.Replace("PDA", "Task") + "UpdateTaskStatus?taskNum=" + task.TaskNum, "", "更新任务状态");
                    if(response.Status)
                    {
                        ServiceLogger.WriteDebug("StackCraneTaskCompleted", $"堆垛机入库完成状态回写WMS成功,任务号:【{taskNum}】");
                    }
                    else
                    {
                        ServiceLogger.WriteDebug("StackCraneTaskCompleted", $"堆垛机入库完成状态回写WMS失败,任务号:【{taskNum}】");
                    }
                    UpdateTaskStatus(task.TaskId, (int)TaskInStatusEnum.InFinish);
                    _taskExecuteDetailService.AddTaskExecuteDetail(task.TaskId, $"入库任务完成");
                    //if (App.User.UserId > 0)
                    //{
                        task.Modifier = "System";
                        var response = HttpHelpers.Post<WebResponseContent>(url.Replace("PDA", "Task") + "TaskCompleted?taskNum=" + task.TaskNum, "", "任务完成");
                        if (response.Status)
                        {
                            _unitOfWorkManage.CommitTran();
                            return content.OK();
                        }
                        else
                        {
                            _unitOfWorkManage.RollbackTran();
                            return content = WebResponseContent.Instance.Error(response.Message);
                        }
                    task.Modifier = "System";
                    ServiceLogger.WriteDebug("StackCraneTaskCompleted", $"入库任务完成回写WMS,任务号:【{taskNum}】");
                    var response2 = HttpHelpers.Post<WebResponseContent>(url.Replace("PDA", "Task") + "TaskCompleted?taskNum=" + task.TaskNum, "", "任务完成");
                    if (response2.Status)
                    {
                        ServiceLogger.WriteDebug("StackCraneTaskCompleted", $"入库任务完成回写WMS成功,任务号:【{taskNum}】");
                        _unitOfWorkManage.CommitTran();
                        return content.OK();
                    }
                    else
                    {
                        ServiceLogger.WriteDebug("StackCraneTaskCompleted", $"入库任务完成回写WMS失败,任务号:【{taskNum}】");
                        _unitOfWorkManage.RollbackTran();
                        return content = WebResponseContent.Instance.Error(response.Message);
                    }
                    //}
                    //_unitOfWorkManage.CommitTran();
                    //return content.OK();
@@ -521,6 +551,7 @@
            {
                _unitOfWorkManage.RollbackTran();
                content = WebResponseContent.Instance.Error($"任务完成异常,任务号:【{taskNum}】,异常信息:{ex.Message}");
                ServiceLogger.WriteDebug("StackCraneTaskCompleted", $"任务完成异常,任务号:【{taskNum}】,异常信息:{ex.Message}");
            }
            finally
            {
@@ -563,14 +594,17 @@
        public WebResponseContent OutBoundTaskByWMS(int taskNum)
        {
            WebResponseContent content = new WebResponseContent();
            ServiceLogger.WriteDebug("OutBoundTaskByWMS", $"出库任务完成回写WMS,任务号:{taskNum}");
            var response = HttpHelpers.Post<WebResponseContent>(url.Replace("PDA", "Task") + "TaskCompleted?taskNum=" + taskNum, "", "任务完成");
            if (response.Status)
            {
                ServiceLogger.WriteDebug("OutBoundTaskByWMS", $"出库任务完成回写WMS成功,任务号:{taskNum}");
                _unitOfWorkManage.CommitTran();
                return content.OK();
            }
            else
            {
                ServiceLogger.WriteDebug("OutBoundTaskByWMS", $"出库任务完成回写WMS失败,任务号:{taskNum}");
                _unitOfWorkManage.RollbackTran();
                return content = WebResponseContent.Instance.Error(response.Message);
            }