Files
Yi.Framework/Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Domain/YiFrameworkBbsDomainModule.cs
2024-05-22 14:35:08 +08:00

38 lines
1.5 KiB
C#

using System.Collections.Generic;
using Mapster;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;
using Volo.Abp;
using Volo.Abp.Caching;
using Volo.Abp.Domain.Repositories;
using Volo.Abp.Modularity;
using Yi.Framework.Bbs.Domain.Entities.Integral;
using Yi.Framework.Bbs.Domain.Shared;
using Yi.Framework.Bbs.Domain.Shared.Caches;
using Yi.Framework.Bbs.Domain.Shared.Consts;
using Yi.Framework.Rbac.Domain;
namespace Yi.Framework.Bbs.Domain
{
[DependsOn(
typeof(YiFrameworkBbsDomainSharedModule),
typeof(YiFrameworkRbacDomainModule)
)]
public class YiFrameworkBbsDomainModule : AbpModule
{
public override async Task OnPostApplicationInitializationAsync(ApplicationInitializationContext context)
{
//加载等级缓存
var services = context.ServiceProvider;
var logger = services.GetRequiredService<ILogger<YiFrameworkBbsDomainModule>>();
logger.LogInformation("正在初始化【BBS-等级数据】......");
var levelRepository = services.GetRequiredService<IRepository<LevelAggregateRoot>>();
var levelCache = services.GetRequiredService<IDistributedCache<List<LevelCacheItem>>>();
var cacheItem = (await levelRepository.GetListAsync()).Adapt<List<LevelCacheItem>>();
await levelCache.SetAsync(LevelConst.LevelCacheKey, cacheItem);
logger.LogInformation("已完成初始化【BBS-等级数据】");
}
}
}