From c51aaf0a95836b83bb4c209556cfddaf42ea3314 Mon Sep 17 00:00:00 2001
From: xxyy <cathay_xy@163.com>
Date: 星期四, 06 三月 2025 10:09:49 +0800
Subject: [PATCH] 优化缓存使用和定时器设置
---
Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/AspNetCoreSchedule.cs | 20 ++++++++++++++------
1 files changed, 14 insertions(+), 6 deletions(-)
diff --git a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/AspNetCoreSchedule.cs b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/AspNetCoreSchedule.cs
index b9093ab..3a75882 100644
--- a/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/AspNetCoreSchedule.cs
+++ b/Code Management/WMS/WIDESEA_WMSServer/WIDESEA_StorageTaskServices/AspNetCoreSchedule.cs
@@ -1,6 +1,7 @@
锘縰sing Masuit.Tools;
using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging;
+using WIDESEA_Cache;
using WIDESEA_Core.Const;
using WIDESEA_DTO.WMS;
using WIDESEA_IServices;
@@ -17,10 +18,11 @@
private readonly IDt_StationManagerRepository _stationManagerRepository;
private readonly ISys_ConfigService _configService;
private readonly ILocationInfoRepository _locationRepository;
+ private readonly ISimpleCacheService _simpleCacheService;
private Timer _timer;
- public MyBackgroundService(ILogger<MyBackgroundService> logger, ILocationInfoRepository locationRepository, IStockInfoRepository stockInfoRepository, IDt_AreaInfoRepository areaInfoRepository, IDt_TaskRepository taskRepository, IDt_StationManagerRepository stationManagerRepository, ISys_ConfigService configService)
+ public MyBackgroundService(ILogger<MyBackgroundService> logger, ILocationInfoRepository locationRepository, IStockInfoRepository stockInfoRepository, IDt_AreaInfoRepository areaInfoRepository, IDt_TaskRepository taskRepository, IDt_StationManagerRepository stationManagerRepository, ISys_ConfigService configService, ISimpleCacheService simpleCacheService)
{
_logger = logger;
_locationRepository = locationRepository;
@@ -29,11 +31,12 @@
_taskRepository = taskRepository;
_stationManagerRepository = stationManagerRepository;
_configService = configService;
+ _simpleCacheService = simpleCacheService;
}
public Task StartAsync(CancellationToken cancellationToken)
{
- _timer = new Timer(DoWork, null, 0, 10000);
+ _timer = new Timer(DoWork, null, TimeSpan.Zero, TimeSpan.FromMinutes(20));
return Task.CompletedTask;
}
@@ -44,10 +47,12 @@
var area = _areaInfoRepository.QueryFirst(x => x.AreaCode == "GWSC1");
if (area == null) { return; }
- var stockInfo = _stockInfoRepository.Db.Queryable<DtStockInfo>()
- .Includes(x => x.LocationInfo) // 棰勫姞杞絃ocationInfo
- .Includes(x => x.StockInfoDetails) // 棰勫姞杞絊tockInfoDetails
- .Where(x => x.AreaCode == area.AreaCode && x.OutboundTime < DateTime.Now && x.IsFull == true) // 杩囨护鏉′欢
+
+ 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) // 杩囨护鏉′欢
.OrderBy(x => x.OutboundTime) // 鎺掑簭
.ToList(); // 鑾峰彇绗竴涓厓绱�
@@ -135,6 +140,8 @@
Creater = "System", // 淇鎷煎啓閿欒
CreateDate = DateTime.Now,
TaskId = 0,
+ ProductionLine= stockInfo.ProductionLine,
+ ProcessCode = stockInfo.ProcessCode,
};
}
@@ -154,6 +161,7 @@
TaskState = task.TaskState.Value,
Id = 0,
TaskType = task.TaskType,
+ ProductionLine = task.ProductionLine,
};
}
}
--
Gitblit v1.9.3