1
Huangxiaoqiang-03
2024-11-04 fe941b73b9496f6cfab1a8957f319f74ea09fe1d
1
已删除9个文件
已修改22个文件
已添加13个文件
1146 ■■■■ 文件已修改
代码管理/WCS/WIDESEAWCS_Client/config/buttons.js 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WIDESEAWCS_Client/src/extension/taskinfo/task.js 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WIDESEAWCS_Client/src/views/taskinfo/task.vue 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WIDESEAWCS_Client/src/views/taskinfo/task_hty.vue 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/58ea606d-ab88-4707-89f0-5981c83956f1.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/603bdb7a-2832-4a6c-ae3d-6e9e5ba8c276.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/82cd292b-85cb-46e8-8b2c-01490a3dfa79.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/84f1a7c6-40b2-4930-80f0-0ccae866bde9.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/8aacaf85-dce8-47fa-9c53-6e1f7b6ace25.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/c5242451-40ac-48a3-bcab-728f6363244e.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/eb4e999f-35d0-4fb2-97f1-c89134c9fc69.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/f948abc3-dc51-4b63-9486-3f2fdb6fe14c.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/TaskInfo/WMSTaskDTO.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/ITaskService.cs 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/TaskInfo/Dt_Task.cs 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/TaskInfo/Dt_Task_Hty.cs 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/Task/TaskController.cs 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Log/System/API请求/2024-11-04/任务取消241104.txt 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Log/System/API请求/2024-11-04/任务完成241104.txt 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs 166 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/Task_HtyService.cs 50 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSClient/src/extension/basic/extend/GetLocationStatus.vue 245 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSClient/src/extension/basic/locationInfo.js 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSClient/src/extension/outbound/extend/outOrderDetail.vue 93 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSClient/src/extension/taskinfo/task.js 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/07acc35c-ead1-4994-b934-522e5a78c90a.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/18586036-2c79-4884-b39a-f8ef4724fd70.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/3353fedf-ce91-4adc-bdb9-d8450ade5d0a.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/3b906d3f-9923-4824-a640-34936ca6bee2.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/3e57106d-d6ef-48e5-9877-2bb7a49660cc.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/83d54c19-601f-4f92-9ee0-9e0d1bad67c7.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/920d508b-6835-488d-985d-2352f20dfd85.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/a25ab2df-8d0e-478a-8bf5-7ede88f4c554.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/f9e8d8bc-d17e-44b5-842b-88f7aaeb9bc9.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/fba332bf-d213-42f0-aac1-323e218fd957.vsidx 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Service/LocationInfoService.cs 81 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_IBasicService/ILocationInfoService.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_IRecordService/ILocationStatusChangeRecordSetvice.cs 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_RecordService/Service/LocationStatusChangeRecordSetvice.cs 87 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/PartialTaskService_Inbound.cs 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/PartialTaskService_Outbound.cs 99 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService.cs 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Record/LocationStatusChangeRecordController.cs 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
代码管理/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Log/System/API请求/2024-11-04/入库任务下发241104.txt 160 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
´úÂë¹ÜÀí/WCS/WIDESEAWCS_Client/config/buttons.js
@@ -33,20 +33,18 @@
    }
},
{
    name: "任务完成",
    name: "手 åЍ å®Œ æˆ",
    icon: '',
    class: '',
    value: 'TaskCompleted',
    type: 'primary',
    value: 'TaskHandCompleted',
    onClick: function () {
    }
},
{
    name: "任务取消",
    name: "取 æ¶ˆ ä»» åŠ¡",
    icon: '',
    class: '',
    value: 'TaskCancel',
    type: 'danger',
    value: 'TaskHandCancel',
    onClick: function () {
    }
},
´úÂë¹ÜÀí/WCS/WIDESEAWCS_Client/src/extension/taskinfo/task.js
@@ -18,6 +18,44 @@
        //下面这些方法可以保留也可以删除
        onInit() {
            // this.$Notice.success({ title: this.detailOptions.cnName + ',查询结果', desc: '返回的对象:' + JSON.stringify(data) });
            let TaskHandCancelBtn = this.buttons.find(x => x.value == 'TaskHandCancel');
            if (TaskHandCancelBtn) {
                TaskHandCancelBtn.onClick = function () {
                    let rows = this.$refs.table.getSelected();
                    if (rows.length == 0) return this.$error("请选择数据!");
                    if (rows.length > 1) return this.$error("请选择一条数据!");
                    var param = rows[0].taskNum;
                    this.http
                        .post("api/Task/TaskCancel?taskNum=" + param, "数据处理中...")
                        .then((x) => {
                            if (x.status) {
                                this.$Message.success('任务取消成功.');
                                this.refresh();
                            } else {
                                return this.$error(x.message);
                            }
                        });
                }
            }
            let TaskHandCompletedBtn = this.buttons.find(x => x.value == 'TaskHandCompleted');
            if (TaskHandCompletedBtn) {
                TaskHandCompletedBtn.onClick = function () {
                    let rows = this.$refs.table.getSelected();
                    if (rows.length == 0) return this.$error("请选择数据!");
                    if (rows.length > 1) return this.$error("请选择一条数据!");
                    var param = rows[0].taskNum;
                    this.http
                        .post("api/Task/StackCraneTaskCompleted?taskNum=" + param, "数据处理中...")
                        .then((x) => {
                            if (x.status) {
                                this.$Message.success('任务手动完成');
                                this.refresh();
                            } else {
                                return this.$error(x.message);
                            }
                        });
                }
            }
            var previousButton = this.buttons.find((x) => x.value == "Previous");
            if (previousButton) previousButton.hidden = true;
´úÂë¹ÜÀí/WCS/WIDESEAWCS_Client/src/views/taskinfo/task.vue
@@ -155,6 +155,13 @@
        hidden: true,
      },
      {
        field: "depth",
        title: "深度",
        type: "int",
        width: 80,
        align: "left",
      },
      {
        field: "grade",
        title: "优先级",
        type: "int",
´úÂë¹ÜÀí/WCS/WIDESEAWCS_Client/src/views/taskinfo/task_hty.vue
@@ -155,6 +155,13 @@
        hidden: true,
      },
      {
        field: "depth",
        title: "深度",
        type: "int",
        width: 80,
        align: "left",
      },
      {
        field: "grade",
        title: "优先级",
        type: "int",
´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/58ea606d-ab88-4707-89f0-5981c83956f1.vsidx
Binary files differ
´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/603bdb7a-2832-4a6c-ae3d-6e9e5ba8c276.vsidx
Binary files differ
´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/82cd292b-85cb-46e8-8b2c-01490a3dfa79.vsidx
Binary files differ
´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/84f1a7c6-40b2-4930-80f0-0ccae866bde9.vsidx
Binary files differ
´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/8aacaf85-dce8-47fa-9c53-6e1f7b6ace25.vsidx
Binary files differ
´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/c5242451-40ac-48a3-bcab-728f6363244e.vsidx
Binary files differ
´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/eb4e999f-35d0-4fb2-97f1-c89134c9fc69.vsidx
Binary files differ
´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/f948abc3-dc51-4b63-9486-3f2fdb6fe14c.vsidx
Binary files differ
´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_DTO/TaskInfo/WMSTaskDTO.cs
@@ -59,5 +59,6 @@
        /// ä¼˜å…ˆçº§
        /// </summary>
        public int Grade {  get; set; }
        public int Depth {  get; set; }
    }
}
´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_ITaskInfoService/ITaskService.cs
@@ -169,6 +169,13 @@
        WebResponseContent StackCraneTaskCompleted(int taskNum);
        /// <summary>
        /// ä»»åŠ¡å–æ¶ˆ
        /// </summary>
        /// <param name="taskNum">任务编号</param>
        /// <returns>返回处理结果</returns>
        WebResponseContent TaskCancel(int taskNum);
        /// <summary>
        /// æ¢å¤æŒ‚起任务
        /// </summary>
        /// <param name="taskNum">任务号</param>
´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/TaskInfo/Dt_Task.cs
@@ -118,6 +118,14 @@
        public string? ExceptionMessage { get; set; }
        /// <summary>
        /// æ·±åº¦
        /// </summary>
        [ImporterHeader(Name = "深度")]
        [ExporterHeader(DisplayName = "深度")]
        [SugarColumn(IsNullable = false, ColumnDescription = "深度")]
        public int Depth { get; set; }
        /// <summary>
        /// ä¼˜å…ˆçº§
        /// </summary>
        [ImporterHeader(Name = "优先级")]
´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_Model/Models/TaskInfo/Dt_Task_Hty.cs
@@ -118,6 +118,14 @@
        public string? ExceptionMessage { get; set; }
        /// <summary>
        /// æ·±åº¦
        /// </summary>
        [ImporterHeader(Name = "深度")]
        [ExporterHeader(DisplayName = "深度")]
        [SugarColumn(IsNullable = false, ColumnDescription = "深度")]
        public int Depth { get; set; }
        /// <summary>
        /// ä¼˜å…ˆçº§
        /// </summary>
        [ImporterHeader(Name = "优先级")]
´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/Task/TaskController.cs
@@ -48,5 +48,17 @@
        {
            return Service.RollbackTaskStatusToLast(taskNum);
        }
        [HttpPost, HttpGet, Route("StackCraneTaskCompleted"),AllowAnonymous]
        public WebResponseContent StackCraneTaskCompleted(int taskNum)
        {
            return Service.StackCraneTaskCompleted(taskNum);
        }
        [HttpPost, HttpGet, Route("TaskCancel"),AllowAnonymous]
        public WebResponseContent TaskCancel(int taskNum)
        {
            return Service.TaskCancel(taskNum);
        }
    }
}
´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Log/System/APIÇëÇó/2024-11-04/ÈÎÎñÈ¡Ïû241104.txt
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,5 @@
2024/11/4 16:11:06.462
请求异常
{"请求报文":468,"接收报文":"","错误":"The operation has timed out."}
-------------------------------
´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_Server/Log/System/APIÇëÇó/2024-11-04/ÈÎÎñÍê³É241104.txt
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,30 @@
2024/11/4 16:01:24.644
请求异常
{"请求报文":468,"接收报文":"","错误":"The remote server returned an error: (404) Not Found."}
-------------------------------
2024/11/4 16:02:28.243
请求异常
{"请求报文":468,"接收报文":"","错误":"The remote server returned an error: (404) Not Found."}
-------------------------------
2024/11/4 16:06:59.981
请求异常
{"请求报文":468,"接收报文":"","错误":"The remote server returned an error: (404) Not Found."}
-------------------------------
2024/11/4 16:10:01.759
请求异常
{"请求报文":468,"接收报文":"","错误":"The remote server returned an error: (404) Not Found."}
-------------------------------
2024/11/4 16:22:28.173
请求异常
{"请求报文":"","接收报文":"","错误":"The operation has timed out."}
-------------------------------
2024/11/4 16:32:07.425
请求异常
{"请求报文":"","接收报文":"","错误":"The operation has timed out."}
-------------------------------
´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs
@@ -86,7 +86,7 @@
        /// </summary>
        /// <param name="taskDTOs">WMS任务对象集合</param>
        /// <returns>返回处理结果</returns>
        public WebResponseContent ReceiveWMSTask([NotNull]List<WMSTaskDTO> taskDTOs)
        public WebResponseContent ReceiveWMSTask([NotNull] List<WMSTaskDTO> taskDTOs)
        {
            WebResponseContent content = new WebResponseContent();
            try
@@ -104,6 +104,7 @@
                }
                BaseDal.AddData(tasks);
                _taskExecuteDetailService.AddTaskExecuteDetail(tasks.Select(x => x.TaskNum).ToList(), "接收WMS任务");
                content = WebResponseContent.Instance.OK($"添加任务成功");
                _unitOfWorkManage.CommitTran();
            }
            catch (Exception ex)
@@ -129,13 +130,14 @@
                {
                    TaskNum = Convert.ToInt32(DateTime.Now.ToString("HHmmss")),
                    Grade = 1,
                    Depth = 1,
                    PalletCode = palletCode,
                    RoadWay = "SC01",
                    SourceAddress = sourceAddress,
                    TargetAddress = "SC01",
                    TaskStatus = TaskInStatusEnum.InNew.ObjToInt(),
                    TaskStatus = (int)TaskInStatusEnum.InNew,
                    Id = 0,
                    TaskType = TaskInboundTypeEnum.Inbound.ObjToInt()
                    TaskType = (int)TaskInboundTypeEnum.Inbound
                };
                content = ReceiveWMSTask(new List<WMSTaskDTO> { taskDTO });
@@ -155,7 +157,7 @@
        /// <returns></returns>
        public Dt_Task QueryConveyorLineTask(string deviceNo, string currentAddress)
        {
            return BaseDal.QueryFirst(x => (TaskInboundTypes.Contains(x.TaskType) && x.TaskStatus == TaskInStatusEnum.InNew.ObjToInt() || TaskOutboundTypes.Contains(x.TaskType) && x.TaskStatus == TaskOutStatusEnum.SC_OutFinish.ObjToInt()) && x.CurrentAddress == currentAddress, TaskOrderBy);
            return BaseDal.QueryFirst(x => (TaskInboundTypes.Contains(x.TaskType) && x.TaskStatus == (int)TaskInStatusEnum.InNew || TaskOutboundTypes.Contains(x.TaskType) && x.TaskStatus == (int)TaskOutStatusEnum.SC_OutFinish) && x.CurrentAddress == currentAddress, TaskOrderBy);
        }
        /// <summary>
