From 3d14b1056267a25dc8aa0ee72f117daa84045f5c Mon Sep 17 00:00:00 2001 From: huangxiaoqiang <huangxiaoqiang@hnkhzn.com> Date: 星期四, 12 六月 2025 15:59:06 +0800 Subject: [PATCH] 添加 FireCommand 属性以处理火警任务类型 --- Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs | 34 ++++++++++++++++++++++++++++------ 1 files changed, 28 insertions(+), 6 deletions(-) diff --git a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs index 3589d01..22efbda 100644 --- a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs +++ b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/CommonConveyorLineJob.cs @@ -23,6 +23,7 @@ using WIDESEAWCS_QuartzJob; using WIDESEAWCS_QuartzJob.DeviceBase; using WIDESEAWCS_QuartzJob.DTO; +using WIDESEAWCS_QuartzJob.Models; using WIDESEAWCS_QuartzJob.Repository; using WIDESEAWCS_QuartzJob.Service; using WIDESEAWCS_SignalR; @@ -257,7 +258,7 @@ } // 鏌ヨ骞冲彴淇℃伅 - Platform platform = _platFormRepository.QueryFirst(x => x.PLCCode == conveyorLine.DeviceCode && x.PlatCode == childDeviceCode && x.Status == "Active"); + Platform platform = _platFormRepository.QueryFirst(x => x.DeviceCode == conveyorLine.DeviceCode && x.PlatCode == childDeviceCode && x.Status == "Active"); if (platform != null && !string.IsNullOrEmpty(platform.Location)) { var strings = platform.Location.Split(',').ToList(); @@ -381,7 +382,8 @@ _noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = log, time = DateTime.Now.ToString("G"), color = "red" }); WriteInfo(conveyorLine.DeviceName, log); - Dt_Task task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode); + //Dt_Task task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode); + Dt_Task task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode, command.Barcode); if (task != null) { if (command.Barcode == task.PalletCode) @@ -402,6 +404,7 @@ WriteInfo(conveyorLine.DeviceName, logs); conveyorLine.SendCommand(taskCommand, childDeviceCode); + _taskService.UpdateData(newTask); } } } @@ -426,7 +429,8 @@ _noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = log, time = DateTime.Now.ToString("G"), color = "red" }); WriteInfo(conveyorLine.DeviceName, log); - var task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode); + //var task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode); + var task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode, command.Barcode); if (task != null && task.TaskState != (int)TaskInStatusEnum.Line_InFinish) { if (command.Barcode == task.PalletCode && childDeviceCode == task.NextAddress) @@ -548,7 +552,8 @@ WriteInfo(conveyorLine.DeviceName, log); // 鏌ヨ姝e湪鎵ц鐨勮緭閫佺嚎浠诲姟锛屾牴鎹换鍔″彿鍜屽瓙璁惧浠g爜鑾峰彇浠诲姟淇℃伅 - Dt_Task task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode); + //Dt_Task task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode); + Dt_Task task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode, command.Barcode); // 濡傛灉浠诲姟瀛樺湪 if (task != null) @@ -583,6 +588,8 @@ // 鏍囪杈撻�佺嚎鍙戦�佷换鍔″畬鎴� ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true); + + _taskService.UpdateData(newTask); } } } @@ -606,7 +613,8 @@ WriteInfo(conveyorLine.DeviceName, logs); // 鏌ヨ姝e湪鎵ц鐨勮緭閫佺嚎浠诲姟 - var task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode); + //var task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode); + var task = _taskService.QueryExecutingConveyorLineTask(command.TaskNum, childDeviceCode, command.Barcode); // 濡傛灉浠诲姟瀛樺湪 if (task != null) @@ -768,13 +776,26 @@ } var wmsIpAddress = wmsBase + requestTrayOutTask; - var device = _deviceInfoRepository.QueryData(x => x.DeviceStatus == "1"); + + List<Dt_DeviceInfo> device; + if (platform.Roadway != null) + { + List<string> strings = platform.Roadway.Split(',').ToList(); + device = _deviceInfoRepository.QueryData(x => x.DeviceStatus == "1" && strings.Contains(x.DeviceCode)); + } + else + { + device = _deviceInfoRepository.QueryData(x => x.DeviceStatus == "1"); + } var deviceCode = device.Select(x => x.DeviceCode).ToList(); // 鍙戦�丠TTP POST璇锋眰鑾峰彇浠诲姟鏁版嵁 var result = await HttpHelper.PostAsync(wmsIpAddress, new { position = childDeviceCode, tag = (int)taskType, areaCdoe = platform.Stacker, AreaCdoes = deviceCode, platform.ProductionLine }.ToJsonString()); // 瑙f瀽杩斿洖鐨凧SON鏁版嵁 WebResponseContent content = JsonConvert.DeserializeObject<WebResponseContent>(result); + + + Console.WriteLine($"{JsonConvert.SerializeObject(content)}鍛煎彨鎴愬姛"); // 妫�鏌ヨ繑鍥炵姸鎬侊紝濡傛灉澶辫触鍒欒繑鍥� if (!content.Status) @@ -785,6 +806,7 @@ #endregion 璋冪敤WMS鑾峰彇鍑哄簱浠诲姟 + // 鍒涘缓骞跺彂閫佷换鍔� CreateAndSendTask(taskDTO); } -- Gitblit v1.9.3