From be484c84a25d1f6c769e7b5e958048d745942e55 Mon Sep 17 00:00:00 2001 From: dengjunjie <dengjunjie@hnkhzn.com> Date: 星期二, 20 五月 2025 10:32:57 +0800 Subject: [PATCH] 优化出入库逻辑 --- 项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/ConveyorLineExtend/ConveyorLineExtend.cs | 48 ++++++++++++++++++++++++++++++++++-------------- 1 files changed, 34 insertions(+), 14 deletions(-) diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/ConveyorLineExtend/ConveyorLineExtend.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/ConveyorLineExtend/ConveyorLineExtend.cs" index bc2fa25..08bf6b2 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/ConveyorLineExtend/ConveyorLineExtend.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/ConveyorLineExtend/ConveyorLineExtend.cs" @@ -7,6 +7,7 @@ using WIDESEAWCS_Common.TaskEnum; using WIDESEAWCS_Core; using WIDESEAWCS_Core.Helper; +using WIDESEAWCS_DTO.TaskInfo; using WIDESEAWCS_DTO.WMSInfo; using WIDESEAWCS_Model.Models; using WIDESEAWCS_QuartzJob; @@ -26,12 +27,15 @@ public List<Task> ConveyorLineExtend(CommonConveyorLine conveyorLine) { List<string> childDeviceCodes = _routerService.QueryAllPositions(conveyorLine.DeviceCode); + List<string> strings = new List<string>() { "1003", "1006", "1007" }; + childDeviceCodes.AddRange(strings); List<Task> tasks = new List<Task>(); foreach (string childDeviceCode in childDeviceCodes) { try { ConveyorLineTaskCommandR command = conveyorLine.ReadCustomer<ConveyorLineTaskCommandR>(childDeviceCode); + _cacheService.AddOrUpdate(childDeviceCode, command); if (command != null) { if (childDeviceCode == "1002" && command.Status == (ushort)ConveyorStatus.Wait) @@ -47,20 +51,27 @@ Dt_Task task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode); if (task != null) { - List<Dt_Router> routers = _routerRepository.QueryData(x => x.StartPosi == task.NextAddress && x.ChildPosiDeviceCode == "AGV" && x.Remark == "鏈崰鐢�"); - if (routers != null && routers.Count > 0) - { - var router = routers.FirstOrDefault(); - if (router != null) - { - task.TaskState = TaskOutStatusEnum.Line_OutFinish.ObjToInt(); - task.CurrentAddress = childDeviceCode; - task.NextAddress = router.NextPosi; - router.Remark = "鍗犵敤"; - _routerRepository.UpdateData(router); - _taskService.UpdateData(task); - } - } + #region MyRegion + //List<Dt_Router> routers = _routerRepository.QueryData(x => x.StartPosi == task.TargetAddress && x.ChildPosiDeviceCode == "AGV" && x.Remark == "鏈崰鐢�"); + //if (routers != null && routers.Count > 0) + //{ + // var router = routers.FirstOrDefault(); + // if (router != null) + // { + // task.TaskState = TaskOutStatusEnum.Line_OutFinish.ObjToInt(); + // task.CurrentAddress = childDeviceCode; + // task.NextAddress = router.NextPosi; + // task.TargetAddress = task.NextAddress; + // router.Remark = "鍗犵敤"; + // _routerRepository.UpdateData(router); + // _taskService.UpdateData(task); + // } + //} + #endregion + task.TaskState = TaskOutStatusEnum.OutFinish.ObjToInt(); + WMSTaskDTO WMStask = _mapper.Map<WMSTaskDTO>(task); + _taskService.AddTask_Hty(task, TaskOperateTypeEnum.AutoComplete); + HttpHelper.PostAsync(WMSInterfaceAddress.UpdateTaskStatus, WMStask.ToJson(), headers: new Dictionary<string, string>()); } } } @@ -142,6 +153,15 @@ // //} //} } + else + { + Dt_Task _Task = new Dt_Task(); + _Task.TaskNum = Convert.ToInt32(DateTime.Now.ToString("HHmmss")); + _Task.CurrentAddress = childDeviceCode; + _Task.NextAddress = "1001"; + ConveyorLineTaskCommandW taskCommand = _mapper.Map<ConveyorLineTaskCommandW>(_Task); + taskCommand.WriterTrue = (short)command.inRead; + } } /// <summary> -- Gitblit v1.9.3