@@ -166,7 +168,7 @@
        /// <returns></returns>
        public Dt_Task QueryExecutingConveyorLineTask(int taskNum, string nextAddress)
        {
            return BaseDal.QueryFirst(x => x.TaskNum == taskNum && x.NextAddress == nextAddress && (x.TaskStatus == TaskInStatusEnum.Line_InExecuting.ObjToInt() || x.TaskStatus == TaskOutStatusEnum.Line_OutExecuting.ObjToInt()), TaskOrderBy);
            return BaseDal.QueryFirst(x => x.TaskNum == taskNum && x.NextAddress == nextAddress && (x.TaskStatus == (int)TaskInStatusEnum.Line_InExecuting || x.TaskStatus == (int)TaskOutStatusEnum.Line_OutExecuting), TaskOrderBy);
        }
        /// <summary>
@@ -177,7 +179,7 @@
        /// <returns></returns>
        public Dt_Task QueryCompletedConveyorLineTask(int taskNum, string currentAddress)
        {
            return BaseDal.QueryFirst(x => x.TaskNum == taskNum && x.CurrentAddress == currentAddress && (x.TaskStatus == TaskInStatusEnum.Line_InFinish.ObjToInt() || x.TaskStatus == TaskOutStatusEnum.Line_OutFinish.ObjToInt()), TaskOrderBy);
            return BaseDal.QueryFirst(x => x.TaskNum == taskNum && x.CurrentAddress == currentAddress && (x.TaskStatus == (int)TaskInStatusEnum.Line_InFinish || x.TaskStatus == (int)TaskOutStatusEnum.Line_OutFinish), TaskOrderBy);
        }
        /// <summary>
@@ -189,11 +191,11 @@
        public Dt_Task? QuertStackerCraneTask(string deviceNo, TaskTypeGroup? taskTypeGroup = null)
        {
            if(taskTypeGroup == null)
                return BaseDal.QueryFirst(x => x.Roadway == deviceNo && (TaskInboundTypes.Contains(x.TaskType) && x.TaskStatus == TaskInStatusEnum.Line_InFinish.ObjToInt() || TaskOutboundTypes.Contains(x.TaskType) && x.TaskStatus == TaskOutStatusEnum.OutNew.ObjToInt()), TaskOrderBy);
                return BaseDal.QueryFirst(x => x.Roadway == deviceNo && (TaskInboundTypes.Contains(x.TaskType) && x.TaskStatus == (int)TaskInStatusEnum.Line_InFinish || TaskOutboundTypes.Contains(x.TaskType) && x.TaskStatus == (int)TaskOutStatusEnum.OutNew), TaskOrderBy);
            if(taskTypeGroup.Value == TaskTypeGroup.InboundGroup)
                return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskInboundTypes.Contains(x.TaskType) && x.TaskStatus == TaskInStatusEnum.Line_InFinish.ObjToInt(), TaskOrderBy);
                return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskInboundTypes.Contains(x.TaskType) && x.TaskStatus == (int)TaskInStatusEnum.Line_InFinish, TaskOrderBy);
            if(taskTypeGroup.Value == TaskTypeGroup.OutbondGroup)
                return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskOutboundTypes.Contains(x.TaskType) && x.TaskStatus == TaskOutStatusEnum.OutNew.ObjToInt(), TaskOrderBy);
                return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskOutboundTypes.Contains(x.TaskType) && x.TaskStatus == (int)TaskOutStatusEnum.OutNew, TaskOrderBy);
            return null;
        }
@@ -213,9 +215,9 @@
            else
            {
                if (string.IsNullOrEmpty(currentAddress))
                    return BaseDal.QueryFirst(x => x.Roadway == deviceNo && (TaskTypeEnums.Contains(x.TaskType) && (x.TaskStatus == TaskInStatusEnum.InNew.ObjToInt() ||  x.TaskStatus == TaskOutStatusEnum.OutNew.ObjToInt())), TaskOrderBy);
                    return BaseDal.QueryFirst(x => x.Roadway == deviceNo && (TaskTypeEnums.Contains(x.TaskType) && (x.TaskStatus == (int)TaskInStatusEnum.InNew ||  x.TaskStatus == (int)TaskOutStatusEnum.OutNew)), TaskOrderBy);
                else
                    return BaseDal.QueryFirst(x => x.Roadway == deviceNo && x.CurrentAddress == currentAddress && (TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == (int)TaskInStatusEnum.Line_InFinish || TaskOutboundTypes.Contains(x.TaskType) && x.TaskStatus == TaskOutStatusEnum.OutNew.ObjToInt()), TaskOrderBy);
                    return BaseDal.QueryFirst(x => x.Roadway == deviceNo && x.CurrentAddress == currentAddress && (TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == (int)TaskInStatusEnum.Line_InFinish || TaskOutboundTypes.Contains(x.TaskType) && x.TaskStatus == (int)TaskOutStatusEnum.OutNew), TaskOrderBy);
            }
        }
@@ -234,28 +236,28 @@
            }
            else
            {
                Dt_Task task = BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == TaskOutStatusEnum.OutNew.ObjToInt(), TaskOrderBy);
                Dt_Task tasks = BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == TaskInStatusEnum.InNew.ObjToInt(), TaskOrderBy);
                Dt_Task task = BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == (int)TaskOutStatusEnum.OutNew, TaskOrderBy);
                Dt_Task tasks = BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == (int)TaskInStatusEnum.InNew, TaskOrderBy);
                if (task != null && tasks == null)
                {
                    if (string.IsNullOrEmpty(currentAddress))
                        return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == TaskOutStatusEnum.OutNew.ObjToInt(), TaskOrderBy);
                        return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == (int)TaskOutStatusEnum.OutNew, TaskOrderBy);
                    else
                        return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == TaskOutStatusEnum.OutNew.ObjToInt() && x.CurrentAddress == currentAddress, TaskOrderBy);
                        return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == (int)TaskOutStatusEnum.OutNew && x.CurrentAddress == currentAddress, TaskOrderBy);
                }
                else if (task == null && tasks != null)
                {
                    if (string.IsNullOrEmpty(currentAddress))
                        return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == TaskInStatusEnum.InNew.ObjToInt(), TaskOrderBy);
                        return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == (int)TaskInStatusEnum.InNew, TaskOrderBy);
                    else
                        return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == TaskInStatusEnum.InNew.ObjToInt() && x.CurrentAddress == currentAddress, TaskOrderBy);
                        return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == (int)TaskInStatusEnum.InNew && x.CurrentAddress == currentAddress, TaskOrderBy);
                }
                else
                {
                    if (string.IsNullOrEmpty(currentAddress))
                        return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == TaskInStatusEnum.InNew.ObjToInt(), TaskOrderBy);
                        return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == (int)TaskInStatusEnum.InNew, TaskOrderBy);
                    else
                        return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == TaskInStatusEnum.InNew.ObjToInt() && x.CurrentAddress == currentAddress, TaskOrderBy);
                        return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == (int)TaskInStatusEnum.InNew && x.CurrentAddress == currentAddress, TaskOrderBy);
                }
            }
        }
@@ -268,9 +270,9 @@
        public Dt_Task QueryStackerCraneRelocationTask(string deviceNo, string currentAddress = "")
        {
            if (string.IsNullOrEmpty(currentAddress))
                return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskOutboundTypes.Contains(x.TaskType) && x.TaskStatus == TaskOutStatusEnum.OutNew.ObjToInt(), TaskOrderBy);
                return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskOutboundTypes.Contains(x.TaskType) && x.TaskStatus == (int)TaskOutStatusEnum.OutNew, TaskOrderBy);
            else
                return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskInboundTypes.Contains(x.TaskType) && x.TaskStatus == TaskInStatusEnum.InNew.ObjToInt() && x.CurrentAddress == currentAddress, TaskOrderBy);
                return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskInboundTypes.Contains(x.TaskType) && x.TaskStatus == (int)TaskInStatusEnum.InNew && x.CurrentAddress == currentAddress, TaskOrderBy);
        }
        /// <summary>
@@ -288,28 +290,28 @@
            }
            else
            {
                Dt_Task task = BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == TaskOutStatusEnum.OutNew.ObjToInt(), TaskOrderBy);
                Dt_Task tasks = BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == TaskInStatusEnum.InNew.ObjToInt(), TaskOrderBy);
                Dt_Task task = BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == (int)TaskOutStatusEnum.OutNew, TaskOrderBy);
                Dt_Task tasks = BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == (int)TaskInStatusEnum.InNew, TaskOrderBy);
                if (task != null && tasks == null)
                {
                    if (string.IsNullOrEmpty(currentAddress))
                        return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == TaskOutStatusEnum.OutNew.ObjToInt(), TaskOrderBy);
                        return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == (int)TaskOutStatusEnum.OutNew, TaskOrderBy);
                    else
                        return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == TaskOutStatusEnum.OutNew.ObjToInt() && x.CurrentAddress == currentAddress, TaskOrderBy);
                        return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == (int)TaskOutStatusEnum.OutNew && x.CurrentAddress == currentAddress, TaskOrderBy);
                }
                else if (task == null && tasks != null)
                {
                    if (string.IsNullOrEmpty(currentAddress))
                        return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == TaskInStatusEnum.InNew.ObjToInt(), TaskOrderBy);
                        return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == (int)TaskInStatusEnum.InNew, TaskOrderBy);
                    else
                        return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == TaskInStatusEnum.InNew.ObjToInt() && x.CurrentAddress == currentAddress, TaskOrderBy);
                        return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == (int)TaskInStatusEnum.InNew && x.CurrentAddress == currentAddress, TaskOrderBy);
                }
                else
                {
                    if (string.IsNullOrEmpty(currentAddress))
                        return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == TaskOutStatusEnum.OutNew.ObjToInt(), TaskOrderBy);
                        return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == (int)TaskOutStatusEnum.OutNew, TaskOrderBy);
                    else
                        return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == TaskOutStatusEnum.OutNew.ObjToInt() && x.CurrentAddress == currentAddress, TaskOrderBy);
                        return BaseDal.QueryFirst(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == (int)TaskOutStatusEnum.OutNew && x.CurrentAddress == currentAddress, TaskOrderBy);
                }
            }
@@ -330,7 +332,7 @@
            }
            else
            {
                return BaseDal.QueryData(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == TaskOutStatusEnum.OutNew.ObjToInt() && x.TargetAddress == outStationCodes, TaskOrderBy);
                return BaseDal.QueryData(x => x.Roadway == deviceNo && TaskTypeEnums.Contains(x.TaskType) && x.TaskStatus == (int)TaskOutStatusEnum.OutNew && x.TargetAddress == outStationCodes, TaskOrderBy);
            }
        }
