namespace HStation.CAL.LocalClient
{
///
///
///
public class XhsPhartGraphStd : IXhsPhartGraphStd
{
private readonly HStation.Service.XhsPhartGraph _service = new();
///
/// 获取所有
///
public async Task> GetByDiagramID(long DiagramID)
{
return await Task.Factory.StartNew(() =>
{
var keyContent = $"Phart_Graph_Std_GetByDiagramID_{DiagramID}";
var cacheKey = Yw.Untity.MemoryCacheKeyHelper.GetKey(Xhs.MemoryCacheKey.WebApiLevel, Xhs.MemoryCacheKey.Module, keyContent);
var vm_list = Yw.MemoryCacheHelper.GetSet(cacheKey, () =>
{
var list = _service.GetByDiagramID(DiagramID);
Service.XhsPhartGraph.PublishCache(cacheKey);
var vmList = list?.Select(x => new XhsPhartGraphStdDto(x)).ToList();
return vmList;
}, Yw.Service.ConfigHelper.CacheLevel5);
return vm_list;
});
}
}
}