| | |
| | | using Newtonsoft.Json; |
| | | using SqlSugar; |
| | | using System.Diagnostics.CodeAnalysis; |
| | | using System.Threading.Tasks; |
| | | using WIDESEAWCS_BasicInfoRepository; |
| | | using WIDESEAWCS_BasicInfoService; |
| | | using WIDESEAWCS_Common; |
| | |
| | | using WIDESEAWCS_ITaskInfoRepository; |
| | | using WIDESEAWCS_ITaskInfoService; |
| | | using WIDESEAWCS_Model.Models; |
| | | using WIDESEAWCS_QuartzJob; |
| | | using WIDESEAWCS_QuartzJob.Models; |
| | | using WIDESEAWCS_QuartzJob.Repository; |
| | | using WIDESEAWCS_QuartzJob.Service; |
| | | using WIDESEAWCS_TaskInfoRepository; |
| | | using static Microsoft.EntityFrameworkCore.DbLoggerCategory.Database; |
| | | |
| | | namespace WIDESEAWCS_TaskInfoService |
| | | { |
| | |
| | | catch (Exception ex) |
| | | { |
| | | // 捕获异常并设置返回结果为错误信息 |
| | | content = WebResponseContent.Instance.Error($"任务接收错误,错误信息:{ex.Message}"); |
| | | content = WebResponseContent.Instance.Error($"任务接收错误,错误信息:{ex.Message}返回数据行{ex.StackTrace}"); |
| | | } |
| | | // 返回结果 |
| | | return content; |
| | |
| | | var hasTask = await BaseDal.QueryFirstAsync(x => x.PalletCode == palletCode); |
| | | if (hasTask != null) |
| | | { |
| | | return content.OK("当前托盘存在任务"); |
| | | var taskExecuting = BaseDal.QueryFirst(x => x.PalletCode == palletCode && x.TaskState == (int)TaskOutStatusEnum.Line_OutExecuting); |
| | | |
| | | if (taskExecuting != null) |
| | | { |
| | | taskExecuting.ExceptionMessage = "未接收到线体完成信号系统内部自动完成"; |
| | | Delete(taskExecuting); |
| | | } |
| | | ConsoleHelper.WriteErrorLine($"当前托盘存在任务:【{palletCode}】"); |
| | | QuartzLogger.WriteLogToFile($"任务异常未完成", $"当前托盘存在任务:【{palletCode}】{Environment.NewLine}"); |
| | | } |
| | | |
| | | var wmsIpAddrss = string.Empty; |
| | |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | QuartzLogger.WriteLogToFile($"接收任务异常", $"托盘号:【{palletCode}】请求点位:【{sourceAddress}】异常信息【{ex.Message}】异常行【{ex.StackTrace}】"); |
| | | return WebResponseContent.Instance.Error(ex.Message); |
| | | } |
| | | } |
| | |
| | | |
| | | if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.OutbondGroup && task.TaskState == (int)TaskOutStatusEnum.SC_OutExecuting) |
| | | { |
| | | if (!task.Roadway.Contains("GW")) |
| | | if (!task.Roadway.Contains("GW") && task.TaskType != (int)TaskOutboundTypeEnum.InToOut) |
| | | { |
| | | var routers = _routerService.QueryNextRoutes(task.NextAddress, task.TargetAddress); |
| | | if (!routers.Any()) return WebResponseContent.Instance.Error($"未找到设备路由信息"); |