@@ -346,17 +348,17 @@
            {
                Dt_Task task = BaseDal.QueryFirst(x => x.TaskNum == taskNum);
                if (task == null) return WebResponseContent.Instance.Error($"未找到该任务信息,任务号:【{taskNum}】");
                if (task.TaskType == TaskTypeEnum.Outbound.ObjToInt() || task.TaskType == TaskTypeEnum.PalletOutbound.ObjToInt())
                if (task.TaskType == (int)TaskTypeEnum.Outbound || task.TaskType == (int)TaskTypeEnum.PalletOutbound)
                {
                    task.TaskStatus = OutTaskStatusEnum.OutException.ObjToInt();
                    task.TaskStatus = (int)OutTaskStatusEnum.OutException;
                }
                else if (task.TaskType == TaskTypeEnum.Inbound.ObjToInt() || task.TaskType == TaskTypeEnum.PalletInbound.ObjToInt())
                else if (task.TaskType == (int)TaskTypeEnum.Inbound || task.TaskType == (int)TaskTypeEnum.PalletInbound)
                {
                    task.TaskStatus = InTaskStatusEnum.InException.ObjToInt();
                    task.TaskStatus = (int)InTaskStatusEnum.InException;
                }
                else if (task.TaskType == TaskTypeEnum.Relocation.ObjToInt())
                else if (task.TaskType == (int)TaskTypeEnum.Relocation)
                {
                    task.TaskStatus = InTaskStatusEnum.RelocationException.ObjToInt();
                    task.TaskStatus = (int)InTaskStatusEnum.RelocationException;
                }
                task.ExceptionMessage = message;
@@ -419,17 +421,17 @@
            try
            {
                int oldState = task.TaskStatus;
                if (task.TaskType == TaskTypeEnum.Outbound.ObjToInt()|| task.TaskType == TaskTypeEnum.PalletOutbound.ObjToInt())
                if (task.TaskType == (int)TaskTypeEnum.Outbound|| task.TaskType == (int)TaskTypeEnum.PalletOutbound)
                {
                    task.TaskStatus = OutTaskStatusEnum.SC_OutExecuting.ObjToInt();
                }
                else if (task.TaskType == TaskTypeEnum.Inbound.ObjToInt() || task.TaskType == TaskTypeEnum.PalletInbound.ObjToInt())
                else if (task.TaskType == (int)TaskTypeEnum.Inbound || task.TaskType == (int)TaskTypeEnum.PalletInbound)
                {
                    task.TaskStatus = InTaskStatusEnum.SC_InExecuting.ObjToInt();
                    task.TaskStatus = (int)InTaskStatusEnum.SC_InExecuting;
                }
                else if (task.TaskType == TaskTypeEnum.Relocation.ObjToInt())
                else if (task.TaskType == (int)TaskTypeEnum.Relocation)
                {
                    task.TaskStatus = InTaskStatusEnum.RelocationExecuting.ObjToInt();
                    task.TaskStatus = (int)InTaskStatusEnum.RelocationExecuting;
                }
                else
                {
@@ -440,15 +442,23 @@
                {
                    return content = WebResponseContent.Instance.Error($"该任务状态不可跳转到下一步,任务号:【{task.TaskNum}】,任务状态:【{task.TaskStatus}】");
                }
                _unitOfWorkManage.BeginTran();
                task.Dispatchertime = DateTime.Now;
                task.ModifyDate = DateTime.Now;
                task.Modifier = "System";
                BaseDal.UpdateData(task);
                var response = HttpHelpers.Post<WebResponseContent>(url + "UpdateTaskStatus?", task.TaskNum, "入库任务下发");
                var response = HttpHelpers.Post<WebResponseContent>(url + "UpdateTaskStatus?taskNum=" + task.TaskNum, "", "更新任务状态");
                if (!response.Status)
                {
                    _unitOfWorkManage.RollbackTran();
                }
                _unitOfWorkManage.CommitTran();
                _taskExecuteDetailService.AddTaskExecuteDetail(task.TaskId, App.User.UserId > 0 ? $"人工手动将任务状态从【{oldState}】跳转到【{task.TaskStatus}】" : $"系统自动流程,任务状态从【{oldState}】转到【{task.TaskStatus}】");
                content = WebResponseContent.Instance.OK();
            }
            catch (Exception ex)
            {
                _unitOfWorkManage.RollbackTran();
                content = WebResponseContent.Instance.Error(ex.Message);
            }
            return content;
@@ -502,68 +512,77 @@
                Dt_Task task = BaseDal.QueryFirst(x => x.TaskNum == taskNum);
                if (task == null) return WebResponseContent.Instance.Error($"未找到该任务信息,任务号:【{taskNum}】");
                if (task.TaskType == TaskTypeEnum.Outbound.ObjToInt() || task.TaskType == TaskTypeEnum.PalletOutbound.ObjToInt())
                if (task.TaskType == (int)TaskTypeEnum.Outbound || task.TaskType == (int)TaskTypeEnum.PalletOutbound)
                {
                    task.TaskStatus = OutTaskStatusEnum.OutFinish.ObjToInt();
                    _unitOfWorkManage.BeginTran();
                    task.TaskStatus = (int)OutTaskStatusEnum.OutFinish;
                    task.ModifyDate = DateTime.Now;
                    task.Modifier = "System";
                    BaseDal.DeleteData(task);
                    _task_HtyService.AddTaskHty(task);
                    _taskExecuteDetailService.AddTaskExecuteDetail(task.TaskId, $"堆垛机出库完成");
                    var response = HttpHelpers.Post<WebResponseContent>(url + "TaskComplete?", task.TaskNum, "任务完成");
                    var response = HttpHelpers.Post<WebResponseContent>(url + "TaskCompleted?taskNum="+task.TaskNum,"" , "任务完成");
                    if (response.Status)
                    {
                        _unitOfWorkManage.CommitTran();
                        return content.OK();
                    }
                    else
                    {
                        content = WebResponseContent.Instance.Error(response.Message);
                        _unitOfWorkManage.RollbackTran();
                        return content = WebResponseContent.Instance.Error(response.Message);
                    }
                }
                else if (task.TaskType == TaskTypeEnum.Inbound.ObjToInt()  || task.TaskType == TaskTypeEnum.PalletInbound.ObjToInt())
                else if (task.TaskType == (int)TaskTypeEnum.Inbound  || task.TaskType == (int)TaskTypeEnum.PalletInbound)
                {
                    task.TaskStatus = InTaskStatusEnum.InFinish.ObjToInt();
                    _unitOfWorkManage.BeginTran();
                    task.TaskStatus = (int)InTaskStatusEnum.InFinish;
                    task.ModifyDate = DateTime.Now;
                    task.Modifier = "System";
                    BaseDal.DeleteData(task);
                    _task_HtyService.AddTaskHty(task);
                    _taskExecuteDetailService.AddTaskExecuteDetail(task.TaskId, $"堆垛机入库完成");
                    var response = HttpHelpers.Post<WebResponseContent>(url + "TaskComplete?", task.TaskNum, "任务完成");
                    var response = HttpHelpers.Post<WebResponseContent>(url + "TaskCompleted?taskNum="+ task.TaskNum,"", "任务完成");
                    if (response.Status)
                    {
                        _unitOfWorkManage.CommitTran();
                        return content.OK();
                    }
                    else
                    {
                        content = WebResponseContent.Instance.Error(response.Message);
                        _unitOfWorkManage.RollbackTran();
                        return content = WebResponseContent.Instance.Error(response.Message);
                    }
                }
                else if (task.TaskType==TaskTypeEnum.Relocation.ObjToInt())
                else if (task.TaskType== (int)TaskTypeEnum.Relocation)
                {
                    task.TaskStatus = InTaskStatusEnum.RelocationFinish.ObjToInt();
                    _unitOfWorkManage.BeginTran();
                    task.TaskStatus = (int)InTaskStatusEnum.RelocationFinish;
                    task.ModifyDate = DateTime.Now;
                    task.Modifier = "System";
                    BaseDal.DeleteData(task);
                    _task_HtyService.AddTaskHty(task);
                    _taskExecuteDetailService.AddTaskExecuteDetail(task.TaskId, $"堆垛机移库完成");
                    var response = HttpHelpers.Post<WebResponseContent>(url + "TaskComplete?", task.TaskNum, "任务完成");
                    var response = HttpHelpers.Post<WebResponseContent>(url + "TaskCompleted?taskNum=" + task.TaskNum, "", "任务完成");
                    if (response.Status)
                    {
                        _unitOfWorkManage.CommitTran();
                        return content.OK();
                    }
                    else
                    {
                        content = WebResponseContent.Instance.Error(response.Message);
                        _unitOfWorkManage.RollbackTran();
                        return content = WebResponseContent.Instance.Error(response.Message);
                    }
                }
                else
                {
                    throw new Exception($"任务类型错误,未找到该任务类型,任务号:【{taskNum}】,任务类型:【{task.TaskType}】");
                }
                content = WebResponseContent.Instance.OK();
            }
            catch (Exception ex)
            {
                _unitOfWorkManage.RollbackTran();
                content = WebResponseContent.Instance.Error($"任务完成异常,任务号:【{taskNum}】,异常信息:{ex.Message}");
            }
            finally
@@ -580,76 +599,83 @@
                Dt_Task task = BaseDal.QueryFirst(x => x.TaskNum == taskNum);
                if (task == null) return WebResponseContent.Instance.Error($"未找到该任务信息,任务号:【{taskNum}】");
                if ((task.TaskType == TaskTypeEnum.Outbound.ObjToInt() && task.TaskStatus == OutTaskStatusEnum.SC_OutExecuting.ObjToInt()) || task.TaskType == TaskTypeEnum.PalletOutbound.ObjToInt())
                if (task.TaskType == (int)TaskTypeEnum.Outbound  || task.TaskType == (int)TaskTypeEnum.PalletOutbound)
                {
                    task.TaskStatus = OutTaskStatusEnum.OutCancel.ObjToInt();
                    _unitOfWorkManage.BeginTran();
                    task.TaskStatus = (int)OutTaskStatusEnum.OutCancel;
                    task.ModifyDate = DateTime.Now;
                    task.Modifier = "System";
                    BaseDal.DeleteData(task);
                    _task_HtyService.AddTaskHty(task);
                    _taskExecuteDetailService.AddTaskExecuteDetail(task.TaskId, $"堆垛机出库取消");
                    var response = HttpHelpers.Post<WebResponseContent>(url + "TaskComplete?", task.TaskNum, "任务完成");
                    var response = HttpHelpers.Post<WebResponseContent>(url + "TaskCancel?taskNum=" + task.TaskNum, "", "任务取消");
                    if (response.Status)
                    {
                        _unitOfWorkManage.CommitTran();
                        return content.OK();
                    }
                    else
                    {
                        content = WebResponseContent.Instance.Error(response.Message);
                        _unitOfWorkManage.RollbackTran();
                        return content = WebResponseContent.Instance.Error(response.Message);
                    }
                }
                else if ((task.TaskType == TaskTypeEnum.Inbound.ObjToInt() && task.TaskStatus == InTaskStatusEnum.SC_InExecuting.ObjToInt()) || task.TaskType == TaskTypeEnum.PalletInbound.ObjToInt())
                else if (task.TaskType == (int)TaskTypeEnum.Inbound || task.TaskType == (int)TaskTypeEnum.PalletInbound)
                {
                    task.TaskStatus = InTaskStatusEnum.InCancel.ObjToInt();
                    _unitOfWorkManage.BeginTran();
                    task.TaskStatus = (int)InTaskStatusEnum.InCancel;
                    task.ModifyDate = DateTime.Now;
                    task.Modifier = "System";
                    BaseDal.DeleteData(task);
                    _task_HtyService.AddTaskHty(task);
                    _taskExecuteDetailService.AddTaskExecuteDetail(task.TaskId, $"堆垛机入库取消");
                    var response = HttpHelpers.Post<WebResponseContent>(url + "TaskComplete?", task.TaskNum, "任务完成");
                    var response = HttpHelpers.Post<WebResponseContent>(url + "TaskCancel?taskNum=" + task.TaskNum, "", "任务取消");
                    if (response.Status)
                    {
                        _unitOfWorkManage.CommitTran();
                        return content.OK();
                    }
                    else
                    {
                        content = WebResponseContent.Instance.Error(response.Message);
                        _unitOfWorkManage.RollbackTran();
                        return content = WebResponseContent.Instance.Error(response.Message);
                    }
                }
                else if (task.TaskType == TaskTypeEnum.Relocation.ObjToInt())
                else if (task.TaskType == (int)TaskTypeEnum.Relocation)
                {
                    task.TaskStatus = InTaskStatusEnum.RelocationCancel.ObjToInt();
                    _unitOfWorkManage.BeginTran();
                    task.TaskStatus = (int)InTaskStatusEnum.RelocationCancel;
                    task.ModifyDate = DateTime.Now;
                    task.Modifier = "System";
                    BaseDal.DeleteData(task);
                    _task_HtyService.AddTaskHty(task);
                    _taskExecuteDetailService.AddTaskExecuteDetail(task.TaskId, $"堆垛机移库取消");
                    var response = HttpHelpers.Post<WebResponseContent>(url + "TaskComplete?", task.TaskNum, "任务完成");
                    var response = HttpHelpers.Post<WebResponseContent>(url + "TaskCancel?taskNum=" + task.TaskNum, "", "任务取消");
                    if (response.Status)
                    {
                        _unitOfWorkManage.CommitTran();
                        return content.OK();
                    }
                    else
                    {
                        content = WebResponseContent.Instance.Error(response.Message);
                        _unitOfWorkManage.RollbackTran();
                       return content = WebResponseContent.Instance.Error(response.Message);
                    }
                }
                else
                {
                    throw new Exception($"任务类型错误,未找到该任务类型,任务号:【{taskNum}】,任务类型:【{task.TaskType}】");
                }
                content = WebResponseContent.Instance.OK();
            }
            catch (Exception ex)
            {
                _unitOfWorkManage.RollbackTran();
                return content.Error(ex.Message);
            }
            finally
            {
                WriteLog.GetLog("取消任务").Write(JsonConvert.SerializeObject(content), "取消任务");
            }
            return content;
        }
        /// <summary>
        /// æ¢å¤æŒ‚起任务
´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/Task_HtyService.cs
@@ -59,32 +59,30 @@
        public WebResponseContent AddTaskHty(Dt_Task task)
        {
            WebResponseContent content = new WebResponseContent();
            //Dt_Task_Hty task_Hty = new Dt_Task_Hty()
            //{
            //    TaskNum=task.TaskNum,
            //    PalletCode=task.PalletCode,
            //    Roadway=task.Roadway,
            //    TaskType=task.TaskType,
            //    TaskState=  task.TaskState,
            //    SourceAddress=  task.SourceAddress,
            //    TargetAddress= task.TargetAddress,
            //    CurrentAddress = task.CurrentAddress,
            //    NextAddress = task.NextAddress,
            //    ExceptionMessage = task.ExceptionMessage,
            //    Grade = task.Grade,
            //    WMSId = task.WMSId,
            //    Creater=task.Creater,
            //    TaskId=task.TaskId,
            //    CreateDate=task.CreateDate,
            //    Dispatchertime = task.Dispatchertime,
            //    Remark = task.Remark,
            //    Modifier = task.Modifier,
            //    ModifyDate = DateTime.Now,
            //};
            Dt_Task_Hty task_hty = _mapper.Map<Dt_Task_Hty>(task);
            task_hty.Modifier = task.Modifier == "" ? App.User.UserName : task.Modifier;
            task_hty.ModifyDate = DateTime.Now;
            BaseDal.AddData(task_hty);
            Dt_Task_Hty task_Hty = new Dt_Task_Hty()
            {
                TaskNum = task.TaskNum,
                PalletCode = task.PalletCode,
                Roadway = task.Roadway,
                TaskType = task.TaskType,
                TaskStatus = task.TaskStatus,
                SourceAddress = task.SourceAddress,
                TargetAddress = task.TargetAddress,
                CurrentAddress = task.CurrentAddress,
                NextAddress = task.NextAddress,
                ExceptionMessage = task.ExceptionMessage,
                Grade = task.Grade,
                WMSId = task.WMSId,
                Creater = task.Creater,
                TaskId = task.TaskId,
                CreateDate = task.CreateDate,
                Dispatchertime = task.Dispatchertime,
                Depth=task.Depth,
                Remark = task.Remark,
                Modifier = task.Modifier == "" ? App.User.UserName : task.Modifier,
                ModifyDate = DateTime.Now,
            };
            BaseDal.AddData(task_Hty);
            return content;
        }
    }
