dengjunjie
2 天以前 6d9829c889a826d39cbc911ef5d01825edd1bffc
ÏîÄ¿´úÂë/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ShuttleCarJob/ShuttleCarJob.cs
@@ -2,10 +2,13 @@
using HslCommunication;
using Newtonsoft.Json;
using OfficeOpenXml.Drawing.Chart;
using OfficeOpenXml.FormulaParsing.Excel.Functions.Text;
using Quartz;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Reflection;
using System.Text;
using System.Threading.Tasks;
using WIDESEAWCS_Common.ShuttleCarEnum;
@@ -71,6 +74,12 @@
                        var complete = shuttleCar.GetValue<ShuttleCarDBName, bool>(ShuttleCarDBName.TaskComplete);
                        if (complete && command.TaskTypeComplete > (short)ShuttleCarTaskComplete.Standby)
                        {
                            #region æ—¥å¿—记录
                            FieldInfo? fieldInfo = typeof(ShuttleCarTaskComplete).GetField(((ShuttleCarTaskComplete)command.TaskTypeComplete).ToString());
                            DescriptionAttribute? description = fieldInfo.GetCustomAttribute<DescriptionAttribute>();
                            var type = description?.Description ?? ((ShuttleCarTaskComplete)command.TaskTypeComplete).ToString();
                            WriteDebug($"{shuttleCar.DeviceName}任务完成", $"任务号【{command.number}】,完成类型【{type}】");
                            #endregion
                            _taskService.ShuttleCarTaskCompleted(command.number, command.TaskTypeComplete);
                            shuttleCar.SetValue(ShuttleCarDBName.ConfirmComplete, true, shuttleCar.DeviceCode);
                        }
@@ -83,8 +92,10 @@
                        #region åˆ›å»ºç§»è½¦å……电任务
                        if (command.Err_Status == (short)ShuttleCarErr.LowBattery || command.ElectricQuantity <= (short)ShuttleCarErr.LowBattery)
                        {
                            var ShuttleCar = QueryCode(shuttleCar.DeviceCode);//在充电位直接让穿梭车去充电
                            //生成堆垛机移车任务&穿梭车充电任务,判断是否有穿梭车在充电
                            var ShuttleCar = QueryCode(shuttleCar.DeviceCode);
                            #region åˆ¤æ–­ç©¿æ¢­è½¦å½“前位置是否有任务
                            if (_taskRepository.QueryFirst(x => x.SourceAddress == ShuttleCar.ShuttleCarPosition || x.TargetAddress == ShuttleCar.ShuttleCarPosition) == null)
                            {
                            Dt_Task _Task = _taskRepository.QueryFirst(x => x.TaskType == TaskOtherTypeEnum.RelocationCarCharging.ObjToInt());
                            if (_Task != null)
                            {
@@ -118,6 +129,8 @@
                            }
                        }
                        #endregion
                        }
                        #endregion
                        #region èŽ·å–ç§»è½¦/出入库任务
                        if (command != null &&