😎代码优化及清理
This commit is contained in:
parent
de9bde949d
commit
25fd6e6890
@ -41,4 +41,10 @@ public enum PlatformTypeEnum
|
||||
/// </summary>
|
||||
[Description("支付宝")]
|
||||
Alipay = 5,
|
||||
|
||||
/// <summary>
|
||||
/// 其他
|
||||
/// </summary>
|
||||
[Description("其他")]
|
||||
Other = 99,
|
||||
}
|
||||
@ -19,23 +19,19 @@ namespace Admin.NET.Core.Service;
|
||||
[ApiDescriptionSettings(Order = 240)]
|
||||
public class SysAlipayService : IDynamicApiController, ITransient
|
||||
{
|
||||
private readonly IWebHostEnvironment _webHostEnvironment;
|
||||
private readonly SysConfigService _sysConfigService;
|
||||
private readonly List<IAopClient> _alipayClientList;
|
||||
private readonly IHttpContextAccessor _httpContext;
|
||||
private readonly AlipayOptions _option;
|
||||
private readonly ISqlSugarClient _db;
|
||||
private readonly IHttpContextAccessor _httpContext;
|
||||
private readonly IWebHostEnvironment _webHostEnvironment;
|
||||
private readonly List<IAopClient> _alipayClientList;
|
||||
private readonly AlipayOptions _option;
|
||||
|
||||
public SysAlipayService(
|
||||
ISqlSugarClient db,
|
||||
public SysAlipayService(ISqlSugarClient db,
|
||||
IHttpContextAccessor httpContext,
|
||||
SysConfigService sysConfigService,
|
||||
IWebHostEnvironment webHostEnvironment,
|
||||
IOptions<AlipayOptions> alipayOptions)
|
||||
{
|
||||
_db = db;
|
||||
_httpContext = httpContext;
|
||||
_sysConfigService = sysConfigService;
|
||||
_option = alipayOptions.Value;
|
||||
_webHostEnvironment = webHostEnvironment;
|
||||
|
||||
|
||||
@ -223,7 +223,7 @@ public class SysAuthService : IDynamicApiController, ITransient
|
||||
/// <param name="loginMode"></param>
|
||||
/// <returns></returns>
|
||||
[NonAction]
|
||||
internal async Task<LoginOutput> CreateToken(SysUser user, LoginModeEnum loginMode = LoginModeEnum.PC)
|
||||
public async Task<LoginOutput> CreateToken(SysUser user, LoginModeEnum loginMode = LoginModeEnum.PC)
|
||||
{
|
||||
// 单用户登录
|
||||
await App.GetRequiredService<SysOnlineUserService>().SingleLogin(user.Id, loginMode);
|
||||
|
||||
@ -15,17 +15,14 @@ public class SysCodeGenConfigService : IDynamicApiController, ITransient
|
||||
private readonly ISqlSugarClient _db;
|
||||
private readonly CodeGenOptions _codeGenOptions;
|
||||
private readonly DbConnectionOptions _dbConnectionOptions;
|
||||
private readonly SysDatabaseService _databaseService;
|
||||
|
||||
public SysCodeGenConfigService(ISqlSugarClient db,
|
||||
SysDatabaseService databaseService,
|
||||
IOptions<DbConnectionOptions> dbConnectionOptions,
|
||||
IOptions<CodeGenOptions> codeGenOptions)
|
||||
IOptions<CodeGenOptions> codeGenOptions,
|
||||
IOptions<DbConnectionOptions> dbConnectionOptions)
|
||||
{
|
||||
_db = db;
|
||||
_dbConnectionOptions = dbConnectionOptions.Value;
|
||||
_codeGenOptions = codeGenOptions.Value;
|
||||
_databaseService = databaseService;
|
||||
_dbConnectionOptions = dbConnectionOptions.Value;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
||||
@ -16,23 +16,20 @@ namespace Admin.NET.Core.Service;
|
||||
public class SysCodeGenService : IDynamicApiController, ITransient
|
||||
{
|
||||
private readonly ISqlSugarClient _db;
|
||||
private readonly DbConnectionOptions _dbConnectionOptions;
|
||||
private readonly CodeGenOptions _codeGenOptions;
|
||||
private readonly SqlSugarRepository<SysCodeGenTemplate> _codeGetTemplateRep;
|
||||
private readonly DbConnectionOptions _dbConnectionOptions;
|
||||
private readonly SysCodeGenConfigService _codeGenConfigService;
|
||||
private readonly IViewEngine _viewEngine;
|
||||
|
||||
public SysCodeGenService(ISqlSugarClient db,
|
||||
IOptions<CodeGenOptions> codeGenOptions,
|
||||
IOptions<DbConnectionOptions> dbConnectionOptions,
|
||||
SqlSugarRepository<SysCodeGenTemplate> codeGetTemplateRep,
|
||||
SysCodeGenConfigService codeGenConfigService,
|
||||
IViewEngine viewEngine,
|
||||
IOptions<CodeGenOptions> codeGenOptions)
|
||||
IViewEngine viewEngine)
|
||||
{
|
||||
_db = db;
|
||||
_dbConnectionOptions = dbConnectionOptions.Value;
|
||||
_codeGenOptions = codeGenOptions.Value;
|
||||
_codeGetTemplateRep = codeGetTemplateRep;
|
||||
_codeGenConfigService = codeGenConfigService;
|
||||
_viewEngine = viewEngine;
|
||||
}
|
||||
@ -801,7 +798,7 @@ public class SysCodeGenService : IDynamicApiController, ITransient
|
||||
//TODO: 只获取选中的模板
|
||||
if (input.GenerateType!.Substring(1, 1).Contains('1'))
|
||||
{
|
||||
return _codeGetTemplateRep.AsQueryable()
|
||||
return _db.Queryable<SysCodeGenTemplate>()
|
||||
.Where(u => u.Type == CodeGenTypeEnum.Frontend)
|
||||
.Where(u => u.Id == SqlFunc.Subqueryable<SysCodeGenTemplateRelation>().Where(s => s.CodeGenId == input.Id).GroupBy(s => s.TemplateId).Select(s => s.TemplateId))
|
||||
.ToList();
|
||||
@ -809,14 +806,14 @@ public class SysCodeGenService : IDynamicApiController, ITransient
|
||||
|
||||
if (input.GenerateType.Substring(1, 1).Contains('2'))
|
||||
{
|
||||
return _codeGetTemplateRep.AsQueryable()
|
||||
return _db.Queryable<SysCodeGenTemplate>()
|
||||
.Where(u => u.Type == CodeGenTypeEnum.Backend)
|
||||
.Where(u => u.Id == SqlFunc.Subqueryable<SysCodeGenTemplateRelation>().Where(s => s.CodeGenId == input.Id).GroupBy(s => s.TemplateId).Select(s => s.TemplateId))
|
||||
.ToList();
|
||||
}
|
||||
else
|
||||
{
|
||||
return _codeGetTemplateRep.AsQueryable()
|
||||
return _db.Queryable<SysCodeGenTemplate>()
|
||||
.Where(u => u.Id == SqlFunc.Subqueryable<SysCodeGenTemplateRelation>().Where(s => s.CodeGenId == input.Id).GroupBy(s => s.TemplateId).Select(s => s.TemplateId))
|
||||
.ToList();
|
||||
}
|
||||
|
||||
@ -15,8 +15,8 @@ namespace Admin.NET.Core.Service;
|
||||
public class SysDbBackupService : IDynamicApiController, ITransient
|
||||
{
|
||||
private readonly ISqlSugarClient _db;
|
||||
private readonly string _backupDir;
|
||||
private readonly SysDatabaseService _databaseService;
|
||||
private readonly string _backupDir;
|
||||
|
||||
public SysDbBackupService(ISqlSugarClient db, SysDatabaseService databaseService)
|
||||
{
|
||||
|
||||
@ -13,21 +13,20 @@ namespace Admin.NET.Core.Service;
|
||||
public class SysDictDataService : IDynamicApiController, ITransient
|
||||
{
|
||||
private readonly SqlSugarRepository<SysDictData> _sysDictDataRep;
|
||||
public readonly ISugarQueryable<SysDictData> VSysDictData;
|
||||
private readonly SysCacheService _sysCacheService;
|
||||
private readonly UserManager _userManager;
|
||||
public readonly ISugarQueryable<SysDictData> VSysDictData;
|
||||
|
||||
public SysDictDataService(SqlSugarRepository<SysDictData> sysDictDataRep,
|
||||
SysCacheService sysCacheService,
|
||||
UserManager userManager)
|
||||
{
|
||||
_userManager = userManager;
|
||||
_sysDictDataRep = sysDictDataRep;
|
||||
_sysCacheService = sysCacheService;
|
||||
_userManager = userManager;
|
||||
VSysDictData = _sysDictDataRep.Context.UnionAll(
|
||||
_sysDictDataRep.AsQueryable(),
|
||||
_sysDictDataRep.Change<SysDictDataTenant>().AsQueryable()
|
||||
.Select<SysDictData>());
|
||||
_sysDictDataRep.Change<SysDictDataTenant>().AsQueryable().Select<SysDictData>());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
||||
@ -18,9 +18,9 @@ public class SysFileService : IDynamicApiController, ITransient
|
||||
private readonly SqlSugarRepository<SysFile> _sysFileRep;
|
||||
private readonly OSSProviderOptions _OSSProviderOptions;
|
||||
private readonly UploadOptions _uploadOptions;
|
||||
private readonly string _imageType = ".jpeg.jpg.png.bmp.gif.tif";
|
||||
private readonly INamedServiceProvider<ICustomFileProvider> _namedServiceProvider;
|
||||
private readonly ICustomFileProvider _customFileProvider;
|
||||
private readonly string _imageType = ".jpeg.jpg.png.bmp.gif.tif";
|
||||
|
||||
public SysFileService(UserManager userManager,
|
||||
SqlSugarRepository<SysFile> sysFileRep,
|
||||
|
||||
@ -17,21 +17,18 @@ public class SysMenuService : IDynamicApiController, ITransient
|
||||
private readonly SysRoleMenuService _sysRoleMenuService;
|
||||
private readonly SysUserRoleService _sysUserRoleService;
|
||||
private readonly SysUserMenuService _sysUserMenuService;
|
||||
private readonly SysCacheService _sysCacheService;
|
||||
|
||||
public SysMenuService(UserManager userManager,
|
||||
SqlSugarRepository<SysMenu> sysMenuRep,
|
||||
SysRoleMenuService sysRoleMenuService,
|
||||
SysUserRoleService sysUserRoleService,
|
||||
SysUserMenuService sysUserMenuService,
|
||||
SysCacheService sysCacheService)
|
||||
SysUserMenuService sysUserMenuService)
|
||||
{
|
||||
_userManager = userManager;
|
||||
_sysMenuRep = sysMenuRep;
|
||||
_sysRoleMenuService = sysRoleMenuService;
|
||||
_sysUserRoleService = sysUserRoleService;
|
||||
_sysUserMenuService = sysUserMenuService;
|
||||
_sysCacheService = sysCacheService;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
||||
@ -96,8 +96,8 @@ public class SysOAuthService : IDynamicApiController, ITransient
|
||||
Email = email,
|
||||
Avatar = avatarUrl,
|
||||
Phone = mobilePhone,
|
||||
OrgId = 1300000000101, // 根组织架构
|
||||
RoleIdList = new List<long> { 1300000000104 } // 仅本人数据角色
|
||||
OrgId = SqlSugarConst.DefaultTenantId, // 根组织架构
|
||||
RoleIdList = [1300000000104] // 仅本人数据角色
|
||||
});
|
||||
|
||||
await _sysOAuthUserRep.InsertAsync(new SysOAuthUser()
|
||||
@ -114,7 +114,6 @@ public class SysOAuthService : IDynamicApiController, ITransient
|
||||
|
||||
// 构建Token令牌,默认回调登录为PC模式
|
||||
var token = await App.GetRequiredService<SysAuthService>().CreateToken(wechatUser.SysUser);
|
||||
|
||||
return new RedirectResult($"{redirectUrl}/#/login?token={token.AccessToken}");
|
||||
}
|
||||
}
|
||||
@ -14,13 +14,13 @@ namespace Admin.NET.Core.Service;
|
||||
[ApiDescriptionSettings(Order = 300, Description = "在线用户")]
|
||||
public class SysOnlineUserService : IDynamicApiController, ITransient
|
||||
{
|
||||
private readonly SqlSugarRepository<SysOnlineUser> _sysOnlineUerRep;
|
||||
private readonly SysConfigService _sysConfigService;
|
||||
private readonly IHubContext<OnlineUserHub, IOnlineUserHub> _onlineUserHubContext;
|
||||
private readonly SqlSugarRepository<SysOnlineUser> _sysOnlineUerRep;
|
||||
|
||||
public SysOnlineUserService(SysConfigService sysConfigService,
|
||||
IHubContext<OnlineUserHub, IOnlineUserHub> onlineUserHubContext,
|
||||
SqlSugarRepository<SysOnlineUser> sysOnlineUerRep)
|
||||
public SysOnlineUserService(SqlSugarRepository<SysOnlineUser> sysOnlineUerRep,
|
||||
SysConfigService sysConfigService,
|
||||
IHubContext<OnlineUserHub, IOnlineUserHub> onlineUserHubContext)
|
||||
{
|
||||
_sysConfigService = sysConfigService;
|
||||
_onlineUserHubContext = onlineUserHubContext;
|
||||
|
||||
@ -45,14 +45,14 @@ namespace Admin.NET.Web.Core
|
||||
var userId = context.User.FindFirst(ClaimConst.UserId)?.Value;
|
||||
var tokenVersion1 = context.User.FindFirst(ClaimConst.TokenVersion)?.Value;
|
||||
var tokenVersion2 = sysCacheService.Get<string>($"{CacheConst.KeyUserToken}{userId}");
|
||||
if (string.IsNullOrWhiteSpace(tokenVersion2))
|
||||
if (string.IsNullOrWhiteSpace(tokenVersion2) && !string.IsNullOrWhiteSpace(userId))
|
||||
{
|
||||
// 查库并缓存用户Token版本
|
||||
var user = await serviceScope.ServiceProvider.GetRequiredService<ISqlSugarClient>().Queryable<SysUser>().FirstAsync(u => u.Id == long.Parse(userId));
|
||||
sysCacheService.Set($"{CacheConst.KeyUserToken}{user.Id}", $"{user.TokenVersion}");
|
||||
tokenVersion2 = user.TokenVersion.ToString();
|
||||
}
|
||||
if (tokenVersion1 != tokenVersion2)
|
||||
if (string.IsNullOrWhiteSpace(tokenVersion1) || tokenVersion1 != tokenVersion2)
|
||||
{
|
||||
context.Fail(new AuthorizationFailureReason(this, "令牌已失效,请重新登录。"));
|
||||
context.GetCurrentHttpContext().SignoutToSwagger();
|
||||
|
||||
Loading…
Reference in New Issue
Block a user