´úÂë¹ÜÀí/WMS/WIDESEA_WMSClient/src/extension/basic/extend/GetLocationStatus.vue
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,245 @@
<template>
    <div>
        <vol-box v-model="showDetialBox" :lazy="true" width="1500px" :padding="15" title="入库单据明细">
            <div class="box-table" style="margin-top: 1%">
                <el-table ref="singleTable" :data="tableData" style="width: 100%; height: 100%" highlight-current-row
                    @row-click="handleRowClick" height="500px" @selection-change="handleSelectionChange">
                    >
                    <el-table-column type="selection" width="55"> </el-table-column>
                    <el-table-column label="序号" type="index" fixed="left" width="55" align="center"></el-table-column>
                    <el-table-column v-for="(item, index) in tableColumns.filter((x) => !x.hidden)" :key="index"
                        :prop="item.field" :label="item.title" :width="item.width" align="center">
                        <template #default="scoped" v-if="item.type == 'icon'">
                            <el-tooltip class="item" effect="dark" :content="item.title" placement="bottom"><el-button
                                    type="text" @click="tableButtonClick(scoped.row, item)"><i :class="item.icon"
                                        style="font-size: 22px"></i></el-button></el-tooltip>
                        </template>
                    </el-table-column>
                </el-table>
            </div>
        </vol-box>
    </div>
