From 29f20b28392d212c04c0c40a512894f8622cfa53 Mon Sep 17 00:00:00 2001 From: wanshenmean <cathay_xy@163.com> Date: 星期三, 16 四月 2025 09:32:01 +0800 Subject: [PATCH] 合并 --- CodeManagement/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/Task/RequestInbound.cs | 494 +++++++++++++++++++++++++++++++----------------------- 1 files changed, 281 insertions(+), 213 deletions(-) diff --git a/CodeManagement/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/Task/RequestInbound.cs b/CodeManagement/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/Task/RequestInbound.cs index ba5dfc1..eef4783 100644 --- a/CodeManagement/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/Task/RequestInbound.cs +++ b/CodeManagement/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/Task/RequestInbound.cs @@ -1,6 +1,10 @@ 锘縰sing HslCommunication; +using HslCommunication.Profinet.OpenProtocol; using Mapster; using Microsoft.AspNetCore.Mvc.ModelBinding.Validation; +using Microsoft.CodeAnalysis; +using Microsoft.VisualBasic; +using MoYu.Logging; using Newtonsoft.Json; using System.Text.RegularExpressions; using System.Threading.Tasks; @@ -171,9 +175,9 @@ RoadWay = childDeviceCode, SourceAddress = childDeviceCode, TargetAddress = isTrue, - TaskState = (int)TaskOutStatusEnum.OutNew, - Id = 0, - TaskType = (int)TaskOutboundTypeEnum.TrayInToOut, + TaskState = (int)TaskOutStatusEnum.SC_OutFinish, + Id = 2, + TaskType = (int)TaskOutboundTypeEnum.OutTray, ProductionLine = result.ProductionLine, }; } @@ -283,7 +287,19 @@ { string isTrue = string.Empty; + ExecuteConveyorLineTask(conveyorLine, command, ProtocalDetailValue, childDeviceCode); + ResultTrayCellsStatus result = GetResultTrayCellsStatus(command, stationManager); + + if (result.SerialNos.Count == 0) + { + var Traycontent = await _taskService.RequestWMSTask(command.Barcode, childDeviceCode); + if (Traycontent.Status) + { + ConsoleHelper.WriteSuccessLine("浜屽皝绌烘璇锋眰鍥炴祦"); + ExecuteConveyorLineTask(conveyorLine, command, ProtocalDetailValue, childDeviceCode); + } + } List<string> strings = stationManager.Roadway.Split(",").ToList(); foreach (string item in strings) @@ -304,9 +320,9 @@ RoadWay = childDeviceCode, SourceAddress = childDeviceCode, TargetAddress = isTrue, - TaskState = (int)TaskOutStatusEnum.OutNew, + TaskState = (int)TaskOutStatusEnum.SC_OutFinish, Id = 2, - TaskType = (int)TaskOutboundTypeEnum.InToOut, + TaskType = (int)TaskOutboundTypeEnum.OutTray, ProductionLine = result.ProductionLine, }; var Taskcontent = _taskService.ReceiveWMSTask(new List<WMSTaskDTO> { taskDTO }); @@ -324,70 +340,7 @@ ExecuteConveyorLineTask(conveyorLine, command, ProtocalDetailValue, childDeviceCode); } } - #region - - //if (Taskcontent.Status) - //{ - // var task = _taskService.QueryBarCodeConveyorLineTask(command.Barcode, childDeviceCode); - // if (task != null) - // { - // var value = _sys_ConfigService.GetByConfigKey(CateGoryConst.CONFIG_SYS_InStation, SysConfigKeyConst.JZNGInBoundStation).ConfigValue; - // var valueList = value.Split(',').ToList(); - // if (valueList.Contains(task.SourceAddress)) - // { - // conveyorLine.SetValue(ConveyorLineDBName.WriteConveyorLineTargetAddress, "1000", childDeviceCode); - - // var log = $"銆恵conveyorLine._deviceName}銆戜换鍔″彿锛氥�恵task.TaskNum}銆�,鎵樼洏鏉$爜锛氥�恵task.PalletCode}銆戝凡鍒拌揪銆恵childDeviceCode}銆戣姹傛壂鐮佸叆搴�(瀹炵洏),涓嬩竴鐩爣鍦板潃銆恵1000}銆�"; - // ConsoleHelper.WriteWarningLine(log); - - // _noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = log, time = DateTime.Now.ToString("G"), color = "red" }); - // WriteInfo(conveyorLine.DeviceName, log); - - // ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true); - // } - // else if (task.TargetAddress == "1020-1") - // { - // var next = task.NextAddress; - // var taskCommand = MapTaskCommand(task, command); - // task.NextAddress = next; - - // var log = $"銆恵conveyorLine._deviceName}銆戜换鍔″彿锛氥�恵command.TaskNum}銆�,鎵樼洏鏉$爜锛氥�恵command.Barcode}銆戝凡鍒拌揪銆恵childDeviceCode}銆戣姹傛壂鐮佸叆搴�(瀹炵洏),涓嬩竴鐩爣鍦板潃銆恵taskCommand.TargetAddress}銆�"; - // ConsoleHelper.WriteWarningLine(log); - - // _noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = log, time = DateTime.Now.ToString("G"), color = "red" }); - // WriteInfo(conveyorLine.DeviceName, log); - - // conveyorLine.SendCommand(taskCommand, childDeviceCode); - // ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true); - - // var taskHty = task.Adapt<Dt_Task_Hty>(); - // _task_HtyRepository.AddData(taskHty); - // _taskService.DeleteData(task); - // } - // else - // { - // var next = task.NextAddress; - // var taskCommand = MapTaskCommand(task, command); - // task.NextAddress = next; - - // var log = $"銆恵conveyorLine._deviceName}銆戜换鍔″彿锛氥�恵command.TaskNum}銆�,鎵樼洏鏉$爜锛氥�恵command.Barcode}銆戝凡鍒拌揪銆恵childDeviceCode}銆戣姹傛壂鐮佸叆搴�(瀹炵洏),涓嬩竴鐩爣鍦板潃銆恵taskCommand.TargetAddress}銆�"; - // ConsoleHelper.WriteWarningLine(log); - - // _noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = log, time = DateTime.Now.ToString("G"), color = "red" }); - // WriteInfo(conveyorLine.DeviceName, log); - - // conveyorLine.SendCommand(taskCommand, childDeviceCode); - // ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true); - // _taskService.UpdateTaskStatusToNext(task); - // } - // } - //} - //else - // WriteInfo(conveyorLine.DeviceName, content.Message); - - #endregion } - /// <summary> /// 鎴愬寲鍏ラ潤缃� @@ -401,164 +354,279 @@ /// <exception cref="InvalidOperationException"></exception> private async Task JZRequestInBound(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, string childDeviceCode, int ProtocalDetailValue, Dt_StationManager stationManager) { - ResultTrayCellsStatus resultTrayCellsStatus = GetResultTrayCellsStatus(command, stationManager); - //todo鍒ゆ柇鏄惁涓虹┖妗� - var serialNosError = resultTrayCellsStatus.SerialNos.Where(x => x.SerialNoStatus != 1 && x.SerialNoStatus != 4).ToList(); - if (serialNosError.Count > 0) + try { - //绌烘閫昏緫 - var Traycontent = await _taskService.RequestWMSTask(command.Barcode, childDeviceCode); - if (Traycontent.Status) + StaticVariable.isLineRun = false; + + if (StaticVariable.isStackerRun) { - ConsoleHelper.WriteSuccessLine("鍖栨垚绌烘璇锋眰鍥炴祦闈欑疆"); ExecuteConveyorLineTask(conveyorLine, command, ProtocalDetailValue, childDeviceCode); + } + + ResultTrayCellsStatus resultTrayCellsStatus = GetResultTrayCellsStatus(command, stationManager); + + + //todo鍒ゆ柇鏄惁涓虹┖妗� + var serialNosError = resultTrayCellsStatus.SerialNos.Where(x => x.SerialNoStatus != 1 && x.SerialNoStatus != 4).ToList(); + if (serialNosError.Count > 0 || !resultTrayCellsStatus.Success) + { + //NG娴佺▼ + var platform = _platFormRepository.QueryFirst(x => x.ProductionLine == resultTrayCellsStatus.ProductionLine && x.DeviceCode == "1005"); + ConveyorLineTaskCommand conveyorLineTaskCommand = new ConveyorLineTaskCommand() + { + TaskNum = 1, + TargetAddress = Convert.ToInt32(platform.Capacity), + Barcode = resultTrayCellsStatus.TrayBarcode, + InteractiveSignal = command.InteractiveSignal + }; + conveyorLine.SendCommand(conveyorLineTaskCommand, childDeviceCode); + var logMessage = $"MOM鏁版嵁寮傚父,閫佽嚦浜屽皝銆恵resultTrayCellsStatus.ProductionLine}銆戝紓甯稿彛銆恵Convert.ToInt32(platform.Capacity)}銆�"; + LogAndSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, logMessage, conveyorLineTaskCommand.TargetAddress.ToString()); + return; + } + if (resultTrayCellsStatus.SerialNos.Count == 0) + { + var Traycontent = await _taskService.RequestWMSTask(command.Barcode, childDeviceCode); + if (Traycontent.Status) + { + ConsoleHelper.WriteSuccessLine("鍖栨垚绌烘璇锋眰鍥炴祦闈欑疆"); + if (StaticVariable.isStackerRun) + { + ExecuteConveyorLineTask(conveyorLine, command, ProtocalDetailValue, childDeviceCode); + } + return; + } + } + else + { + var configz = _sys_ConfigService.GetConfigsByCategory(CateGoryConst.CONFIG_SYS_IPAddress); + var wmsbase = configz.Where(x => x.ConfigKey == SysConfigKeyConst.WMSIP_BASE).FirstOrDefault()?.ConfigValue; + var address = configz.Where(x => x.ConfigKey == SysConfigKeyConst.QueryStockInfoForRealTrayJZAsync).FirstOrDefault()?.ConfigValue; + if (wmsbase == null || address == null) + { + throw new InvalidOperationException("WMS IP 鏈厤缃�"); + } + var wmsIpAddrss = wmsbase + address; + var result = await HttpHelper.PostAsync(wmsIpAddrss, new { ProductLine = resultTrayCellsStatus.ProductionLine, PalletCode = command.Barcode }.ToJsonString()); + var StockInfocontent = JsonConvert.DeserializeObject<WebResponseContent>(result); + if (StockInfocontent.Status) + { + var Taskcontent = await _taskService.RequestWMSTask(command.Barcode, childDeviceCode); + ConsoleHelper.WriteErrorLine($"{JsonConvert.SerializeObject(Taskcontent)}"); + if (Taskcontent.Status) + { + if (StaticVariable.isStackerRun) + { + ExecuteConveyorLineTask(conveyorLine, command, ProtocalDetailValue, childDeviceCode); + } + #region + //if (task != null && task.TaskState == (int)TaskOutStatusEnum.Line_OutExecuting && task.CurrentAddress == "1537") + //{ + // ConveyorLineTaskCommand command1 = conveyorLine.ReadCustomer<ConveyorLineTaskCommand>(stationManager.stationLocation); + + // if (command1.InteractiveSignal != 2) + // { + // ConsoleHelper.WriteSuccessLine("鍖栨垚瀹炴墭璇锋眰鍏ラ潤缃�"); + // if (StaticVariable.isStackerRun == true) + // { + // ExecuteConveyorLineTask(conveyorLine, command, ProtocalDetailValue, childDeviceCode); + // } + // return; + // } + // else + // { + // ConsoleHelper.WriteWarningLine("鍑哄簱浠诲姟鏈畬鎴�"); + // return; + // } + //} + //else if (task != null && task.TaskState == (int)TaskOutStatusEnum.SC_OutExecuting) + //{ + // ConsoleHelper.WriteWarningLine("宸插瓨鍦ㄩ潤缃嚭搴撲换鍔�"); + // return; + //} + //else + //{ + // var Task = await _taskService.RequestWMSTask(command.Barcode, childDeviceCode); + // if (Task.Status) + // { + // if (StaticVariable.isStackerRun == true) + // { + // ExecuteConveyorLineTask(conveyorLine, command, ProtocalDetailValue, childDeviceCode); + // } + // } + // return; + //} + #endregion + } + else + { + WriteInfo(conveyorLine.DeviceName, Taskcontent.Message); + return; + } + } + else + { + string isTrue = string.Empty; + + List<string> strings = stationManager.Roadway.Split(",").ToList(); + foreach (string item in strings) + { + isTrue = RequestInboundPlatform(item, resultTrayCellsStatus.ProductionLine, false); + if (isTrue != null) + { + break; + } + } + if (isTrue != null && isTrue != string.Empty) + { + WMSTaskDTO taskDTO = new WMSTaskDTO + { + TaskNum = _taskRepository.GetTaskNo().Result, + Grade = 1, + PalletCode = command.Barcode, + RoadWay = isTrue, + SourceAddress = childDeviceCode, + TargetAddress = isTrue, + TaskState = (int)TaskOutStatusEnum.SC_OutFinish, + Id = 2, + TaskType = (int)TaskOutboundTypeEnum.InToOut, + ProductionLine = resultTrayCellsStatus.ProductionLine, + }; + var Taskcontent = _taskService.ReceiveWMSTask(new List<WMSTaskDTO> { taskDTO }); + if (Taskcontent.Status) + { + if (StaticVariable.isStackerRun) + { + ExecuteConveyorLineTask(conveyorLine, command, ProtocalDetailValue, childDeviceCode); + } + return; + } + else + { + WriteInfo(conveyorLine.DeviceName, Taskcontent.Message); + return; + } + } + else + { + var Task = await _taskService.RequestWMSTask(command.Barcode, childDeviceCode); + ConsoleHelper.WriteErrorLine($"{JsonConvert.SerializeObject(Task)}"); + if (Task.Status) + { + if (StaticVariable.isStackerRun) + { + ExecuteConveyorLineTask(conveyorLine, command, ProtocalDetailValue, childDeviceCode); + } + } + ConsoleHelper.WriteWarningLine("浜屽皝缂撳瓨浣嶅凡婊�"); + return; + } + + } + } + } + catch (Exception ex) + { + ConsoleHelper.WriteWarningLine($"{ex.Message}"); + } + finally + { + StaticVariable.isLineRun = true; + } + } + + /// <summary> + /// 鎵ц杈撻�佺嚎浠诲姟 + /// </summary> + /// <param name="conveyorLine">杈撻�佺嚎瀵硅薄</param> + /// <param name="command">杈撻�佺嚎浠诲姟鍛戒护</param> + /// <param name="ProtocalDetailValue">鍗忚鏄庣粏鍊�</param> + /// <param name="childDeviceCode">瀛愯澶囩紪鍙�</param> + public void ExecuteConveyorLineTask(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, int ProtocalDetailValue, string childDeviceCode) + { + // 鏌ヨ浠诲姟淇℃伅 + var task = _taskService.QueryBarCodeConveyorLineTask(command.Barcode, childDeviceCode); + + if (task == null) return; + + // 鑾峰彇閰嶇疆鍊煎苟杞崲涓哄垪琛� + var value = _sys_ConfigService.GetByConfigKey(CateGoryConst.CONFIG_SYS_InStation, SysConfigKeyConst.JZNGInBoundStation).ConfigValue; + var valueList = value.Split(',').ToList(); + + // 鏃ュ織妯℃澘 + var logMessage = $"銆恵conveyorLine._deviceName}銆戜换鍔″彿锛氥�恵task.TaskNum}銆�,鎵樼洏鏉$爜锛氥�恵task.PalletCode}銆戝凡鍒拌揪銆恵childDeviceCode}銆戣姹傛壂鐮佸叆搴�(瀹炵洏),涓嬩竴鐩爣鍦板潃銆恵{0}}銆�"; + + // 鍒ゆ柇浠诲姟鐨勮捣濮嬪湴鍧�鏄惁鍦ㄩ厤缃垪琛ㄤ腑 + if (valueList.Contains(task.SourceAddress)) + { + // 璁剧疆鐩爣鍦板潃涓� "1000" + conveyorLine.SetValue(ConveyorLineDBName.WriteConveyorLineTargetAddress, "1000", childDeviceCode); + + // 璁板綍鏃ュ織骞跺彂閫佸畬鎴愪俊鍙� + LogAndSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, logMessage, "1000"); + } + else if (task.Roadway.Contains("JZ")) + { + // 鏌ヨ鏄惁瀛樺湪闈欑疆鍑哄簱浠诲姟 + var outJZTask = _taskRepository.QueryData(x => x.Roadway == task.Roadway && + (x.TaskState == (int)TaskOutStatusEnum.SC_OutExecuting || + x.TaskState == (int)TaskOutStatusEnum.SC_OutFinish || x.TaskState == (int)TaskOutStatusEnum.OutNew)); + + if (!outJZTask.Any()) + { + // 鏄犲皠浠诲姟鍛戒护 + var taskCommand = MapTaskCommand(task, command); + + // 鍙戦�佷换鍔″懡浠� + conveyorLine.SendCommand(taskCommand, childDeviceCode); + + // 璁板綍鏃ュ織骞跺彂閫佸畬鎴愪俊鍙� + LogAndSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, logMessage, taskCommand.TargetAddress.ToString()); + + // 鏇存柊浠诲姟鐘舵�� + _taskService.UpdateTaskStatusToNext(task); + } + else + { + ConsoleHelper.WriteWarningLine("宸插瓨鍦ㄩ潤缃嚭搴撲换鍔�,闈欑疆鍏ュ簱浠诲姟鏃犳硶涓嬪彂鑷崇嚎浣�"); } } else { - var configz = _sys_ConfigService.GetConfigsByCategory(CateGoryConst.CONFIG_SYS_IPAddress); - var wmsbase = configz.Where(x => x.ConfigKey == SysConfigKeyConst.WMSIP_BASE).FirstOrDefault()?.ConfigValue; - var address = configz.Where(x => x.ConfigKey == SysConfigKeyConst.GetJZStockInfo).FirstOrDefault()?.ConfigValue; - if (wmsbase == null || address == null) - { - throw new InvalidOperationException("WMS IP 鏈厤缃�"); - } - var wmsIpAddrss = wmsbase + address; - var result = await HttpHelper.PostAsync(wmsIpAddrss); - var StockInfocontent = JsonConvert.DeserializeObject<WebResponseContent>(result); - if (StockInfocontent.Status) - { - var Taskcontent = await _taskService.RequestWMSTask(command.Barcode, childDeviceCode); - if (Taskcontent.Status) - { - var task = _taskRepository.QueryFirst(x => x.Roadway.Contains("JZ") && x.TaskState == (int)TaskOutStatusEnum.Line_OutExecuting || x.TaskState == (int)TaskOutStatusEnum.SC_OutExecuting || x.TaskState == (int)TaskOutStatusEnum.SC_OutFinish); - if (task != null && task.TaskState == (int)TaskOutStatusEnum.Line_OutExecuting) - { - ConveyorLineTaskCommand command1 = conveyorLine.ReadCustomer<ConveyorLineTaskCommand>(stationManager.stationLocation); + // 鏄犲皠浠诲姟鍛戒护 + var taskCommand = MapTaskCommand(task, command); - if (command1.InteractiveSignal != 2) - { - ConsoleHelper.WriteSuccessLine("鍖栨垚瀹炴墭璇锋眰鍏ラ潤缃�"); - ExecuteConveyorLineTask(conveyorLine, command, ProtocalDetailValue, childDeviceCode); - } - else - { - ConsoleHelper.WriteWarningLine("鍑哄簱浠诲姟鏈畬鎴�"); - } - } - else if (task != null && task.TaskState == (int)TaskOutStatusEnum.SC_OutExecuting) - { - ConsoleHelper.WriteWarningLine("宸插瓨鍦ㄩ潤缃嚭搴撲换鍔�"); - } - else - { - - ExecuteConveyorLineTask(conveyorLine, command, ProtocalDetailValue, childDeviceCode); - } - } - else - WriteInfo(conveyorLine.DeviceName, Taskcontent.Message); - } - else - { - string isTrue = string.Empty; + // 鍙戦�佷换鍔″懡浠� + conveyorLine.SendCommand(taskCommand, childDeviceCode); - List<string> strings = stationManager.Roadway.Split(",").ToList(); - foreach (string item in strings) - { - isTrue = RequestInboundPlatform(item, resultTrayCellsStatus.ProductionLine, false); - if (isTrue != null) - { - break; - } - } - if (isTrue != null && isTrue != string.Empty) - { - WMSTaskDTO taskDTO = new WMSTaskDTO - { - TaskNum = _taskRepository.GetTaskNo().Result, - Grade = 1, - PalletCode = command.Barcode, - RoadWay = isTrue, - SourceAddress = childDeviceCode, - TargetAddress = isTrue, - TaskState = (int)TaskOutStatusEnum.OutNew, - Id = 2, - TaskType = (int)TaskOutboundTypeEnum.InToOut, - ProductionLine = resultTrayCellsStatus.ProductionLine, - }; - var Taskcontent = _taskService.ReceiveWMSTask(new List<WMSTaskDTO> { taskDTO }); - if (Taskcontent.Status) - { - ExecuteConveyorLineTask(conveyorLine, command, ProtocalDetailValue, childDeviceCode); - } - else - WriteInfo(conveyorLine.DeviceName, Taskcontent.Message); + // 璁板綍鏃ュ織骞跺彂閫佸畬鎴愪俊鍙� + LogAndSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, logMessage, taskCommand.TargetAddress.ToString()); - } - else - { - ConsoleHelper.WriteWarningLine("浜屽皝缂撳瓨浣嶅凡婊�"); - } - - } + // 鏇存柊浠诲姟鐘舵�� + _taskService.UpdateTaskStatusToNext(task); } } - public void ExecuteConveyorLineTask(CommonConveyorLine conveyorLine, ConveyorLineTaskCommand command, int ProtocalDetailValue ,string childDeviceCode) + + /// <summary> + /// 璁板綍鏃ュ織骞跺彂閫佸畬鎴愪俊鍙� + /// </summary> + /// <param name="conveyorLine">杈撻�佺嚎瀵硅薄</param> + /// <param name="childDeviceCode">瀛愯澶囩紪鍙�</param> + /// <param name="ProtocalDetailValue">鍗忚鏄庣粏鍊�</param> + /// <param name="logMessage">鏃ュ織娑堟伅妯℃澘</param> + /// <param name="targetAddress">鐩爣鍦板潃</param> + private void LogAndSendFinish(CommonConveyorLine conveyorLine, string childDeviceCode, int ProtocalDetailValue, string logMessage, string targetAddress) { - var task = _taskService.QueryBarCodeConveyorLineTask(command.Barcode, childDeviceCode); - if (task != null) - { - var value = _sys_ConfigService.GetByConfigKey(CateGoryConst.CONFIG_SYS_InStation, SysConfigKeyConst.JZNGInBoundStation).ConfigValue; - var valueList = value.Split(',').ToList(); - if (valueList.Contains(task.SourceAddress)) - { - conveyorLine.SetValue(ConveyorLineDBName.WriteConveyorLineTargetAddress, "1000", childDeviceCode); - - var log = $"銆恵conveyorLine._deviceName}銆戜换鍔″彿锛氥�恵task.TaskNum}銆�,鎵樼洏鏉$爜锛氥�恵task.PalletCode}銆戝凡鍒拌揪銆恵childDeviceCode}銆戣姹傛壂鐮佸叆搴�(瀹炵洏),涓嬩竴鐩爣鍦板潃銆恵1000}銆�"; - ConsoleHelper.WriteWarningLine(log); - - _noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = log, time = DateTime.Now.ToString("G"), color = "red" }); - WriteInfo(conveyorLine.DeviceName, log); - - ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true); - } - else if (task.TargetAddress == "1020-1") - { - var next = task.NextAddress; - var taskCommand = MapTaskCommand(task, command); - task.NextAddress = next; - - var log = $"銆恵conveyorLine._deviceName}銆戜换鍔″彿锛氥�恵command.TaskNum}銆�,鎵樼洏鏉$爜锛氥�恵command.Barcode}銆戝凡鍒拌揪銆恵childDeviceCode}銆戣姹傛壂鐮佸叆搴�(瀹炵洏),涓嬩竴鐩爣鍦板潃銆恵taskCommand.TargetAddress}銆�"; - ConsoleHelper.WriteWarningLine(log); - - _noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = log, time = DateTime.Now.ToString("G"), color = "red" }); - WriteInfo(conveyorLine.DeviceName, log); - - conveyorLine.SendCommand(taskCommand, childDeviceCode); - ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true); - - var taskHty = task.Adapt<Dt_Task_Hty>(); - _task_HtyRepository.AddData(taskHty); - _taskService.DeleteData(task); - } - else - { - var next = task.NextAddress; - var taskCommand = MapTaskCommand(task, command); - task.NextAddress = next; - - var log = $"銆恵conveyorLine._deviceName}銆戜换鍔″彿锛氥�恵command.TaskNum}銆�,鎵樼洏鏉$爜锛氥�恵command.Barcode}銆戝凡鍒拌揪銆恵childDeviceCode}銆戣姹傛壂鐮佸叆搴�(瀹炵洏),涓嬩竴鐩爣鍦板潃銆恵taskCommand.TargetAddress}銆�"; - ConsoleHelper.WriteWarningLine(log); - - _noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log = log, time = DateTime.Now.ToString("G"), color = "red" }); - WriteInfo(conveyorLine.DeviceName, log); - - conveyorLine.SendCommand(taskCommand, childDeviceCode); - ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true); - _taskService.UpdateTaskStatusToNext(task); - } - } + // 鏍煎紡鍖栨棩蹇楁秷鎭� + var log = string.Format(logMessage, targetAddress); + // 杈撳嚭璀﹀憡鏃ュ織 + ConsoleHelper.WriteWarningLine(log); + // 璁板綍鏃ュ織 + _noticeService.Logs(userTokenIds, new { conveyorLine.DeviceName, log, time = DateTime.Now.ToString("G"), color = "red" }); + WriteInfo(conveyorLine.DeviceName, log); + // 鍙戦�佸畬鎴愪俊鍙� + ConveyorLineSendFinish(conveyorLine, childDeviceCode, ProtocalDetailValue, true); } + } } \ No newline at end of file -- Gitblit v1.9.3