xiaojiao
2026-01-24 c5f01e9a882b16f534166d033312c5c8ba8d94dd
ÏîÄ¿´úÂë/WMS/WIDESEA_WMSServer/WIDESEA.Job/JobSchedulerForMeasure.cs
@@ -1,24 +1,27 @@
using Quartz;
using Microsoft.Extensions.Caching.Memory;
using Newtonsoft.Json;
using Quartz;
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using System.Linq;
using System.Threading;
using WIDESEA.Core.EFDbContext;
using WIDESEA.Entity.DomainModels;
using WIDESEA.Services.Repositories;
using WIDESEA.Common;
using WIDESEA.Core.Utilities;
using WIDESEA_Services;
using System.ServiceModel;
using System.Threading;
using System.Threading.Tasks;
using System.Xml;
using WIDESEA.Core.ManageUser;
using WIDESEA_Common.LogEnum;
using Microsoft.Extensions.Caching.Memory;
using WIDESEA.Common;
using WIDESEA.Core.EFDbContext;
using WIDESEA.Core.Extensions;
using WIDESEA.Services.IServices;
using Newtonsoft.Json;
using WIDESEA.Core.ManageUser;
using WIDESEA.Core.Services;
using WIDESEA.Core.Utilities;
using WIDESEA.Entity.DomainModels;
using WIDESEA.Services.IServices;
using WIDESEA.Services.Repositories;
using WIDESEA_Common.LogEnum;
using WIDESEA_Entity.CustomModels.RGVModel;
using WIDESEA_Services;
using WIDESEA_Services.Services.APIInvoke.RGV;
using static WIDESEA_Entity.CustomModels.RGVModel.RgvDeviceStatusModel;
namespace WIDESEA.Job
{
@@ -106,7 +109,15 @@
                        string[] array = null;
                        foreach (var item in tmpList)
                        {
                            if (item.task_type == TaskType.TaskType_Box_Pallet_Measure_Back.ToString() && item.task_type.Length > 10) // è¿™ä¸ªåˆ¤æ–­è‚–佼加上的01-13
                            {
                                array = item.task_tolocationid.Split('-');
                            }
                            else
                            {
                            array = item.task_fromlocationid.Split('-');
                            }
                            currentLayer.Add(int.Parse(array[0]));
                        }
                    }
@@ -118,7 +129,32 @@
                        {
                            //增加判断没有当前层的才添加
                            if (!currentLayer.Contains(tmpInfo.location_layer) && null == containerInfos.Find(r => r.location_layer == tmpInfo.location_layer))
                            {
                                // è‚–佼要在这里加一个 å¦‚æžœrgv车有故障 åˆ™ä¸èƒ½åŠ å…¥è¿™å±‚çš„
                                List<int> rgvLayer = new List<int>();
                                WebResponseContent resultcontent = RGVAPIInvokeGetRgvInfo.GetRgvInfo();
                                if (resultcontent.Status)
                                {
                                    RgvDeviceStatusModel rgvData = (RgvDeviceStatusModel)resultcontent.Data;
                                    //0离线 1正常 2故障
                                    for (int i = 0; i < rgvData.data.Count(); i++)
                                    {
                                        Info _info = rgvData.data[i];
                                        if (_info.status != 1)
                                        {
                                            rgvLayer.Add(_info.layer);
                                        }
                                    }
                                }
                                if (rgvLayer.Contains(int.Parse(tmpInfo.location_id.Split('-')[0])))
                                {
                                    continue;
                                }
                                containerInfos.Add(tmpInfo);
                            }
                        }
                    }
@@ -230,6 +266,8 @@
                        {
                            Dt_taskinfo sendTask = measureTasks[0];
                            content = WCSApi.SendTaskToWCS(new List<Dt_taskinfo>() { sendTask });
                            if (content.Status)
                            {