</template>
<script>
import VolBox from "@/components/basic/VolBox.vue";
export default {
    components: { VolBox },
    data() {
        return {
            showDetialBox: false,
            row: {},
            tableData: [],
            tableColumns: [
                {
                    field: "locationId",
                    title: "货位主键",
                    type: "string",
                    width: 90,
                    align: "left",
                },
                {
                    field: "locationCode",
                    title: "货位编号",
                    type: "string",
                    width: 160,
                    align: "left",
                },
                {
                    field: "beforeStatus",
                    title: "变动前货位状态",
                    type: "string",
                    width: 150,
                    align: "left",
                    bindKey: "locationStatusEnum"
                },
                {
                    field: "afterStatus",
                    title: "变动后货位状态",
                    type: "decimal",
                    width: 150,
                    align: "left",
                    bindKey: "locationStatusEnum"
                },
                {
                    field: "changeType",
                    title: "变动类型",
                    type: "string",
                    width: 90,
                    align: "left",
                    bindKey: "stockChangeType",
                },
                {
                    field: "orderId",
                    title: "单据主键",
                    type: "string",
                    width: 90,
                    align: "left",
                    hidden: true,
                },
                {
                    field: "orderNo",
                    title: "单据编号",
                    type: "int",
                    width: 120,
                    align: "left",
                },
                {
                    field: "orderDetailId",
                    title: "单据明细主键",
                    type: "string",
                    width: 200,
                    align: "left",
                    hidden: true,
                },
                {
                    field: "taskNum",
                    title: "任务号",
                    type: "string",
                    width: 180,
                    align: "left",
                },
                {
                    field: "creater",
                    title: "创建人",
                    type: "string",
                    width: 90,
                    align: "left",
                },
                {
                    field: "createDate",
                    title: "创建时间",
                    type: "datetime",
                    width: 160,
                    align: "left",
                },
                {
                    field: "modifier",
                    title: "修改人",
                    type: "string",
                    width: 100,
                    align: "left",
                    hidden: true,
                },
                {
                    field: "modifyDate",
                    title: "修改时间",
                    type: "datetime",
                    width: 160,
                    align: "left",
                    hidden: true,
                },
                {
                    field: "remark",
                    title: "备注",
                    type: "string",
                    width: 100,
                    align: "left",
                    hidden: true,
                },
            ],
        };
    },
    methods: {
        open(row) {
            this.row = row;
            this.showDetialBox = true;
            this.getDetailData();
            getDictionaryData();
        },
        getDetailData() {
            this.http
                .post(
                    "/api/LocationStatusChangeRecord/GetLocationState?id=" + this.row.id,
                    {},
                    true
                )
                .then((x) => {
                    if (!x.status) return this.$message.error(x.message);
                    this.tableData = x.data;
                    console.log(this.tableData);
                });
        },
        getDictionaryData() {
            if (this.dictionaryList) {
                return;
            }
            var param = [];
            this.tableColumns.forEach((x) => {
                if (x.type == "tag" && x.bindKey != "") {
                    param.push(x.bindKey);
                }
            });
            this.http
                .post("api/Sys_Dictionary/GetVueDictionary", param, "查询中")
                .then((x) => {
                    if (x.length > 0) {
                        this.dictionaryList = x;
                    }
                });
        },
        getDictionary(row, column) {
      if (this.dictionaryList) {
        var item = this.dictionaryList.find((x) => x.dicNo == column.bindKey);
        if (item) {
          var dicItem = item.data.find((x) => x.key == row[column.prop]);
          if (dicItem) {
            return dicItem.value;
          } else {
            return row[column.prop];
          }
        } else {
          return row[column.prop];
        }
      }
    },
        tableRowClassName({ row, rowIndex }) {
            if (row.isNormal) {
            } else if (row.isManual) {
                return "success-row";
            }
        },
    },
    created() { },
};
</script>
<style scoped>
.el-col {
    border-radius: 4px;
}
.grid-content {
    border-radius: 4px;
    min-height: 36px;
}
.content-text {
    display: flex;
    align-items: center;
    justify-content: center;
}
.right-text {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}
</style>
<style>
.el-table .warning-row {
    background: #e6a23c;
}
.el-table .success-row {
    background: #f0f9eb;
}
.el-table .error-row {
    background: #f56c6c;
}
</style>
´úÂë¹ÜÀí/WMS/WIDESEA_WMSClient/src/extension/basic/locationInfo.js
@@ -1,11 +1,11 @@
//此js文件是用来自定义扩展业务代码,可以扩展一些自定义页面或者重新配置生成的代码
import gridBody from './extend/GetLocationStatus.vue'
let extension = {
  components: {
    //查询界面扩展组件
    gridHeader: '',
    gridBody: '',
    gridBody: gridBody,
    gridFooter: '',
    //新建、编辑弹出框扩展组件
    modelHeader: '',
´úÂë¹ÜÀí/WMS/WIDESEA_WMSClient/src/extension/outbound/extend/outOrderDetail.vue
@@ -1,12 +1,6 @@
<template>
  <div>
    <vol-box
      v-model="showDetialBox"
      :lazy="true"
      width="75%"
      :padding="15"
      title="单据明细信息"
    >
    <vol-box v-model="showDetialBox" :lazy="true" width="75%" :padding="15" title="单据明细信息">
      <div class="box-head">
        <el-alert :closable="false" style="width: 100%">
          <el-row>
@@ -14,71 +8,27 @@
              <span>已选中 {{ selection.length }} é¡¹</span>
            </el-col>
            <el-col :span="8">
              <el-link
                type="primary"
                size="small"
                style="float: right; height: 20px"
                @click="lockstocks"
                >锁定库存</el-link
              >
              <el-link
                type="primary"
                size="small"
                style="float: right; height: 20px; margin-right: 10px"
                @click="outbound"
                >直接出库</el-link
              >
              <el-link
                type="primary"
                size="small"
                style="float: right; height: 20px; margin-right: 10px"
                @click="getData"
                >刷新</el-link
              ></el-col
            >
              <el-link type="primary" size="small" style="float: right; height: 20px" @click="lockstocks">锁定库存</el-link>
              <el-link type="primary" size="small" style="float: right; height: 20px; margin-right: 10px"
                @click="outbound">直接出库</el-link>
              <el-link type="primary" size="small" style="float: right; height: 20px; margin-right: 10px"
                @click="getData">刷新</el-link></el-col>
          </el-row>
        </el-alert>
      </div>
      <div class="box-table" style="margin-top: 1%">
        <el-table
          ref="singleTable"
          :data="tableData"
          style="width: 100%; height: 100%"
          highlight-current-row
          @current-change="handleCurrentChange"
          height="500px"
          @row-click="handleRowClick"
          @selection-change="handleSelectionChange"
        >
        <el-table ref="singleTable" :data="tableData" style="width: 100%; height: 100%" highlight-current-row
          @current-change="handleCurrentChange" height="500px" @row-click="handleRowClick"
          @selection-change="handleSelectionChange">
          <el-table-column type="selection" width="55"> </el-table-column>
          <el-table-column
            label="序号"
            type="index"
            fixed="left"
            width="55"
            align="center"
          ></el-table-column>
          <el-table-column
            v-for="(item, index) in tableColumns.filter((x) => !x.hidden)"
            :key="index"
            :prop="item.prop"
            :label="item.title"
            :width="item.width"
            align="center"
          >
          <el-table-column label="序号" type="index" fixed="left" width="55" align="center"></el-table-column>
          <el-table-column v-for="(item, index) in tableColumns.filter((x) => !x.hidden)" :key="index" :prop="item.prop"
            :label="item.title" :width="item.width" align="center">
            <template #default="scoped">
              <div v-if="item.type == 'icon'">
                <el-tooltip
                  class="item"
                  effect="dark"
                  :content="item.title"
                  placement="bottom"
                  ><el-link
                    type="primary"
                    :disabled="getButtonEnable(item.prop, scoped.row)"
                    @click="tableButtonClick(scoped.row, item)"
                    ><i :class="item.icon" style="font-size: 22px"></i></el-link
                ></el-tooltip>
                <el-tooltip class="item" effect="dark" :content="item.title" placement="bottom"><el-link type="primary"
                    :disabled="getButtonEnable(item.prop, scoped.row)" @click="tableButtonClick(scoped.row, item)"><i
                      :class="item.icon" style="font-size: 22px"></i></el-link></el-tooltip>
              </div>
              <div v-else-if="item.type == 'tag'">
@@ -92,10 +42,7 @@
      </div>
    </vol-box>
    <stock-select ref="child" @parentCall="parentCall"></stock-select>
    <selected-stock
      ref="selectedStock"
      @parentCall="parentCall"
    ></selected-stock>
    <selected-stock ref="selectedStock" @parentCall="parentCall"></selected-stock>
  </div>
</template>
<script>
@@ -169,7 +116,7 @@
          title: "订单明细状态",
          type: "tag",
          width: 180,
          bindKey:"orderDetailStatusEnum"
          bindKey: "orderDetailStatusEnum"
        },
        {
          prop: "assignStock",
@@ -398,15 +345,17 @@
.text-button:hover {
  background-color: #f0f9eb !important;
}
.el-table .warning-row {
  background: oldlace;
}
.box-table .el-table tbody tr:hover > td {
.box-table .el-table tbody tr:hover>td {
  background-color: #d8e0d4 !important;
  /* color: #ffffff; */
}
.box-table .el-table tbody tr.current-row > td {
.box-table .el-table tbody tr.current-row>td {
  background-color: #f0f9eb !important;
  /* color: #ffffff; */
}
´úÂë¹ÜÀí/WMS/WIDESEA_WMSClient/src/extension/taskinfo/task.js
@@ -22,9 +22,10 @@
        TaskHandCancelBtn.onClick = function () {
          let rows = this.$refs.table.getSelected();
          if (rows.length == 0) return this.$error("请选择数据!");
          if (rows.length > 1) return this.$error("请选择一条数据!");
          var param = rows[0].taskNum;
          this.http
            .post("api/Task/TaskCancel?taskNum="+param, "数据处理中...")
            .post("api/Task/TaskHandCancel?taskNum="+param, "数据处理中...")
            .then((x) => {
              if (x.status) {
                this.$Message.success('任务取消成功.');
@@ -40,9 +41,10 @@
        TaskHandCompletedBtn.onClick = function () {
          let rows = this.$refs.table.getSelected();
          if (rows.length == 0) return this.$error("请选择数据!");
          if (rows.length > 1) return this.$error("请选择一条数据!");
          var param = rows[0].taskNum;
          this.http
            .post("api/Task/TaskCompleted?taskNum="+param, "数据处理中...")
            .post("api/Task/TaskHandCompleted?taskNum="+param, "数据处理中...")
            .then((x) => {
              if (x.status) {
                this.$Message.success('任务手动完成');
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/07acc35c-ead1-4994-b934-522e5a78c90a.vsidx
Binary files differ
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/18586036-2c79-4884-b39a-f8ef4724fd70.vsidx
Binary files differ
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/3353fedf-ce91-4adc-bdb9-d8450ade5d0a.vsidx
Binary files differ
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/3b906d3f-9923-4824-a640-34936ca6bee2.vsidx
Binary files differ
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/3e57106d-d6ef-48e5-9877-2bb7a49660cc.vsidx
Binary files differ
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/83d54c19-601f-4f92-9ee0-9e0d1bad67c7.vsidx
Binary files differ
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/920d508b-6835-488d-985d-2352f20dfd85.vsidx
Binary files differ
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/a25ab2df-8d0e-478a-8bf5-7ede88f4c554.vsidx
Binary files differ
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/f9e8d8bc-d17e-44b5-842b-88f7aaeb9bc9.vsidx
Binary files differ
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/fba332bf-d213-42f0-aac1-323e218fd957.vsidx
Binary files differ
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Service/LocationInfoService.cs
@@ -127,32 +127,32 @@
        {
            try
            {
                Dt_LocationInfo result = isDepth(locations);
                int beforeStatusEnd = 0;
                if (black)
                {
                    (Dt_LocationInfo?, int?) result = isDepth(locations);
                    if (result.Item1 != null && (result.Item2 == LocationStatusEnum.Free.ObjToInt()|| result.Item2 == LocationStatusEnum.Lock.ObjToInt()))
                    if (result != null && (result.LocationStatus == LocationStatusEnum.Free.ObjToInt()|| result.LocationStatus == LocationStatusEnum.Lock.ObjToInt()))
                    {
                        int beforeStatusEnd = result.Item1.LocationStatus;
                        beforeStatusEnd = result.LocationStatus;
                        result.Item1.LocationStatus = LocationStatusEnum.Lock.ObjToInt();
                        result.LocationStatus = LocationStatusEnum.Lock.ObjToInt();
                        BaseDal.UpdateData(result.Item1);
                        BaseDal.UpdateData(result);
                        _recordService.LocationStatusChangeRecordSetvice.AddLocationStatusChangeRecord(result.Item1, beforeStatusEnd, changType, "", TaskNum);
                        _recordService.LocationStatusChangeRecordSetvice.AddLocationStatusChangeRecord(result, beforeStatusEnd, changType, "", TaskNum);
                    }
                }
                else
                {
                    (Dt_LocationInfo?, int?) result = isDepth(locations);
                    if (result.Item1 != null && result.Item2 == LocationStatusEnum.Free.ObjToInt())
                    if (result != null && result.LocationStatus == LocationStatusEnum.Free.ObjToInt())
                    {
                        int beforeStatusEnd = result.Item1.LocationStatus;
                        beforeStatusEnd = result.LocationStatus;
                        result.Item1.LocationStatus = LocationStatusEnum.Lock.ObjToInt();
                        result.LocationStatus = LocationStatusEnum.Lock.ObjToInt();
                        BaseDal.UpdateData(result.Item1);
                        BaseDal.UpdateData(result);
                        _recordService.LocationStatusChangeRecordSetvice.AddLocationStatusChangeRecord(result.Item1, beforeStatusEnd, changType, "", TaskNum);
                        _recordService.LocationStatusChangeRecordSetvice.AddLocationStatusChangeRecord(result, beforeStatusEnd, changType, "", TaskNum);
                    }
                }
                
@@ -167,16 +167,16 @@
        {
            try
            {
                (Dt_LocationInfo?, int?) result = isDepth(locations);
                if (result.Item1 != null)
                Dt_LocationInfo result = isDepth(locations);
                if (result != null)
                {
                    int beforeStatusEnd = result.Item1.LocationStatus;
                    int beforeStatusEnd = result.LocationStatus;
                    result.Item1.LocationStatus = LocationStatusEnum.Free.ObjToInt();
                    result.LocationStatus = LocationStatusEnum.Free.ObjToInt();
                    BaseDal.UpdateData(result.Item1);
                    BaseDal.UpdateData(result);
                    _recordService.LocationStatusChangeRecordSetvice.AddLocationStatusChangeRecord(result.Item1, beforeStatusEnd, changType, "", TaskNum);
                    _recordService.LocationStatusChangeRecordSetvice.AddLocationStatusChangeRecord(result, beforeStatusEnd, changType, "", TaskNum);
                }
            }
            catch (Exception ex)
@@ -185,7 +185,7 @@
            }
        }
        public (Dt_LocationInfo?,int?) isDepth(Dt_LocationInfo locationInfo)
        public Dt_LocationInfo isDepth(Dt_LocationInfo locationInfo)
        {
            if (locationInfo.Depth == 2)
            {
@@ -193,54 +193,23 @@
                {
                    Dt_LocationInfo dt_LocationInfo = BaseDal.QueryFirst(x => x.Row == locationInfo.Row + 1 && x.Layer == locationInfo.Layer && x.Column == locationInfo.Column && x.RoadwayNo == locationInfo.RoadwayNo);
                    if (dt_LocationInfo != null&& dt_LocationInfo.LocationStatus==LocationStatusEnum.InStock.ObjToInt())
                    if (dt_LocationInfo != null)
                    {
                        return (dt_LocationInfo, LocationStatusEnum.InStock.ObjToInt());
                        return dt_LocationInfo;
                    }
                    if (dt_LocationInfo != null && dt_LocationInfo.LocationStatus == LocationStatusEnum.Free.ObjToInt())
                    {
                        return (dt_LocationInfo, LocationStatusEnum.Free.ObjToInt());
                    }
                    if (dt_LocationInfo != null && dt_LocationInfo.LocationStatus == LocationStatusEnum.Lock.ObjToInt())
                    {
                        return (dt_LocationInfo, LocationStatusEnum.Lock.ObjToInt());
                    }
                    if (dt_LocationInfo != null && dt_LocationInfo.LocationStatus == LocationStatusEnum.PalletLock.ObjToInt())
                    {
                        return (dt_LocationInfo, LocationStatusEnum.PalletLock.ObjToInt());
                    }
                    if (dt_LocationInfo != null && dt_LocationInfo.LocationStatus == LocationStatusEnum.Pallet.ObjToInt())
                    {
                        return (dt_LocationInfo, LocationStatusEnum.Pallet.ObjToInt());
                    }
                }
                else if (locationInfo.Row == 4 || locationInfo.Row == 8)
                {
                    Dt_LocationInfo dt_LocationInfo = BaseDal.QueryFirst(x => x.Row == locationInfo.Row + 1 && x.Layer == locationInfo.Layer && x.Column == locationInfo.Column && x.RoadwayNo == locationInfo.RoadwayNo);
                    if (dt_LocationInfo != null && dt_LocationInfo.LocationStatus == LocationStatusEnum.InStock.ObjToInt())
                    if (dt_LocationInfo != null)
                    {
                        return (dt_LocationInfo, LocationStatusEnum.InStock.ObjToInt());
                    }
                    if (dt_LocationInfo != null && dt_LocationInfo.LocationStatus == LocationStatusEnum.Free.ObjToInt())
                    {
                        return (dt_LocationInfo, LocationStatusEnum.Free.ObjToInt());
                    }
                    if (dt_LocationInfo != null && dt_LocationInfo.LocationStatus == LocationStatusEnum.Lock.ObjToInt())
                    {
                        return (dt_LocationInfo, LocationStatusEnum.Lock.ObjToInt());
                    }
                    if (dt_LocationInfo != null && dt_LocationInfo.LocationStatus == LocationStatusEnum.PalletLock.ObjToInt())
                    {
                        return (dt_LocationInfo, LocationStatusEnum.PalletLock.ObjToInt());
                    }
                    if (dt_LocationInfo != null && dt_LocationInfo.LocationStatus == LocationStatusEnum.Pallet.ObjToInt())
                    {
                        return (dt_LocationInfo, LocationStatusEnum.Pallet.ObjToInt());
                        return dt_LocationInfo;
                    }
                }
            }
            return (null, LocationStatusEnum.Free.ObjToInt());
            return null;
        }
        public void RelocationLock(Dt_LocationInfo locationInfo, Dt_LocationInfo locationInfos, int TaskNum)
        {
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_IBasicService/ILocationInfoService.cs
@@ -24,7 +24,7 @@
        void UpdateLocationLock(Dt_LocationInfo locationInfo,int task, int changType,bool black);
        void UpdateLocationFree(Dt_LocationInfo locationInfo, int task, int changType, bool black);
        //(Dt_LocationInfo?,int) isDepth(Dt_LocationInfo locationInfo);
        Dt_LocationInfo isDepth(Dt_LocationInfo locationInfo);
        void RelocationLock(Dt_LocationInfo locationInfo, Dt_LocationInfo locationInfos,int TaskNum);
        void RelocationFree(Dt_LocationInfo locations, int TaskNum);
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_IRecordService/ILocationStatusChangeRecordSetvice.cs
@@ -3,6 +3,7 @@
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WIDESEA_Core;
using WIDESEA_Core.BaseServices;
using WIDESEA_IRecordRepository;
using WIDESEA_Model.Models;
@@ -16,5 +17,7 @@
        void AddLocationStatusChangeRecord(Dt_LocationInfo locationInfo, int lastStatus, int changeType, string orderNo, int? taskNum);
        void AddLocationStatusChangeRecord(List<Dt_LocationInfo> locationInfos, int newStatus, int changeType, string? orderNo, List<int>? taskNums);
        WebResponseContent GetLocationState(int id);
    }
}
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_RecordService/Service/LocationStatusChangeRecordSetvice.cs
@@ -4,8 +4,10 @@
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WIDESEA_Core;
using WIDESEA_Core.BaseServices;
using WIDESEA_Core.DB;
using WIDESEA_Core.Enums;
using WIDESEA_Core.Seed;
using WIDESEA_IRecordRepository;
using WIDESEA_IRecordService;
@@ -17,42 +19,73 @@
    {
        public void AddLocationStatusChangeRecord(Dt_LocationInfo locationInfo, int lastStatus, int changeType, string? orderNo, int? taskNum)
        {
            Dt_LocationStatusChangeRecord locationStatusChangeRecord = new Dt_LocationStatusChangeRecord()
            try
            {
                AfterStatus = locationInfo.LocationStatus,
                BeforeStatus = lastStatus,
                ChangeType = changeType,
                LocationCode = locationInfo.LocationCode,
                LocationId = locationInfo.Id,
                TaskNum = taskNum,
                OrderNo = orderNo ?? ""
            };
            BaseDal.AddData(locationStatusChangeRecord);
        }
        public void AddLocationStatusChangeRecord(List<Dt_LocationInfo> locationInfos, int newStatus, int changeType, string? orderNo, List<int>? taskNums)
        {
            List< Dt_LocationStatusChangeRecord > records = new List<Dt_LocationStatusChangeRecord> ();
            for (int i = 0; i < locationInfos.Count; i++)
            {
                Dt_LocationInfo locationInfo = locationInfos[i];
                int? taskNum = (taskNums != null && taskNums.Count > 0 && taskNums.Count == locationInfos.Count) ? taskNums[i] : null;
                Dt_LocationStatusChangeRecord locationStatusChangeRecord = new Dt_LocationStatusChangeRecord()
                {
                    AfterStatus = newStatus,
                    BeforeStatus = locationInfo.LocationStatus,
                    AfterStatus = locationInfo.LocationStatus,
                    BeforeStatus = lastStatus,
                    ChangeType = changeType,
                    LocationCode = locationInfo.LocationCode,
                    LocationId = locationInfo.Id,
                    TaskNum = taskNum,
                    OrderNo = orderNo ?? ""
                    OrderNo = orderNo ?? "",
                    Creater = App.User.UserId == 0 ? "" : "WCS",
                    CreateDate = App.User.UserId == 0 ? DateTime.Now : DateTime.Now,
                };
                records.Add(locationStatusChangeRecord);
            }
            BaseDal.AddData(records);
                BaseDal.AddData(locationStatusChangeRecord);
            }
            catch (Exception ex)
            {
                throw new Exception($"{ex.Message}");
            }
        }
        public void AddLocationStatusChangeRecord(List<Dt_LocationInfo> locationInfos, int newStatus, int changeType, string? orderNo, List<int>? taskNums)
        {
            try
            {
                List<Dt_LocationStatusChangeRecord> records = new List<Dt_LocationStatusChangeRecord>();
                for (int i = 0; i < locationInfos.Count; i++)
                {
                    Dt_LocationInfo locationInfo = locationInfos[i];
                    int? taskNum = (taskNums != null && taskNums.Count > 0 && taskNums.Count == locationInfos.Count) ? taskNums[i] : null;
                    Dt_LocationStatusChangeRecord locationStatusChangeRecord = new Dt_LocationStatusChangeRecord()
                    {
                        AfterStatus = newStatus,
                        BeforeStatus = locationInfo.LocationStatus,
                        ChangeType = changeType,
                        LocationCode = locationInfo.LocationCode,
                        LocationId = locationInfo.Id,
                        TaskNum = taskNum,
                        OrderNo = orderNo ?? ""
                    };
                    records.Add(locationStatusChangeRecord);
                }
                BaseDal.AddData(records);
            }
            catch (Exception ex)
            {
                throw new Exception($"{ex.Message}");
            }
        }
        public WebResponseContent GetLocationState(int id)
        {
            WebResponseContent content = new WebResponseContent();
            try
            {
                List<Dt_LocationStatusChangeRecord> location=BaseDal.QueryData(x=>x.LocationId== id).ToList();
                return content = WebResponseContent.Instance.OK(data: location);
            }
            catch (Exception ex)
            {
                return content = WebResponseContent.Instance.Error(ex.Message);
            }
        }
    }
}
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/PartialTaskService_Inbound.cs
@@ -120,6 +120,7 @@
                        TargetAddress = locationInfo.LocationCode,
                        TaskStatus = InTaskStatusEnum.InNew.ObjToInt(),
                        TaskType = taskType,
                        Depth= locationInfo.Depth,
                    };
                    BaseDal.AddData(task);
                    int beforeStatus = locationInfo.LocationStatus;
@@ -155,7 +156,8 @@
                    var response = HttpHelper.Post<WebResponseContent>(url + "ReceiveTask/", tasks, "入库任务下发");
                    if (!response.Status)
                    {
                        return content = WebResponseContent.Instance.Error("任务下发异常");
                        _unitOfWorkManage.RollbackTran();
                        return content = WebResponseContent.Instance.Error($"{response.Message}");
                    }
                    _unitOfWorkManage.CommitTran();
                    return content = WebResponseContent.Instance.OK();
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/PartialTaskService_Outbound.cs
@@ -12,6 +12,7 @@
using System.Reflection.Metadata;
using OfficeOpenXml.FormulaParsing.Excel.Functions.RefAndLookup;
using SkiaSharp;
using System.Collections;
namespace WIDESEA_TaskInfoService
{
@@ -156,14 +157,31 @@
                _unitOfWorkManage.BeginTran();
                //判断移库
                (List<Dt_Task>?, List<Dt_Task>?) result=RelocationTasks(tasks.OrderBy(x=>x.Depth).ToList());
                if(result.Item1 != null)
                if (result.Item1 != null && result.Item1.Count >0)
                {
                    AddData(result.Item1);
                    var response = HttpHelper.Post<WebResponseContent>(url + "ReceiveTask/", result.Item1, "入库任务下发");
                    if (!response.Status)
                    {
                        _unitOfWorkManage.RollbackTran();
                        return content = WebResponseContent.Instance.Error($"{response.Message}");
                    }
                }
                for (int i = 0; i < result.Item2.Count; i++)
                if(result.Item2 != null&&result.Item2.Count>0)
                {
                    for (int i = 0; i < result.Item2.Count; i++)
                    {
                        Dt_LocationInfo location = _basicService.LocationInfoService.Repository.QueryFirst(x => x.LocationCode == result.Item2[i].SourceAddress && x.RoadwayNo == result.Item2[i].Roadway);
                        _basicService.LocationInfoService.UpdateLocationLock(location, result.Item2[i].TaskNum, StockChangeType.Outbound.ObjToInt(), false);
                    }
                    AddData(result.Item2);
                    var response = HttpHelper.Post<WebResponseContent>(url + "ReceiveTask/", result.Item2, "入库任务下发");
                    if (!response.Status)
                    {
                        _unitOfWorkManage.RollbackTran();
                        return content = WebResponseContent.Instance.Error($"{response.Message}");
                    }
                }
                
@@ -215,8 +233,8 @@
                        int befoStatus=location.LocationStatus.ObjToInt();
                        if (location != null)
                        {
                            Dt_LocationInfo result = isDepth(location);
                            if (result != null && result.LocationStatus == LocationStatusEnum.Lock.ObjToInt() && result.LocationStatus != LocationStatusEnum.PalletLock.ObjToInt() && result.LocationStatus != LocationStatusEnum.Free.ObjToInt())
                            Dt_LocationInfo result = _basicService.LocationInfoService.isDepth(location);
                            if (result != null && result.LocationStatus != LocationStatusEnum.Lock.ObjToInt() && result.LocationStatus != LocationStatusEnum.PalletLock.ObjToInt() && result.LocationStatus != LocationStatusEnum.Free.ObjToInt())
                            {
                                int sum = 0;
                                for (int j = 0; j < task.Count; j++)
@@ -230,8 +248,8 @@
                                {
                                    Dt_Task relocariontask = RelocationTask(result);
                                    task[i].Grade=1;
                                    tasks.Add(task[i]);
                                    relocationList.Add(relocariontask);
                                    relocationList.Add(task[i]);
                                }
                                else
                                {
@@ -270,7 +288,7 @@
                            break;
                        }
                    }
                    return (tasks, relocationList);
                    return (relocationList,tasks);
                }
                else
                {
@@ -309,8 +327,12 @@
                            TargetAddress = locationInfos.LocationCode,
                            TaskStatus = InTaskStatusEnum.RelocationNew.ObjToInt(),
                            TaskType = TaskTypeEnum.Relocation.ObjToInt(),
                            Depth= location.Depth,
                            TaskNum = BaseDal.GetTaskNum(nameof(SequenceEnum.SeqTaskNum))
                        };
                        _basicService.LocationInfoService.RelocationLock(location, locationInfos, tasks.TaskNum);
                        stockInfo.StockStatus= StockStatusEmun.移库锁定.ObjToInt();
                        _stockService.StockInfoService.Repository.UpdateData(stockInfo);
                        return tasks;
                    }
                    else
@@ -418,20 +440,46 @@
                    TaskType = TaskTypeEnum.PalletOutbound.ObjToInt(),
                    Depth = locationInfo.Depth,
                    TaskNum = BaseDal.GetTaskNum(nameof(SequenceEnum.SeqTaskNum))
                };
                int beforeStatus = locationInfo.LocationStatus;
                _unitOfWorkManage.BeginTran();
                stockInfo.StockStatus = StockStatusEmun.出库锁定.ObjToInt();
                locationInfo.LocationStatus = LocationStatusEnum.Lock.ObjToInt();
                BaseDal.AddData(task);
                List<Dt_Task> tasks=new List<Dt_Task>();
                tasks.Add(task);
                (List<Dt_Task>?, List<Dt_Task>?) result = RelocationTasks(tasks.OrderBy(x => x.Depth).ToList());
                if (result.Item1 != null && result.Item1.Count > 0)
                {
                    AddData(result.Item1);
                    var response = HttpHelper.Post<WebResponseContent>(url + "ReceiveTask/", result.Item1, "入库任务下发");
                    if (!response.Status)
                    {
                        _unitOfWorkManage.RollbackTran();
                        return  WebResponseContent.Instance.Error($"{response.Message}");
                    }
                }
                if (result.Item2 != null && result.Item2.Count > 0)
                {
                    for (int i = 0; i < result.Item2.Count; i++)
                    {
                        Dt_LocationInfo location = _basicService.LocationInfoService.Repository.QueryFirst(x => x.LocationCode == result.Item2[i].SourceAddress && x.RoadwayNo == result.Item2[i].Roadway);
                        _basicService.LocationInfoService.UpdateLocationLock(location, result.Item2[i].TaskNum, StockChangeType.Outbound.ObjToInt(), false);
                    }
                    AddData(result.Item2);
                    var response = HttpHelper.Post<WebResponseContent>(url + "ReceiveTask/", result.Item2, "入库任务下发");
                    if (!response.Status)
                    {
                        _unitOfWorkManage.RollbackTran();
                        return  WebResponseContent.Instance.Error($"{response.Message}");
                    }
                }
                _stockService.StockInfoService.UpdateData(stockInfo);
                _basicService.LocationInfoService.UpdateData(locationInfo);
                _basicService.LocationInfoService.UpdateLocationLock(locationInfo, task.TaskNum, StockChangeType.Outbound.ObjToInt(), false);
                _recordService.LocationStatusChangeRecordSetvice.AddLocationStatusChangeRecord(locationInfo, beforeStatus, StockChangeType.Outbound.ObjToInt(), "", task.TaskNum);
                _unitOfWorkManage.CommitTran();
                return WebResponseContent.Instance.OK();
            }
@@ -439,33 +487,6 @@
            {
                return WebResponseContent.Instance.Error(ex.Message);
            }
        }
        public Dt_LocationInfo isDepth(Dt_LocationInfo locationInfo)
        {
            if (locationInfo.Depth == 2)
            {
                if (locationInfo.Row == 1 || locationInfo.Row == 5)
                {
                    Dt_LocationInfo dt_LocationInfo = _basicService.LocationInfoService.Repository.QueryFirst(x => x.Row == locationInfo.Row + 1 && x.Layer == locationInfo.Layer && x.Column == locationInfo.Column && x.RoadwayNo == locationInfo.RoadwayNo);
                    if (dt_LocationInfo != null)
                    {
                        return dt_LocationInfo;
                    }
                }
                else if (locationInfo.Row == 4 || locationInfo.Row == 8)
                {
                    Dt_LocationInfo dt_LocationInfo = _basicService.LocationInfoService.Repository.QueryFirst(x => x.Row == locationInfo.Row + 1 && x.Layer == locationInfo.Layer && x.Column == locationInfo.Column && x.RoadwayNo == locationInfo.RoadwayNo);
                    if (dt_LocationInfo != null && dt_LocationInfo.LocationStatus == LocationStatusEnum.InStock.ObjToInt())
                    {
                        return dt_LocationInfo;
                    }
                }
            }
            return null;
        }
    }
}
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService.cs
@@ -223,7 +223,9 @@
                {
                    PalletCode = task.PalletCode,
                    LocationCode = task.TargetAddress,
                    StockStatus = StockStatusEmun.已入库.ObjToInt()
                    StockStatus = StockStatusEmun.已入库.ObjToInt(),
                    Creater = App.User.UserId == 0 ? "" : "WCS",
                    CreateDate = App.User.UserId == 0 ? DateTime.Now : DateTime.Now,
                };
                Dt_LocationInfo locationInfo = _basicService.LocationInfoService.Repository.QueryFirst(x => x.LocationCode == task.TargetAddress);
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Record/LocationStatusChangeRecordController.cs
@@ -1,5 +1,7 @@
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using WIDESEA_Core;
using WIDESEA_Core.BaseController;
using WIDESEA_IRecordService;
using WIDESEA_Model.Models;
@@ -13,5 +15,10 @@
        public LocationStatusChangeRecordController(ILocationStatusChangeRecordSetvice service) : base(service)
        {
        }
        [HttpPost, HttpGet,Route("GetLocationState")]
        public WebResponseContent GetLocationState(int id)
        {
            return Service.GetLocationState(id);
        }
    }
}
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Log/System/APIÇëÇó/2024-11-04/Èë¿âÈÎÎñÏ·¢241104.txt
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,160 @@
2024/11/4 9:53:57.186
请求异常
{"请求报文":[],"接收报文":"","错误":"由于目标计算机积极拒绝,无法连接。 [::ffff:127.0.0.1]:9291 (localhost:9291)"}
-------------------------------
2024/11/4 9:54:12.384
请求异常
{"请求报文":[],"接收报文":"","错误":"由于目标计算机积极拒绝,无法连接。 [::ffff:127.0.0.1]:9291 (localhost:9291)"}
-------------------------------
2024/11/4 9:55:52.71
请求成功
{"请求报文":[],"接收报文":"{\"status\":false,\"code\":0,\"message\":null,\"data\":null,\"devMessage\":null}"}
-------------------------------
2024/11/4 9:56:20.133
请求成功
{"请求报文":[],"接收报文":"{\"status\":false,\"code\":0,\"message\":null,\"data\":null,\"devMessage\":null}"}
-------------------------------
2024/11/4 9:56:50.817
请求成功
{"请求报文":[],"接收报文":"{\"status\":false,\"code\":0,\"message\":null,\"data\":null,\"devMessage\":null}"}
-------------------------------
2024/11/4 9:57:26.66
请求异常
{"请求报文":[],"接收报文":"","错误":"The operation has timed out."}
-------------------------------
2024/11/4 10:19:50.583
请求成功
{"请求报文":[{"TaskId":0,"TaskNum":415,"PalletCode":"A00004","Roadway":"R01","TaskType":300,"TaskStatus":300,"SourceAddress":"R01-002-001-001-01","TargetAddress":"R01-001-001-003-02","CurrentAddress":"R01-002-001-001-01","NextAddress":"R01-001-001-003-02","Depth":0,"OrderNo":null,"Grade":0,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:19:49.2440976+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":413,"PalletCode":"A00001","Roadway":"R01","TaskType":100,"TaskStatus":100,"SourceAddress":"R01-001-001-001-02","TargetAddress":"004-000-001","CurrentAddress":"R01-001-001-001-02","NextAddress":"004-000-001","Depth":2,"OrderNo":null,"Grade":1,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:19:49.2473686+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":416,"PalletCode":"A00003","Roadway":"R01","TaskType":300,"TaskStatus":300,"SourceAddress":"R01-002-001-002-01","TargetAddress":"R01-001-001-003-02","CurrentAddress":"R01-002-001-002-01","NextAddress":"R01-001-001-003-02","Depth":0,"OrderNo":null,"Grade":0,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:19:49.2496615+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":414,"PalletCode":"A00002","Roadway":"R01","TaskType":100,"TaskStatus":100,"SourceAddress":"R01-001-001-002-02","TargetAddress":"004-000-001","CurrentAddress":"R01-001-001-002-02","NextAddress":"004-000-001","Depth":2,"OrderNo":null,"Grade":1,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:19:49.2518787+08:00","Modifier":null,"ModifyDate":null}],"接收报文":"{\"status\":false,\"code\":0,\"message\":\"有重复任务\",\"data\":null,\"devMessage\":null}"}
-------------------------------
2024/11/4 10:20:51.349
请求成功
{"请求报文":[{"TaskId":0,"TaskNum":419,"PalletCode":"A00004","Roadway":"R01","TaskType":300,"TaskStatus":300,"SourceAddress":"R01-002-001-001-01","TargetAddress":"R01-001-001-003-02","CurrentAddress":"R01-002-001-001-01","NextAddress":"R01-001-001-003-02","Depth":0,"OrderNo":null,"Grade":0,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:20:51.2850466+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":417,"PalletCode":"A00001","Roadway":"R01","TaskType":100,"TaskStatus":100,"SourceAddress":"R01-001-001-001-02","TargetAddress":"004-000-001","CurrentAddress":"R01-001-001-001-02","NextAddress":"004-000-001","Depth":2,"OrderNo":null,"Grade":1,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:20:51.2887037+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":420,"PalletCode":"A00003","Roadway":"R01","TaskType":300,"TaskStatus":300,"SourceAddress":"R01-002-001-002-01","TargetAddress":"R01-001-001-003-02","CurrentAddress":"R01-002-001-002-01","NextAddress":"R01-001-001-003-02","Depth":0,"OrderNo":null,"Grade":0,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:20:51.2917218+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":418,"PalletCode":"A00002","Roadway":"R01","TaskType":100,"TaskStatus":100,"SourceAddress":"R01-001-001-002-02","TargetAddress":"004-000-001","CurrentAddress":"R01-001-001-002-02","NextAddress":"004-000-001","Depth":2,"OrderNo":null,"Grade":1,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:20:51.2950052+08:00","Modifier":null,"ModifyDate":null}],"接收报文":"{\"status\":false,\"code\":0,\"message\":\"有重复任务\",\"data\":null,\"devMessage\":null}"}
-------------------------------
2024/11/4 10:21:26.449
请求成功
{"请求报文":[{"TaskId":0,"TaskNum":423,"PalletCode":"A00004","Roadway":"R01","TaskType":300,"TaskStatus":300,"SourceAddress":"R01-002-001-001-01","TargetAddress":"R01-001-001-003-02","CurrentAddress":"R01-002-001-001-01","NextAddress":"R01-001-001-003-02","Depth":0,"OrderNo":null,"Grade":0,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:21:26.3802505+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":421,"PalletCode":"A00001","Roadway":"R01","TaskType":100,"TaskStatus":100,"SourceAddress":"R01-001-001-001-02","TargetAddress":"004-000-001","CurrentAddress":"R01-001-001-001-02","NextAddress":"004-000-001","Depth":2,"OrderNo":null,"Grade":1,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:21:26.3815239+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":424,"PalletCode":"A00003","Roadway":"R01","TaskType":300,"TaskStatus":300,"SourceAddress":"R01-002-001-002-01","TargetAddress":"R01-001-001-003-02","CurrentAddress":"R01-002-001-002-01","NextAddress":"R01-001-001-003-02","Depth":0,"OrderNo":null,"Grade":0,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:21:26.3825181+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":422,"PalletCode":"A00002","Roadway":"R01","TaskType":100,"TaskStatus":100,"SourceAddress":"R01-001-001-002-02","TargetAddress":"004-000-001","CurrentAddress":"R01-001-001-002-02","NextAddress":"004-000-001","Depth":2,"OrderNo":null,"Grade":1,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:21:26.384303+08:00","Modifier":null,"ModifyDate":null}],"接收报文":"{\"status\":false,\"code\":0,\"message\":\"有重复任务\",\"data\":null,\"devMessage\":null}"}
-------------------------------
2024/11/4 10:22:29.166
请求成功
{"请求报文":[{"TaskId":0,"TaskNum":427,"PalletCode":"A00004","Roadway":"R01","TaskType":300,"TaskStatus":300,"SourceAddress":"R01-002-001-001-01","TargetAddress":"R01-001-001-003-02","CurrentAddress":"R01-002-001-001-01","NextAddress":"R01-001-001-003-02","Depth":0,"OrderNo":null,"Grade":0,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:22:26.8088437+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":425,"PalletCode":"A00001","Roadway":"R01","TaskType":100,"TaskStatus":100,"SourceAddress":"R01-001-001-001-02","TargetAddress":"004-000-001","CurrentAddress":"R01-001-001-001-02","NextAddress":"004-000-001","Depth":2,"OrderNo":null,"Grade":1,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:22:26.810592+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":428,"PalletCode":"A00003","Roadway":"R01","TaskType":300,"TaskStatus":300,"SourceAddress":"R01-002-001-002-01","TargetAddress":"R01-001-001-003-02","CurrentAddress":"R01-002-001-002-01","NextAddress":"R01-001-001-003-02","Depth":0,"OrderNo":null,"Grade":0,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:22:26.8123729+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":426,"PalletCode":"A00002","Roadway":"R01","TaskType":100,"TaskStatus":100,"SourceAddress":"R01-001-001-002-02","TargetAddress":"004-000-001","CurrentAddress":"R01-001-001-002-02","NextAddress":"004-000-001","Depth":2,"OrderNo":null,"Grade":1,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:22:26.8152624+08:00","Modifier":null,"ModifyDate":null}],"接收报文":"{\"status\":false,\"code\":0,\"message\":null,\"data\":null,\"devMessage\":null}"}
-------------------------------
2024/11/4 10:23:09.928
请求成功
{"请求报文":[{"TaskId":0,"TaskNum":431,"PalletCode":"A00004","Roadway":"R01","TaskType":300,"TaskStatus":300,"SourceAddress":"R01-002-001-001-01","TargetAddress":"R01-001-001-003-02","CurrentAddress":"R01-002-001-001-01","NextAddress":"R01-001-001-003-02","Depth":0,"OrderNo":null,"Grade":0,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:23:09.7956154+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":429,"PalletCode":"A00001","Roadway":"R01","TaskType":100,"TaskStatus":100,"SourceAddress":"R01-001-001-001-02","TargetAddress":"004-000-001","CurrentAddress":"R01-001-001-001-02","NextAddress":"004-000-001","Depth":2,"OrderNo":null,"Grade":1,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:23:09.7979905+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":432,"PalletCode":"A00003","Roadway":"R01","TaskType":300,"TaskStatus":300,"SourceAddress":"R01-002-001-002-01","TargetAddress":"R01-001-001-003-02","CurrentAddress":"R01-002-001-002-01","NextAddress":"R01-001-001-003-02","Depth":0,"OrderNo":null,"Grade":0,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:23:09.7990715+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":430,"PalletCode":"A00002","Roadway":"R01","TaskType":100,"TaskStatus":100,"SourceAddress":"R01-001-001-002-02","TargetAddress":"004-000-001","CurrentAddress":"R01-001-001-002-02","NextAddress":"004-000-001","Depth":2,"OrderNo":null,"Grade":1,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:23:09.8006488+08:00","Modifier":null,"ModifyDate":null}],"接收报文":"{\"status\":false,\"code\":0,\"message\":\"有重复任务\",\"data\":null,\"devMessage\":null}"}
-------------------------------
2024/11/4 10:24:13.65
请求成功
{"请求报文":[{"TaskId":0,"TaskNum":435,"PalletCode":"A00004","Roadway":"R01","TaskType":300,"TaskStatus":300,"SourceAddress":"R01-002-001-001-01","TargetAddress":"R01-001-001-003-02","CurrentAddress":"R01-002-001-001-01","NextAddress":"R01-001-001-003-02","Depth":0,"OrderNo":null,"Grade":0,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:24:12.4011388+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":433,"PalletCode":"A00001","Roadway":"R01","TaskType":100,"TaskStatus":100,"SourceAddress":"R01-001-001-001-02","TargetAddress":"004-000-001","CurrentAddress":"R01-001-001-001-02","NextAddress":"004-000-001","Depth":2,"OrderNo":null,"Grade":1,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:24:12.4030226+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":436,"PalletCode":"A00003","Roadway":"R01","TaskType":300,"TaskStatus":300,"SourceAddress":"R01-002-001-002-01","TargetAddress":"R01-001-001-003-02","CurrentAddress":"R01-002-001-002-01","NextAddress":"R01-001-001-003-02","Depth":0,"OrderNo":null,"Grade":0,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:24:12.4048304+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":434,"PalletCode":"A00002","Roadway":"R01","TaskType":100,"TaskStatus":100,"SourceAddress":"R01-001-001-002-02","TargetAddress":"004-000-001","CurrentAddress":"R01-001-001-002-02","NextAddress":"004-000-001","Depth":2,"OrderNo":null,"Grade":1,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:24:12.4066698+08:00","Modifier":null,"ModifyDate":null}],"接收报文":"{\"status\":false,\"code\":0,\"message\":\"有重复任务\",\"data\":null,\"devMessage\":null}"}
-------------------------------
2024/11/4 10:25:15.736
请求成功
{"请求报文":[{"TaskId":0,"TaskNum":439,"PalletCode":"A00004","Roadway":"R01","TaskType":300,"TaskStatus":300,"SourceAddress":"R01-002-001-001-01","TargetAddress":"R01-001-001-003-02","CurrentAddress":"R01-002-001-001-01","NextAddress":"R01-001-001-003-02","Depth":0,"OrderNo":null,"Grade":0,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:25:15.221733+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":437,"PalletCode":"A00001","Roadway":"R01","TaskType":100,"TaskStatus":100,"SourceAddress":"R01-001-001-001-02","TargetAddress":"004-000-001","CurrentAddress":"R01-001-001-001-02","NextAddress":"004-000-001","Depth":2,"OrderNo":null,"Grade":1,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:25:15.2227163+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":440,"PalletCode":"A00003","Roadway":"R01","TaskType":300,"TaskStatus":300,"SourceAddress":"R01-002-001-002-01","TargetAddress":"R01-001-001-003-02","CurrentAddress":"R01-002-001-002-01","NextAddress":"R01-001-001-003-02","Depth":0,"OrderNo":null,"Grade":0,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:25:15.2236295+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":438,"PalletCode":"A00002","Roadway":"R01","TaskType":100,"TaskStatus":100,"SourceAddress":"R01-001-001-002-02","TargetAddress":"004-000-001","CurrentAddress":"R01-001-001-002-02","NextAddress":"004-000-001","Depth":2,"OrderNo":null,"Grade":1,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:25:15.2245199+08:00","Modifier":null,"ModifyDate":null}],"接收报文":"{\"status\":false,\"code\":0,\"message\":null,\"data\":null,\"devMessage\":null}"}
-------------------------------
2024/11/4 10:26:46.895
请求成功
{"请求报文":[{"TaskId":0,"TaskNum":443,"PalletCode":"A00004","Roadway":"R01","TaskType":300,"TaskStatus":300,"SourceAddress":"R01-002-001-001-01","TargetAddress":"R01-001-001-003-02","CurrentAddress":"R01-002-001-001-01","NextAddress":"R01-001-001-003-02","Depth":0,"OrderNo":null,"Grade":0,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:26:43.2786121+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":441,"PalletCode":"A00001","Roadway":"R01","TaskType":100,"TaskStatus":100,"SourceAddress":"R01-001-001-001-02","TargetAddress":"004-000-001","CurrentAddress":"R01-001-001-001-02","NextAddress":"004-000-001","Depth":2,"OrderNo":null,"Grade":1,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:26:43.2807654+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":444,"PalletCode":"A00003","Roadway":"R01","TaskType":300,"TaskStatus":300,"SourceAddress":"R01-002-001-002-01","TargetAddress":"R01-001-001-003-02","CurrentAddress":"R01-002-001-002-01","NextAddress":"R01-001-001-003-02","Depth":0,"OrderNo":null,"Grade":0,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:26:43.2823247+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":442,"PalletCode":"A00002","Roadway":"R01","TaskType":100,"TaskStatus":100,"SourceAddress":"R01-001-001-002-02","TargetAddress":"004-000-001","CurrentAddress":"R01-001-001-002-02","NextAddress":"004-000-001","Depth":2,"OrderNo":null,"Grade":1,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:26:43.2837437+08:00","Modifier":null,"ModifyDate":null}],"接收报文":"{\"status\":false,\"code\":0,\"message\":\"添加任务成功\",\"data\":null,\"devMessage\":null}"}
-------------------------------
2024/11/4 10:27:42.373
请求成功
{"请求报文":[{"TaskId":0,"TaskNum":447,"PalletCode":"A00004","Roadway":"R01","TaskType":300,"TaskStatus":300,"SourceAddress":"R01-002-001-001-01","TargetAddress":"R01-001-001-003-02","CurrentAddress":"R01-002-001-001-01","NextAddress":"R01-001-001-003-02","Depth":0,"OrderNo":null,"Grade":0,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:27:38.0597215+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":445,"PalletCode":"A00001","Roadway":"R01","TaskType":100,"TaskStatus":100,"SourceAddress":"R01-001-001-001-02","TargetAddress":"004-000-001","CurrentAddress":"R01-001-001-001-02","NextAddress":"004-000-001","Depth":2,"OrderNo":null,"Grade":1,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:27:38.0616766+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":448,"PalletCode":"A00003","Roadway":"R01","TaskType":300,"TaskStatus":300,"SourceAddress":"R01-002-001-002-01","TargetAddress":"R01-001-001-003-02","CurrentAddress":"R01-002-001-002-01","NextAddress":"R01-001-001-003-02","Depth":0,"OrderNo":null,"Grade":0,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:27:38.0650421+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":446,"PalletCode":"A00002","Roadway":"R01","TaskType":100,"TaskStatus":100,"SourceAddress":"R01-001-001-002-02","TargetAddress":"004-000-001","CurrentAddress":"R01-001-001-002-02","NextAddress":"004-000-001","Depth":2,"OrderNo":null,"Grade":1,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:27:38.0686934+08:00","Modifier":null,"ModifyDate":null}],"接收报文":"{\"status\":true,\"code\":0,\"message\":\"添加任务成功\",\"data\":null,\"devMessage\":null}"}
-------------------------------
2024/11/4 10:42:12.190
请求成功
{"请求报文":[{"TaskId":0,"TaskNum":451,"PalletCode":"A0001","Roadway":"R01","TaskType":204,"TaskStatus":200,"SourceAddress":"001-001-001","TargetAddress":"R01-001-001-003-02","CurrentAddress":"001-001-001","NextAddress":"R01-001-001-003-02","Depth":0,"OrderNo":null,"Grade":2,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:42:11.3328194+08:00","Modifier":null,"ModifyDate":null}],"接收报文":"{\"status\":true,\"code\":0,\"message\":\"添加任务成功\",\"data\":null,\"devMessage\":null}"}
-------------------------------
2024/11/4 10:43:34.153
请求成功
{"请求报文":[{"TaskId":0,"TaskNum":452,"PalletCode":"A0002","Roadway":"R01","TaskType":204,"TaskStatus":200,"SourceAddress":"001-001-001","TargetAddress":"R01-002-001-003-01","CurrentAddress":"001-001-001","NextAddress":"R01-002-001-003-01","Depth":0,"OrderNo":null,"Grade":2,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:43:33.6068981+08:00","Modifier":null,"ModifyDate":null}],"接收报文":"{\"status\":true,\"code\":0,\"message\":\"添加任务成功\",\"data\":null,\"devMessage\":null}"}
-------------------------------
2024/11/4 10:47:16.953
请求成功
{"请求报文":[{"TaskId":0,"TaskNum":456,"PalletCode":"A0002","Roadway":"R01","TaskType":300,"TaskStatus":300,"SourceAddress":"R01-002-001-002-01","TargetAddress":"R01-001-001-003-02","CurrentAddress":"R01-002-001-002-01","NextAddress":"R01-001-001-003-02","Depth":0,"OrderNo":null,"Grade":0,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:47:16.2321019+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":455,"PalletCode":"A00003","Roadway":"R01","TaskType":100,"TaskStatus":100,"SourceAddress":"R01-001-001-002-02","TargetAddress":"004-000-001","CurrentAddress":"R01-001-001-002-02","NextAddress":"004-000-001","Depth":2,"OrderNo":null,"Grade":1,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:47:16.2356252+08:00","Modifier":null,"ModifyDate":null}],"接收报文":"{\"status\":false,\"code\":0,\"message\":\"有重复任务\",\"data\":null,\"devMessage\":null}"}
-------------------------------
2024/11/4 10:48:14.895
请求成功
{"请求报文":[{"TaskId":0,"TaskNum":458,"PalletCode":"A0002","Roadway":"R01","TaskType":300,"TaskStatus":300,"SourceAddress":"R01-002-001-002-01","TargetAddress":"R01-001-001-003-02","CurrentAddress":"R01-002-001-002-01","NextAddress":"R01-001-001-003-02","Depth":0,"OrderNo":null,"Grade":0,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:48:14.7744432+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":457,"PalletCode":"A00003","Roadway":"R01","TaskType":100,"TaskStatus":100,"SourceAddress":"R01-001-001-002-02","TargetAddress":"004-000-001","CurrentAddress":"R01-001-001-002-02","NextAddress":"004-000-001","Depth":2,"OrderNo":null,"Grade":1,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:48:14.7779773+08:00","Modifier":null,"ModifyDate":null}],"接收报文":"{\"status\":true,\"code\":0,\"message\":\"添加任务成功\",\"data\":null,\"devMessage\":null}"}
-------------------------------
2024/11/4 10:55:08.381
请求成功
{"请求报文":[{"TaskId":0,"TaskNum":461,"PalletCode":"A0001","Roadway":"R01","TaskType":300,"TaskStatus":300,"SourceAddress":"R01-002-001-001-01","TargetAddress":"R01-001-001-002-02","CurrentAddress":"R01-002-001-001-01","NextAddress":"R01-001-001-002-02","Depth":0,"OrderNo":null,"Grade":0,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:55:08.0746923+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":460,"PalletCode":"A00004","Roadway":"R01","TaskType":100,"TaskStatus":100,"SourceAddress":"R01-001-001-001-02","TargetAddress":"004-000-001","CurrentAddress":"R01-001-001-001-02","NextAddress":"004-000-001","Depth":2,"OrderNo":null,"Grade":1,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T10:55:08.0758474+08:00","Modifier":null,"ModifyDate":null}],"接收报文":"{\"status\":true,\"code\":0,\"message\":\"添加任务成功\",\"data\":null,\"devMessage\":null}"}
-------------------------------
2024/11/4 11:02:53.632
请求成功
{"请求报文":[{"TaskId":0,"TaskNum":463,"PalletCode":"A0001","Roadway":"R01","TaskType":300,"TaskStatus":300,"SourceAddress":"R01-002-001-001-01","TargetAddress":"R01-001-001-002-02","CurrentAddress":"R01-002-001-001-01","NextAddress":"R01-001-001-002-02","Depth":0,"OrderNo":null,"Grade":0,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T11:02:53.3624628+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":462,"PalletCode":"A00004","Roadway":"R01","TaskType":100,"TaskStatus":100,"SourceAddress":"R01-001-001-001-02","TargetAddress":"004-000-001","CurrentAddress":"R01-001-001-001-02","NextAddress":"004-000-001","Depth":2,"OrderNo":null,"Grade":1,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T11:02:53.3652376+08:00","Modifier":null,"ModifyDate":null}],"接收报文":"{\"status\":false,\"code\":0,\"message\":\"有重复任务\",\"data\":null,\"devMessage\":null}"}
-------------------------------
2024/11/4 11:03:16.303
请求成功
{"请求报文":[{"TaskId":0,"TaskNum":465,"PalletCode":"A0001","Roadway":"R01","TaskType":300,"TaskStatus":300,"SourceAddress":"R01-002-001-001-01","TargetAddress":"R01-001-001-002-02","CurrentAddress":"R01-002-001-001-01","NextAddress":"R01-001-001-002-02","Depth":0,"OrderNo":null,"Grade":0,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T11:03:16.2160819+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":464,"PalletCode":"A00004","Roadway":"R01","TaskType":100,"TaskStatus":100,"SourceAddress":"R01-001-001-001-02","TargetAddress":"004-000-001","CurrentAddress":"R01-001-001-001-02","NextAddress":"004-000-001","Depth":2,"OrderNo":null,"Grade":1,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T11:03:16.2207375+08:00","Modifier":null,"ModifyDate":null}],"接收报文":"{\"status\":true,\"code\":0,\"message\":\"添加任务成功\",\"data\":null,\"devMessage\":null}"}
-------------------------------
2024/11/4 11:28:28.372
请求成功
{"请求报文":[{"TaskId":0,"TaskNum":468,"PalletCode":"A0002","Roadway":"R01","TaskType":104,"TaskStatus":100,"SourceAddress":"R01-002-001-002-01","TargetAddress":"001-001-001","CurrentAddress":"R01-002-001-002-01","NextAddress":"001-001-001","Depth":1,"OrderNo":null,"Grade":0,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T11:28:27.6082459+08:00","Modifier":null,"ModifyDate":null}],"接收报文":"{\"status\":true,\"code\":0,\"message\":\"添加任务成功\",\"data\":null,\"devMessage\":null}"}
-------------------------------
2024/11/4 16:27:01.259
请求成功
{"请求报文":[{"TaskId":0,"TaskNum":469,"PalletCode":"A0001","Roadway":"R01","TaskType":204,"TaskStatus":200,"SourceAddress":"001-001-001","TargetAddress":"R01-001-001-001-02","CurrentAddress":"001-001-001","NextAddress":"R01-001-001-001-02","Depth":0,"OrderNo":null,"Grade":2,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T16:26:59.6557172+08:00","Modifier":null,"ModifyDate":null}],"接收报文":"{\"status\":true,\"code\":0,\"message\":\"添加任务成功\",\"data\":null,\"devMessage\":null}"}
-------------------------------
2024/11/4 16:28:30.236
请求成功
{"请求报文":[{"TaskId":0,"TaskNum":470,"PalletCode":"A0001","Roadway":"R01","TaskType":204,"TaskStatus":200,"SourceAddress":"001-001-001","TargetAddress":"R01-001-001-002-02","CurrentAddress":"001-001-001","NextAddress":"R01-001-001-002-02","Depth":0,"OrderNo":null,"Grade":2,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T16:28:29.5755898+08:00","Modifier":null,"ModifyDate":null}],"接收报文":"{\"status\":true,\"code\":0,\"message\":\"添加任务成功\",\"data\":null,\"devMessage\":null}"}
-------------------------------
2024/11/4 16:32:28.529
请求成功
{"请求报文":[{"TaskId":0,"TaskNum":471,"PalletCode":"A0001","Roadway":"R01","TaskType":104,"TaskStatus":100,"SourceAddress":"R01-001-001-002-02","TargetAddress":"001-001-001","CurrentAddress":"R01-001-001-002-02","NextAddress":"001-001-001","Depth":2,"OrderNo":null,"Grade":0,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T16:32:28.28661+08:00","Modifier":null,"ModifyDate":null}],"接收报文":"{\"status\":true,\"code\":0,\"message\":\"添加任务成功\",\"data\":null,\"devMessage\":null}"}
-------------------------------
2024/11/4 16:32:45.23
请求成功
{"请求报文":[{"TaskId":0,"TaskNum":472,"PalletCode":"A0001","Roadway":"R01","TaskType":104,"TaskStatus":100,"SourceAddress":"R01-001-001-002-02","TargetAddress":"001-001-001","CurrentAddress":"R01-001-001-002-02","NextAddress":"001-001-001","Depth":2,"OrderNo":null,"Grade":0,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T16:32:44.9920731+08:00","Modifier":null,"ModifyDate":null}],"接收报文":"{\"status\":true,\"code\":0,\"message\":\"添加任务成功\",\"data\":null,\"devMessage\":null}"}
-------------------------------
2024/11/4 16:33:46.684
请求成功
{"请求报文":[{"TaskId":0,"TaskNum":473,"PalletCode":"A0001","Roadway":"R01","TaskType":204,"TaskStatus":200,"SourceAddress":"001-001-001","TargetAddress":"R01-001-001-001-02","CurrentAddress":"001-001-001","NextAddress":"R01-001-001-001-02","Depth":0,"OrderNo":null,"Grade":2,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T16:33:45.8679764+08:00","Modifier":null,"ModifyDate":null}],"接收报文":"{\"status\":true,\"code\":0,\"message\":\"添加任务成功\",\"data\":null,\"devMessage\":null}"}
-------------------------------
2024/11/4 16:35:21.776
请求成功
{"请求报文":[{"TaskId":0,"TaskNum":474,"PalletCode":"A0001","Roadway":"R01","TaskType":104,"TaskStatus":100,"SourceAddress":"R01-001-001-001-02","TargetAddress":"001-001-001","CurrentAddress":"R01-001-001-001-02","NextAddress":"001-001-001","Depth":2,"OrderNo":null,"Grade":0,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T16:35:21.7027708+08:00","Modifier":null,"ModifyDate":null}],"接收报文":"{\"status\":true,\"code\":0,\"message\":\"添加任务成功\",\"data\":null,\"devMessage\":null}"}
-------------------------------
2024/11/4 16:42:04.526
请求成功
{"请求报文":[{"TaskId":0,"TaskNum":475,"PalletCode":"A0001","Roadway":"R01","TaskType":204,"TaskStatus":200,"SourceAddress":"001-001-001","TargetAddress":"R01-001-001-001-02","CurrentAddress":"001-001-001","NextAddress":"R01-001-001-001-02","Depth":2,"OrderNo":null,"Grade":2,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T16:41:59.7002876+08:00","Modifier":null,"ModifyDate":null}],"接收报文":"{\"status\":true,\"code\":0,\"message\":\"添加任务成功\",\"data\":null,\"devMessage\":null}"}
-------------------------------
2024/11/4 16:44:23.860
请求成功
{"请求报文":[{"TaskId":0,"TaskNum":476,"PalletCode":"A0002","Roadway":"R01","TaskType":204,"TaskStatus":200,"SourceAddress":"001-001-001","TargetAddress":"R01-002-001-001-01","CurrentAddress":"001-001-001","NextAddress":"R01-002-001-001-01","Depth":1,"OrderNo":null,"Grade":2,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T16:44:23.0728179+08:00","Modifier":null,"ModifyDate":null}],"接收报文":"{\"status\":true,\"code\":0,\"message\":\"添加任务成功\",\"data\":null,\"devMessage\":null}"}
-------------------------------
2024/11/4 16:44:57.981
请求成功
{"请求报文":[{"TaskId":0,"TaskNum":478,"PalletCode":"A0002","Roadway":"R01","TaskType":300,"TaskStatus":300,"SourceAddress":"R01-002-001-001-01","TargetAddress":"R01-001-001-002-02","CurrentAddress":"R01-002-001-001-01","NextAddress":"R01-001-001-002-02","Depth":1,"OrderNo":null,"Grade":0,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T16:44:57.8328644+08:00","Modifier":null,"ModifyDate":null},{"TaskId":0,"TaskNum":477,"PalletCode":"A0001","Roadway":"R01","TaskType":104,"TaskStatus":100,"SourceAddress":"R01-001-001-001-02","TargetAddress":"001-001-001","CurrentAddress":"R01-001-001-001-02","NextAddress":"001-001-001","Depth":2,"OrderNo":null,"Grade":1,"SourceKey":0,"Dispatchertime":null,"Remark":null,"Creater":"admin","CreateDate":"2024-11-04T16:44:57.8376349+08:00","Modifier":null,"ModifyDate":null}],"接收报文":"{\"status\":true,\"code\":0,\"message\":\"添加任务成功\",\"data\":null,\"devMessage\":null}"}
-------------------------------