wanshenmean
23 小时以前 234bec78dd54ca0e2952b8d31d0c17ee1dc89ba9
Code/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService.cs
@@ -4,6 +4,7 @@
using SqlSugar;
using System.DirectoryServices.Protocols;
using System.Text.Json;
using WIDESEA_Common.Constants;
using WIDESEA_Common.LocationEnum;
using WIDESEA_Common.StockEnum;
using WIDESEA_Common.TaskEnum;
@@ -39,6 +40,7 @@
        private readonly IStockInfo_HtyService _stockInfo_HtyService;
        private readonly IUnitOfWorkManage _unitOfWorkManage;
        private readonly IRecordService _recordService;
        private readonly IMESDeviceConfigService _mesDeviceConfigService;
        public IRepository<Dt_Task> Repository => BaseDal;
@@ -63,7 +65,8 @@
            ITask_HtyService task_HtyService,
            IStockInfo_HtyService stockInfo_HtyService,
            IUnitOfWorkManage unitOfWorkManage,
            IRecordService recordService) : base(BaseDal)
            IRecordService recordService,
            IMESDeviceConfigService mesDeviceConfigService) : base(BaseDal)
        {
            _mapper = mapper;
            _stockInfoService = stockInfoService;
@@ -76,6 +79,7 @@
            _stockInfo_HtyService = stockInfo_HtyService;
            _unitOfWorkManage = unitOfWorkManage;
            _recordService = recordService;
            _mesDeviceConfigService = mesDeviceConfigService;
        }
        /// <summary>
@@ -146,7 +150,7 @@
        private string DetermineTargetAddress(string roadway, Dictionary<string, List<string>> addressMap)
        {
            if (string.IsNullOrWhiteSpace(roadway))
                return "10080";
                return TaskAddressConstants.DEFAULT_ADDRESS;
            string? matchedPrefix = null;
            foreach (var kvp in addressMap)
@@ -159,10 +163,10 @@
            }
            if (matchedPrefix == null)
                return "10080";
                return TaskAddressConstants.DEFAULT_ADDRESS;
            if (!addressMap.TryGetValue(matchedPrefix, out var addresses) || addresses == null || addresses.Count == 0)
                return "10080";
                return TaskAddressConstants.DEFAULT_ADDRESS;
            if (addresses.Count == 1)
                return addresses[0];
@@ -180,9 +184,9 @@
            {
                return remark switch
                {
                    "GW_1" => _roundRobinService.GetNextAddress("GW_1", new List<string> { "11001", "11010" }),
                    "GW_2" => "CWSC1",
                    "CW_1" => "22001",
                    StockRemarkConstants.GW1 => _roundRobinService.GetNextAddress(StockRemarkConstants.GW1, TaskAddressConstants.GW1_ADDRESSES.ToList()),
                    StockRemarkConstants.GW2 => TaskAddressConstants.GW2_ADDRESS,
                    StockRemarkConstants.CW1 => TaskAddressConstants.CW1_ADDRESS,
                    _ => DetermineTargetAddress(roadway, addressMap)
                };
            }