feat: 搭建模块
This commit is contained in:
@@ -1,56 +0,0 @@
|
||||
using Microsoft.Extensions.Configuration;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using Quartz;
|
||||
using Quartz.Logging;
|
||||
using Volo.Abp.BackgroundWorkers.Quartz;
|
||||
using Volo.Abp.Data;
|
||||
using Yi.Framework.Rbac.Domain.Entities;
|
||||
using Yi.Framework.SqlSugarCore.Abstractions;
|
||||
|
||||
namespace Yi.Abp.Application.Jobs
|
||||
{
|
||||
public class DemoResetJob : QuartzBackgroundWorkerBase
|
||||
{
|
||||
private ISqlSugarDbContext _dbContext;
|
||||
private ILogger<DemoResetJob> _logger => LoggerFactory.CreateLogger<DemoResetJob>();
|
||||
private IDataSeeder _dataSeeder;
|
||||
private IConfiguration _configuration;
|
||||
public DemoResetJob(ISqlSugarDbContext dbContext, IDataSeeder dataSeeder, IConfiguration configuration)
|
||||
{
|
||||
_dbContext = dbContext;
|
||||
JobDetail = JobBuilder.Create<DemoResetJob>().WithIdentity(nameof(DemoResetJob)).Build();
|
||||
|
||||
//每天01点与13点,演示环境进行重置
|
||||
Trigger = TriggerBuilder.Create().WithIdentity(nameof(DemoResetJob)).WithCronSchedule("0 0 1,13 * * ? ").Build();
|
||||
// Trigger = TriggerBuilder.Create().WithIdentity(nameof(DemoResetJob)).WithSimpleSchedule(x=>x.WithIntervalInSeconds(10)).Build();
|
||||
_dataSeeder = dataSeeder;
|
||||
_configuration = configuration;
|
||||
}
|
||||
public override async Task Execute(IJobExecutionContext context)
|
||||
{
|
||||
//开启演示环境重置功能
|
||||
if (_configuration.GetSection("EnableDemoReset").Get<bool>())
|
||||
{
|
||||
//定时任务,非常简单
|
||||
_logger.LogWarning("演示环境正在还原!");
|
||||
var db = _dbContext.SqlSugarClient.CopyNew();
|
||||
db.DbMaintenance.TruncateTable<UserAggregateRoot>();
|
||||
db.DbMaintenance.TruncateTable<UserRoleEntity>();
|
||||
db.DbMaintenance.TruncateTable<RoleAggregateRoot>();
|
||||
db.DbMaintenance.TruncateTable<RoleMenuEntity>();
|
||||
db.DbMaintenance.TruncateTable<MenuAggregateRoot>();
|
||||
db.DbMaintenance.TruncateTable<RoleDeptEntity>();
|
||||
db.DbMaintenance.TruncateTable<DeptAggregateRoot>();
|
||||
db.DbMaintenance.TruncateTable<PostAggregateRoot>();
|
||||
db.DbMaintenance.TruncateTable<UserPostEntity>();
|
||||
|
||||
//删除种子数据
|
||||
await _dataSeeder.SeedAsync();
|
||||
_logger.LogWarning("演示环境还原成功!");
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -7,6 +7,7 @@
|
||||
<ProjectReference Include="..\..\module\bbs\Yi.Framework.Bbs.Application\Yi.Framework.Bbs.Application.csproj" />
|
||||
<ProjectReference Include="..\..\module\chat-hub\Yi.Framework.ChatHub.Application\Yi.Framework.ChatHub.Application.csproj" />
|
||||
<ProjectReference Include="..\..\module\code-gen\Yi.Framework.CodeGen.Application\Yi.Framework.CodeGen.Application.csproj" />
|
||||
<ProjectReference Include="..\..\module\digital-collectibles\Yi.Framework.DigitalCollectibles.Application\Yi.Framework.DigitalCollectibles.Application.csproj" />
|
||||
<ProjectReference Include="..\..\module\rbac\Yi.Framework.Rbac.Application\Yi.Framework.Rbac.Application.csproj" />
|
||||
<ProjectReference Include="..\..\module\setting-management\Yi.Framework.SettingManagement.Application\Yi.Framework.SettingManagement.Application.csproj" />
|
||||
<ProjectReference Include="..\..\module\tenant-management\Yi.Framework.TenantManagement.Application\Yi.Framework.TenantManagement.Application.csproj" />
|
||||
|
||||
@@ -5,6 +5,7 @@ using Yi.Framework.Bbs.Application;
|
||||
using Yi.Framework.ChatHub.Application;
|
||||
using Yi.Framework.CodeGen.Application;
|
||||
using Yi.Framework.Ddd.Application;
|
||||
using Yi.Framework.DigitalCollectibles.Application;
|
||||
using Yi.Framework.Rbac.Application;
|
||||
using Yi.Framework.SettingManagement.Application;
|
||||
using Yi.Framework.TenantManagement.Application;
|
||||
@@ -18,6 +19,7 @@ namespace Yi.Abp.Application
|
||||
|
||||
typeof(YiFrameworkRbacApplicationModule),
|
||||
typeof(YiFrameworkBbsApplicationModule),
|
||||
typeof(YiFrameworkDigitalCollectiblesApplicationModule),
|
||||
typeof(YiFrameworkChatHubApplicationModule),
|
||||
typeof(YiFrameworkTenantManagementApplicationModule),
|
||||
typeof(YiFrameworkCodeGenApplicationModule),
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
<ProjectReference Include="..\..\module\bbs\Yi.Framework.Bbs.SqlSugarCore\Yi.Framework.Bbs.SqlSugarCore.csproj" />
|
||||
<ProjectReference Include="..\..\module\chat-hub\Yi.Framework.ChatHub.SqlSugarCore\Yi.Framework.ChatHub.SqlSugarCore.csproj" />
|
||||
<ProjectReference Include="..\..\module\code-gen\Yi.Framework.CodeGen.SqlSugarCore\Yi.Framework.CodeGen.SqlSugarCore.csproj" />
|
||||
<ProjectReference Include="..\..\module\digital-collectibles\Yi.Framework.DigitalCollectibles.SqlSugarCore\Yi.Framework.DigitalCollectibles.SqlSugarCore.csproj" />
|
||||
<ProjectReference Include="..\..\module\rbac\Yi.Framework.Rbac.SqlSugarCore\Yi.Framework.Rbac.SqlSugarCore.csproj" />
|
||||
<ProjectReference Include="..\..\module\setting-management\Yi.Framework.SettingManagement.SqlSugarCore\Yi.Framework.SettingManagement.SqlSugarCore.csproj" />
|
||||
<ProjectReference Include="..\..\module\tenant-management\Yi.Framework.TenantManagement.SqlSugarCore\Yi.Framework.TenantManagement.SqlSugarCore.csproj" />
|
||||
|
||||
@@ -6,6 +6,7 @@ using Yi.Framework.AuditLogging.SqlSugarCore;
|
||||
using Yi.Framework.Bbs.SqlSugarCore;
|
||||
using Yi.Framework.ChatHub.SqlSugarCore;
|
||||
using Yi.Framework.CodeGen.SqlSugarCore;
|
||||
using Yi.Framework.DigitalCollectibles.SqlsugarCore;
|
||||
using Yi.Framework.Mapster;
|
||||
using Yi.Framework.Rbac.SqlSugarCore;
|
||||
using Yi.Framework.SettingManagement.SqlSugarCore;
|
||||
@@ -19,6 +20,7 @@ namespace Yi.Abp.SqlsugarCore
|
||||
typeof(YiAbpDomainModule),
|
||||
|
||||
typeof(YiFrameworkRbacSqlSugarCoreModule),
|
||||
typeof(YiFrameworkDigitalCollectiblesSqlSugarCoreModule),
|
||||
typeof(YiFrameworkBbsSqlSugarCoreModule),
|
||||
typeof(YiFrameworkCodeGenSqlSugarCoreModule),
|
||||
typeof(YiFrameworkChatHubSqlSugarCoreModule),
|
||||
|
||||
@@ -33,6 +33,7 @@ using Yi.Framework.Bbs.Application;
|
||||
using Yi.Framework.Bbs.Application.Extensions;
|
||||
using Yi.Framework.ChatHub.Application;
|
||||
using Yi.Framework.CodeGen.Application;
|
||||
using Yi.Framework.DigitalCollectibles.Application;
|
||||
using Yi.Framework.Rbac.Application;
|
||||
using Yi.Framework.Rbac.Domain.Authorization;
|
||||
using Yi.Framework.Rbac.Domain.Shared.Consts;
|
||||
@@ -94,7 +95,8 @@ namespace Yi.Abp.Web
|
||||
options => options.RemoteServiceName = "tenant-management");
|
||||
options.ConventionalControllers.Create(typeof(YiFrameworkCodeGenApplicationModule).Assembly,
|
||||
options => options.RemoteServiceName = "code-gen");
|
||||
|
||||
options.ConventionalControllers.Create(typeof(YiFrameworkDigitalCollectiblesApplicationModule).Assembly,
|
||||
options => options.RemoteServiceName = "digital-collectibles");
|
||||
//统一前缀
|
||||
options.ConventionalControllers.ConventionalControllerSettings.ForEach(x => x.RootPath = "api/app");
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user