Code Management/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/copilot-chat/bef6627e/sessions/4a99214b-9f9f-4ab7-8ce9-83d07cd22a77Binary files differ
Code Management/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/copilot-chat/bef6627e/sessions/85d61362-b687-48eb-8099-932a817719a7Binary files differ
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MCS/MCSService.cs
@@ -4,6 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; using WIDESEA_Cache; using WIDESEA_IBusinessesRepository; using WIDESEA_IServices; using WIDESEA_IStorageBasicRepository; @@ -22,9 +23,11 @@ private readonly ISys_ConfigService _configService; private readonly IDt_StationManagerRepository _stationManagerRepository; private readonly IDt_AreaInfoRepository _areaInfoRepository; private readonly ISimpleCacheService _simpleCacheService; private readonly LogFactory LogFactory = new LogFactory(); public MCSService(ILocationInfoRepository locationRepository,IDt_TaskRepository taskRepository,IStockInfoRepository stockInfoRepository, ISys_ConfigService configService, IDt_StationManagerRepository stationManagerRepository,IDt_AreaInfoRepository dt_AreaInfoRepository) public MCSService(ILocationInfoRepository locationRepository,IDt_TaskRepository taskRepository,IStockInfoRepository stockInfoRepository, ISys_ConfigService configService, IDt_StationManagerRepository stationManagerRepository,IDt_AreaInfoRepository dt_AreaInfoRepository, ISimpleCacheService simpleCacheService) { _locationRepository = locationRepository; _taskRepository = taskRepository; @@ -32,6 +35,7 @@ _configService = configService; _stationManagerRepository = stationManagerRepository; _areaInfoRepository = dt_AreaInfoRepository; _simpleCacheService = simpleCacheService; } } } Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MCS/Partial/NotifyFinishTest.cs
@@ -105,6 +105,8 @@ if (respone.Status) { var taskId = _taskRepository.AddData(task); //_simpleCacheService.HashDel<DtStockInfo>(WIDESEA_Cache.CacheConst.Cache_DtStockInfo, new string[] { taskDTO.PalletCode }); } else Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MOM/AgingInOrOutInput/AgingInOrOutInputService.cs
@@ -35,7 +35,7 @@ input.SessionId = Guid.NewGuid().ToString(); input.EmployeeNo = "MITest"; input.RequestTime = TimeZoneInfo.ConvertTimeToUtc(DateTime.Now).ToString("yyyy-MM-ddTHH:mm:ss.fffZ"); var inputJson = input.ToDictionary(); var inputJson = Masuit.Tools.ObjectExtensions.ToDictionary(input); // Specify the namespace explicitly var configs = _configService.GetConfigsByCategory(CateGoryConst.SYS_MOMIPAddress); var wmsBase = configs.FirstOrDefault(x => x.ConfigKey == SysConfigConst.MOMBaseIP)?.ConfigValue; var ipAddress = configs.FirstOrDefault(x => x.ConfigKey == SysConfigConst.AgingInput)?.ConfigValue; @@ -85,7 +85,7 @@ input.SessionId = Guid.NewGuid().ToString(); input.EmployeeNo = "MITest"; input.RequestTime = TimeZoneInfo.ConvertTimeToUtc(DateTime.Now).ToString("yyyy-MM-ddTHH:mm:ss.fffZ"); var inputJson = input.ToDictionary(); var inputJson = Masuit.Tools.ObjectExtensions.ToDictionary(input); // Specify the namespace explicitly var configs = _configService.GetConfigsByCategory(CateGoryConst.SYS_MOMIPAddress); var wmsBase = configs.FirstOrDefault(x => x.ConfigKey == SysConfigConst.MOMBaseIP)?.ConfigValue; var ipAddress = configs.FirstOrDefault(x => x.ConfigKey == SysConfigConst.AgingOutput)?.ConfigValue; Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MOM/CellState/CellStateService.cs
@@ -42,7 +42,7 @@ input.SessionId = Guid.NewGuid().ToString(); input.EmployeeNo = "MITest"; input.RequestTime = TimeZoneInfo.ConvertTimeToUtc(DateTime.Now).ToString("yyyy-MM-ddTHH:mm:ss.fffZ"); var inputJson = input.ToDictionary(); var inputJson = Masuit.Tools.ObjectExtensions.ToDictionary(input); var configs = _configService.GetConfigsByCategory(CateGoryConst.SYS_MOMIPAddress); var wmsBase = configs.FirstOrDefault(x => x.ConfigKey == SysConfigConst.MOMBaseIP)?.ConfigValue; var ipAddress = configs.FirstOrDefault(x => x.ConfigKey == SysConfigConst.CellState)?.ConfigValue; @@ -82,7 +82,7 @@ input.SessionId = Guid.NewGuid().ToString(); input.EmployeeNo = "MITest"; input.RequestTime = TimeZoneInfo.ConvertTimeToUtc(DateTime.Now).ToString("yyyy-MM-ddTHH:mm:ss.fffZ"); var inputJson = input.ToDictionary(); var inputJson = Masuit.Tools.ObjectExtensions.ToDictionary(input); var configs = _configService.GetConfigsByCategory(CateGoryConst.SYS_MOMIPAddress); var wmsBase = configs.FirstOrDefault(x => x.ConfigKey == SysConfigConst.MOMBaseIP)?.ConfigValue; var ipAddress = configs.FirstOrDefault(x => x.ConfigKey == SysConfigConst.TrayCellsStatus)?.ConfigValue; Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MOM/ProcessApply/ProcessApplyService.cs
@@ -47,7 +47,7 @@ input.SessionId = Guid.NewGuid().ToString(); input.EmployeeNo = "MITest"; input.RequestTime = TimeZoneInfo.ConvertTimeToUtc(DateTime.Now).ToString("yyyy-MM-ddTHH:mm:ss.fffZ"); var inputJson = input.ToDictionary(); var inputJson = Masuit.Tools.ObjectExtensions.ToDictionary(input); var configs = _configService.GetConfigsByCategory(CateGoryConst.SYS_MOMIPAddress); var wmsBase = configs.FirstOrDefault(x => x.ConfigKey == SysConfigConst.MOMBaseIP)?.ConfigValue; var ipAddress = configs.FirstOrDefault(x => x.ConfigKey == SysConfigConst.ProcessApply)?.ConfigValue; Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/MOM/Unbind/UnbindService.cs
@@ -38,7 +38,7 @@ input.EquipmentCode = "24MEJQ08-1091"; input.EmployeeNo = "MITest"; input.RequestTime = TimeZoneInfo.ConvertTimeToUtc(DateTime.Now).ToString("yyyy-MM-ddTHH:mm:ss.fffZ"); var inputJson = input.ToDictionary(); var inputJson = Masuit.Tools.ObjectExtensions.ToDictionary(input); LogFactory.GetLog("托盘单电芯解绑1").Info(true, JsonConvert.SerializeObject(inputJson)); var configs = _configService.GetConfigsByCategory(CateGoryConst.SYS_MOMIPAddress); var wmsBase = configs.FirstOrDefault(x => x.ConfigKey == SysConfigConst.MOMBaseIP)?.ConfigValue; @@ -77,7 +77,7 @@ input.EquipmentCode = "24MEJQ08-1091"; input.EmployeeNo = "MITest"; input.RequestTime = TimeZoneInfo.ConvertTimeToUtc(DateTime.Now).ToString("yyyy-MM-ddTHH:mm:ss.fffZ"); var inputJson = input.ToDictionary(); var inputJson = Masuit.Tools.ObjectExtensions.ToDictionary(input); Console.WriteLine(inputJson); var configs = _configService.GetConfigsByCategory(CateGoryConst.SYS_MOMIPAddress); var wmsBase = configs.FirstOrDefault(x => x.ConfigKey == SysConfigConst.MOMBaseIP)?.ConfigValue; Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StoragIntegrationServices/WIDESEA_StoragIntegrationServices.csproj
@@ -8,6 +8,7 @@ <ItemGroup> <ProjectReference Include="..\LogLibrary\LogLibrary.csproj" /> <ProjectReference Include="..\WIDESEA_Cache\WIDESEA_Cache.csproj" /> <ProjectReference Include="..\WIDESEA_Common\WIDESEA_Common.csproj" /> <ProjectReference Include="..\WIDESEA_IStoragIntegrationServices\WIDESEA_IStoragIntegrationServices.csproj" /> <ProjectReference Include="..\WIDESEA_Services\WIDESEA_Services.csproj" /> Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/AspNetCoreSchedule.cs
@@ -36,7 +36,7 @@ public Task StartAsync(CancellationToken cancellationToken) { _timer = new Timer(DoWork, null, TimeSpan.Zero, TimeSpan.FromMinutes(20)); _timer = new Timer(DoWork, null, TimeSpan.Zero, TimeSpan.FromMinutes(5)); return Task.CompletedTask; } @@ -51,9 +51,8 @@ IDictionary<string, DtStockInfo>? stockInfos = _simpleCacheService.HashGetAll<DtStockInfo>(WIDESEA_Cache.CacheConst.Cache_DtStockInfo); List<DtStockInfo> stockInfoList = stockInfos.Values.ToList(); var stockInfo = stockInfoList.Where(x => x.AreaCode == area.AreaCode && x.OutboundTime < DateTime.Now && x.IsFull == true) // 过滤条件 .Where(x => x.LocationInfo.LocationStatus == (int)LocationEnum.InStock && x.LocationInfo.AreaId == area.AreaID) // 过滤条件 .Where(x => x.LocationInfo != null && x.LocationInfo.LocationStatus == (int)LocationEnum.InStock && x.LocationInfo.AreaId == area.AreaID) // 过滤条件 .OrderBy(x => x.OutboundTime) // 排序 .ToList(); // 获取第一个元素 @@ -140,7 +139,7 @@ Creater = "System", // 修正拼写错误 CreateDate = DateTime.Now, TaskId = 0, ProductionLine= stockInfo.ProductionLine, ProductionLine = stockInfo.ProductionLine, ProcessCode = stockInfo.ProcessCode, }; } Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Dt_TaskService.cs
@@ -1,6 +1,5 @@ using Mapster; using Masuit.Tools; using NewLife.Caching; using SqlSugar; using System.Text.RegularExpressions; using WIDESEA_Cache; @@ -216,6 +215,8 @@ await DeleteTaskAsync(task.TaskId); await AddTaskHtyAsync(taskHty); }); _simpleCacheService.HashDel<DtStockInfo>(WIDESEA_Cache.CacheConst.Cache_DtStockInfo, new string[] { stock.PalletCode }); return content.OK("任务完成成功", task.Remark); } @@ -451,6 +452,7 @@ { _locationStatusChangeRecordRepository.AddLocationStatusChangeRecord(locationInf, lastStatus, (int)StatusChangeTypeEnum.AutomaticStorage, task.TaskNum); stock.StockInfoDetails = new List<DtStockInfoDetail>() { { stock.StockInfoDetails[0] } }; _simpleCacheService.HashAdd(WIDESEA_Cache.CacheConst.Cache_DtStockInfo, stock.PalletCode, stock); content.OK("入库任务完成成功"); @@ -1286,67 +1288,6 @@ .OrderBy(x => x.OutboundTime) .FirstOrDefault(); if (result != null) { stockInfoList = stockInfoList.Where(x => x != result).ToList(); _simpleCacheService.HashDel<DtStockInfo>(WIDESEA_Cache.CacheConst.Cache_DtStockInfo, new string[] { result.PalletCode }); } return result; if (stockInfoList.IsNullOrEmpty()) { stockInfoList = await _stockInfoRepository.Db.Queryable<DtStockInfo>().IncludesAllFirstLayer().ToListAsync(); result = stockInfoList.Where(x => x.AreaCode == areaCode && x.OutboundTime < DateTime.Now && x.IsFull == true) .WhereIF(!productionLine.IsNullOrEmpty(), x => x.ProductionLine == productionLine) .Where(x => x.LocationInfo.LocationStatus == (int)LocationEnum.InStock && x.LocationInfo.AreaId == area.AreaID && x.LocationInfo.EnalbeStatus == (int)EnableEnum.Enable) // 过滤条件 .WhereIF(!devices.IsNullOrEmpty(), x => devices.Contains(x.LocationInfo.RoadwayNo)) .WhereIF(!materielCodes.IsNullOrEmpty(), x => x.StockInfoDetails.Any(y => materielCodes.Contains(y.MaterielCode))) .OrderBy(x => x.OutboundTime) // 排序 .FirstOrDefault(); // 获取第一个元素 if (result != null) { // 排除 result 中的元素 stockInfoList = stockInfoList.Where(x => x != result).ToList(); } foreach (var item in stockInfoList) { _simpleCacheService.HashAdd(WIDESEA_Cache.CacheConst.Cache_DtStockInfo, item.PalletCode, item); } } else { result = stockInfoList.Where(x => x.AreaCode == areaCode && x.OutboundTime < DateTime.Now && x.IsFull == true) .WhereIF(!productionLine.IsNullOrEmpty(), x => x.ProductionLine == productionLine) .Where(x => x.LocationInfo.LocationStatus == (int)LocationEnum.InStock && x.LocationInfo.AreaId == area.AreaID && x.LocationInfo.EnalbeStatus == (int)EnableEnum.Enable) // 过滤条件 .WhereIF(!devices.IsNullOrEmpty(), x => devices.Contains(x.LocationInfo.RoadwayNo)) .WhereIF(!materielCodes.IsNullOrEmpty(), x => x.StockInfoDetails.Any(y => materielCodes.Contains(y.MaterielCode))) .OrderBy(x => x.OutboundTime) // 排序 .FirstOrDefault(); // 获取第一个元素 if (result != null) { // 排除 result 中的元素 stockInfoList = stockInfoList.Where(x => x != result).ToList(); } string[] xfasd = new string[] { result.PalletCode }; _simpleCacheService.HashDel<DtStockInfo>(WIDESEA_Cache.CacheConst.Cache_DtStockInfo, new string[] { result.PalletCode }); } #region //var result = await _stockInfoRepository.Db.Queryable<DtStockInfo>() // .Includes(x => x.LocationInfo) // 预加载LocationInfo // .Includes(x => x.StockInfoDetails) // 预加载StockInfoDetails // .Where(x => x.AreaCode == areaCode && x.OutboundTime < DateTime.Now && x.IsFull == true) // 过滤条件 // .WhereIF(!productionLine.IsNullOrEmpty(), x => x.ProductionLine == productionLine) // .Where(x => x.LocationInfo.LocationStatus == (int)LocationEnum.InStock && x.LocationInfo.AreaId == area.AreaID && x.LocationInfo.EnalbeStatus == (int)EnableEnum.Enable) // 过滤条件 // .WhereIF(!devices.IsNullOrEmpty(), x => devices.Contains(x.LocationInfo.RoadwayNo)) // .WhereIF(!materielCodes.IsNullOrEmpty(), x => x.StockInfoDetails.Any(y => materielCodes.Contains(y.MaterielCode))) // .OrderBy(x => x.OutboundTime) // 排序 // .FirstAsync(); // 获取第一个元素 #endregion 请求出库(实盘&空盘) return result; } @@ -1393,12 +1334,6 @@ .OrderBy(x => x.OutboundTime) // 排序 .FirstOrDefault(); // 获取第一个元素 if (result != null) { stockInfoList = stockInfoList.Where(x => x != result).ToList(); _simpleCacheService.HashDel<DtStockInfo>(WIDESEA_Cache.CacheConst.Cache_DtStockInfo, new string[] { result.PalletCode }); } return result; } @@ -1431,11 +1366,11 @@ .OrderBy(x => x.CreateDate) // 排序 .FirstOrDefault(); // 转换为列表 if (result != null) { stockInfoList = stockInfoList.Where(x => x != result).ToList(); _simpleCacheService.HashDel<DtStockInfo>(WIDESEA_Cache.CacheConst.Cache_DtStockInfo, new string[] { result.PalletCode }); } //if (result != null) //{ // stockInfoList = stockInfoList.Where(x => x != result).ToList(); // _simpleCacheService.HashDel<DtStockInfo>(WIDESEA_Cache.CacheConst.Cache_DtStockInfo, new string[] { result.PalletCode }); //} return result; } Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/Task/Partial/Dt_TaskService.cs
@@ -542,12 +542,13 @@ { if (stationManager.stationType != 7) throw new Exception("错误的调取"); var stockinfo = await _stockInfoRepository.Db.Queryable<DtStockInfo>() .Includes(x => x.LocationInfo) //.Includes(x=>x.StockInfoDetails) .Where(x => !x.IsFull && x.LocationInfo.RoadwayNo == stationManager.Roadway) // 从缓存中获取库存信息 IDictionary<string, DtStockInfo>? stockInfos = _simpleCacheService.HashGetAll<DtStockInfo>(WIDESEA_Cache.CacheConst.Cache_DtStockInfo); List<DtStockInfo> stockInfoList = stockInfos.Values.ToList(); var stockinfo = stockInfoList.Where(x => x.LocationInfo != null && !x.IsFull && x.LocationInfo.RoadwayNo == stationManager.Roadway) .OrderBy(x => x.CreateDate) .FirstAsync(); .FirstOrDefault(); if (stockinfo == null) return null; @@ -886,11 +887,34 @@ #region 常温补空托盘至分容 private static readonly Dictionary<string, (int Count, DateTime LastRequestTime)> requestTrackerToCW = new(); public async Task<WebResponseContent> GetFROutTrayToCW(RequestTaskDto taskDTO) { WebResponseContent content = new WebResponseContent(); try { string requestKey = JsonConvert.SerializeObject(taskDTO); // 检查请求次数和时间限制 if (requestTrackerToCW.TryGetValue(requestKey, out var requestInfo)) { if (requestInfo.Count > 5 && DateTime.Now < requestInfo.LastRequestTime.AddMinutes(2)) { // 如果请求次数超过限制且未超过10分钟,抛出异常 throw new InvalidOperationException("请求次数已达到限制,请稍后再试。"); } } // 更新请求跟踪信息 if (requestTrackerToCW.ContainsKey(requestKey)) { requestTrackerToCW[requestKey] = (requestInfo.Count + 1, DateTime.Now); } else { requestTrackerToCW[requestKey] = (1, DateTime.Now); } var station = _stationManagerRepository.QueryFirst(x => x.stationChildCode == taskDTO.Position && x.stationStatus == "1"); var locations = _locationRepository.QueryData(x => x.RoadwayNo == station.Roadway && x.LocationStatus == (int)LocationEnum.Free && x.LocationType == 1); @@ -923,6 +947,8 @@ _locationStatusChangeRecordRepository.AddLocationStatusChangeRecord(location, lastStatus, (int)StatusChangeTypeEnum.AutomaticDelivery, task.TaskNum); // 返回成功响应 requestTrackerToCW.Remove(requestKey); return content.OK(data: wmsTask); } else @@ -960,17 +986,12 @@ var result = stockInfoList.Where(x => x.ProductionLine == productLine) .Where(x => x.AreaCode == areaCode && x.IsFull == false) .Where(x => x.StockInfoDetails.Any(y => y.MaterielCode == "空托盘")) .Where(x => x.LocationInfo.LocationStatus == (int)LocationEnum.InStock && x.LocationInfo.AreaId == area.AreaID && x.LocationInfo.EnalbeStatus == (int)EnableEnum.Enable) // 过滤条件 .WhereIF(!deviceCode.IsNullOrEmpty(), x => deviceCode.Contains(x.LocationInfo.RoadwayNo)) .Where(x => x.StockInfoDetails != null && x.StockInfoDetails.Any(y => y.MaterielCode == "空托盘")) .Where(x => x.LocationInfo != null && x.LocationInfo.LocationStatus == (int)LocationEnum.InStock && x.LocationInfo.AreaId == area.AreaID && x.LocationInfo.EnalbeStatus == (int)EnableEnum.Enable) // 过滤条件 .WhereIF(!deviceCode.IsNullOrEmpty(), x => x.LocationInfo != null && deviceCode.Contains(x.LocationInfo.RoadwayNo)) .OrderBy(x => x.CreateDate) // 排序 .FirstOrDefault(); // 转换为列表 if (result != null) { stockInfoList = stockInfoList.Where(x => x != result).ToList(); _simpleCacheService.HashDel<DtStockInfo>(WIDESEA_Cache.CacheConst.Cache_DtStockInfo, new string[] { result.PalletCode }); } return result; } @@ -991,28 +1012,6 @@ WebResponseContent content = new WebResponseContent(); try { //string requestKey = JsonConvert.SerializeObject(json); //// 检查请求次数和时间限制 //if (requestTracker.TryGetValue(requestKey, out var requestInfo)) //{ // if (requestInfo.Count >= 9 && DateTime.Now < requestInfo.LastRequestTime.AddMinutes(5)) // { // // 如果请求次数超过限制且未超过10分钟,抛出异常 // throw new InvalidOperationException("请求次数已达到限制,请稍后再试。"); // } //} //// 更新请求跟踪信息 //if (requestTracker.ContainsKey(requestKey)) //{ // requestTracker[requestKey] = (requestInfo.Count + 1, DateTime.Now); //} //else //{ // requestTracker[requestKey] = (1, DateTime.Now); //} //LogFactory.GetLog("常温3出库至包装").Info(true, $"常温3出库至包装传入参数:" + JsonConvert.SerializeObject(json, Formatting.Indented)); Dt_StationManager station = _stationManagerRepository.QueryFirst(x => x.stationChildCode == json.Position && x.stationType == 12 && x.stationArea == "Call"); if (station == null) { throw new Exception($"未找到包装站台信息,请检查传入参数{json.Position}"); } @@ -1021,26 +1020,20 @@ .Where(x => x.DeviceCode.Contains("CWSC")) // 过滤条件 .ToList().Select(x => x.DeviceCode).ToList(); // 从缓存中获取库存信息 IDictionary<string, DtStockInfo>? stockInfos = _simpleCacheService.HashGetAll<DtStockInfo>(WIDESEA_Cache.CacheConst.Cache_DtStockInfo); List<DtStockInfo> stockInfoList = stockInfos.Values.ToList(); var stockInfo = stockInfoList.Where(x => x.ProductionLine == station.productLine) .Where(x => x.AreaCode == "CWSC3" && x.IsFull == true) // 过滤条件 .Where(x => x.LocationInfo.LocationStatus == (int)LocationEnum.InStock) // 过滤条件 .WhereIF(!deviceCode.IsNullOrEmpty(), x => deviceCode.Contains(x.LocationInfo.RoadwayNo)) .OrderBy(x => x.OutboundTime) // 排序 .FirstOrDefault(); // 获取第一个元素 if (stockInfo != null) { stockInfoList = stockInfoList.Where(x => x != stockInfo).ToList(); _simpleCacheService.HashDel<DtStockInfo>(WIDESEA_Cache.CacheConst.Cache_DtStockInfo, new string[] { stockInfo.PalletCode }); } // 修改后的查询代码 var stockInfo = stockInfoList .Where(x => x.ProductionLine == station.productLine) .Where(x => x.AreaCode == "CWSC3" && x.IsFull == true) // 增加对 LocationInfo 的空值检查 .Where(x => x.LocationInfo != null && x.LocationInfo.LocationStatus == (int)LocationEnum.InStock) // 增加对 LocationInfo 的空值检查 .WhereIF(!deviceCode.IsNullOrEmpty(), x => x.LocationInfo != null && deviceCode.Contains(x.LocationInfo.RoadwayNo)) .OrderBy(x => x.OutboundTime) .FirstOrDefault(); if (stockInfo == null) throw new Exception($"库内{station.productLine}无满足条件的库存可出库"); Code Management/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Program.cs
@@ -201,11 +201,11 @@ redis.DelByPattern(CacheConst.Cache_Prefix); WIDESEA_Core.Helper.ConsoleHelper.WriteInfoLine("正在缓存库存信息"); var stockInfoList = await SqlSugarHelper.DbWMS.Queryable<DtStockInfo>() .Where(x => x.LocationInfo.LocationStatus == (int)LocationEnum.InStock).IncludesAllFirstLayer().ToListAsync(); var stockInfoList = await SqlSugarHelper.DbWMS.Queryable<DtStockInfo>().IncludesAllFirstLayer().ToListAsync(); // 缓存库存信息 foreach (var item in stockInfoList) { item.StockInfoDetails = new List<DtStockInfoDetail>() { { item.StockInfoDetails[0] } }; redis.HashAdd(CacheConst.Cache_DtStockInfo, item.PalletCode, item); } WIDESEA_Core.Helper.ConsoleHelper.WriteInfoLine("缓存库存信息完成"); Code Management/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/appsettings.json
@@ -15,7 +15,7 @@ //"ConnectionString": "Data Source=.\\LIULEI;Initial Catalog=WIDESEA_WMSDB_BBMain;User ID=sa;Password=123456;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False", //"ConnectionString": "Data Source=192.168.20.251;Initial Catalog=WIDESEA_WMSDB;User ID=sa;Password=123456@gy;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False", //"ConnectionStringWCS": "Data Source=192.168.5.251;Initial Catalog=WIDESEAWCS_TEST;User ID=sa;Password=P@ssw0rd;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False", "ConnectionStringWCS": "Data Source=127.0.0.1;Initial Catalog=WIDESEA_WCSDB;User ID=sa;Password=sa123456;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False", "ConnectionStringWCS": "Data Source=127.0.0.1;Initial Catalog=WIDESEA_WCS2F09;User ID=sa;Password=P@ssw0rd;Integrated Security=False;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False", //跨域 "Cors": { "PolicyName": "CorsIpAccess", //策略名称