| | |
| | | using Mapster; |
| | | using Masuit.Tools; |
| | | using Newtonsoft.Json; |
| | | using Quartz; |
| | | using System.Diagnostics.CodeAnalysis; |
| | |
| | | { |
| | | try |
| | | { |
| | | |
| | | CommonStackerCrane commonStackerCrane = (CommonStackerCrane)context.JobDetail.JobDataMap.Get("JobParams"); |
| | | if (commonStackerCrane != null) |
| | | { |
| | |
| | | /// <returns></returns> |
| | | private Dt_Task? GetTask(CommonStackerCrane commonStackerCrane) |
| | | { |
| | | Dt_Task task; |
| | | Dt_Task task = null; |
| | | if (commonStackerCrane.LastTaskType == null) |
| | | { |
| | | task = _taskService.QueryStackerCraneTask(commonStackerCrane.DeviceCode); |
| | |
| | | return task; |
| | | } |
| | | |
| | | #region 静置出库判断是否能执行任务 |
| | | |
| | | if (!task.IsNullOrEmpty() && task.Roadway.Contains("JZ") && task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup) |
| | | { |
| | | // 查询是否存在静置入库任务 |
| | | var inJZTask = _taskRepository.QueryData(x => x.Roadway == task.Roadway && |
| | | (x.TaskState == (int)TaskInStatusEnum.Line_InExecuting || |
| | | x.TaskState == (int)TaskInStatusEnum.SC_InExecuting || |
| | | x.TaskState == (int)TaskInStatusEnum.Line_InFinish)); |
| | | |
| | | ConsoleHelper.WriteErrorLine($"当前静置线体存在入库任务{inJZTask.Count()}条,{(inJZTask.Count() > 0 ? "可入库" : "不可入库")}"); |
| | | if (!inJZTask.IsNullOrEmpty()) |
| | | return null; |
| | | } |
| | | |
| | | #endregion 静置出库判断是否能执行任务 |
| | | } |
| | | else if (task == null) |
| | | { |
| | |
| | | IDevice? device = null; |
| | | if (task.Roadway.Contains("GW")) |
| | | { |
| | | device = Storage.Devices.FirstOrDefault(x => x.DeviceCode == "1015"); |
| | | device = Storage.Devices.FirstOrDefault(x => x.DeviceCode == "1004"); |
| | | if (device != null) |
| | | { |
| | | CommonConveyorLine_GW conveyorLine = (CommonConveyorLine_GW)device; |
| | |
| | | { |
| | | var value = _sys_ConfigService.GetByConfigKey(CateGoryConst.CONFIG_SYS_InStation, SysConfigKeyConst.JZNGInBoundStation).ConfigValue; |
| | | var valueList = value.Split(',').ToList(); |
| | | if ((valueList.Contains(task.SourceAddress)) && task.Roadway.Contains("CH")||task.Roadway.Contains("JZ")) |
| | | if ((valueList.Contains(task.SourceAddress)) && task.Roadway.Contains("CH") || task.Roadway.Contains("JZ")) |
| | | { |
| | | string[] souredCodes = task.CurrentAddress.Split("-"); |
| | | if (souredCodes.Length == 3) |