😎限制删除被开放接口绑定的用户和租户
This commit is contained in:
parent
1567099226
commit
f52f7aa1ed
@ -211,6 +211,18 @@ public enum ErrorCodeEnum
|
|||||||
[ErrorCodeItemMetadata("系统默认账号禁止删除")]
|
[ErrorCodeItemMetadata("系统默认账号禁止删除")]
|
||||||
D1029,
|
D1029,
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 开放接口绑定账号禁止删除
|
||||||
|
/// </summary>
|
||||||
|
[ErrorCodeItemMetadata("开放接口绑定账号禁止删除")]
|
||||||
|
D1030,
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 开放接口绑定租户禁止删除
|
||||||
|
/// </summary>
|
||||||
|
[ErrorCodeItemMetadata("开放接口绑定租户禁止删除")]
|
||||||
|
D1031,
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 父机构不存在
|
/// 父机构不存在
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|||||||
@ -265,6 +265,11 @@ public class SysTenantService : IDynamicApiController, ITransient
|
|||||||
if (input.Id.ToString() == SqlSugarConst.MainConfigId)
|
if (input.Id.ToString() == SqlSugarConst.MainConfigId)
|
||||||
throw Oops.Oh(ErrorCodeEnum.D1023);
|
throw Oops.Oh(ErrorCodeEnum.D1023);
|
||||||
|
|
||||||
|
// 若账号为开放接口绑定租户则禁止删除
|
||||||
|
var isOpenAccessTenant = await _sysTenantRep.ChangeRepository<SqlSugarRepository<SysOpenAccess>>().IsAnyAsync(u => u.BindTenantId == input.Id);
|
||||||
|
if (isOpenAccessTenant)
|
||||||
|
throw Oops.Oh(ErrorCodeEnum.D1031);
|
||||||
|
|
||||||
await _sysTenantRep.DeleteAsync(u => u.Id == input.Id);
|
await _sysTenantRep.DeleteAsync(u => u.Id == input.Id);
|
||||||
|
|
||||||
await CacheTenant(input.Id);
|
await CacheTenant(input.Id);
|
||||||
|
|||||||
@ -172,11 +172,17 @@ public class SysUserService : IDynamicApiController, ITransient
|
|||||||
throw Oops.Oh(ErrorCodeEnum.D1014);
|
throw Oops.Oh(ErrorCodeEnum.D1014);
|
||||||
if (user.Id == _userManager.UserId)
|
if (user.Id == _userManager.UserId)
|
||||||
throw Oops.Oh(ErrorCodeEnum.D1001);
|
throw Oops.Oh(ErrorCodeEnum.D1001);
|
||||||
|
|
||||||
// 若账号为租户默认账号则禁止删除
|
// 若账号为租户默认账号则禁止删除
|
||||||
var isTenantUser = await _sysUserRep.ChangeRepository<SqlSugarRepository<SysTenant>>().IsAnyAsync(u => u.UserId == input.Id);
|
var isTenantUser = await _sysUserRep.ChangeRepository<SqlSugarRepository<SysTenant>>().IsAnyAsync(u => u.UserId == input.Id);
|
||||||
if (isTenantUser)
|
if (isTenantUser)
|
||||||
throw Oops.Oh(ErrorCodeEnum.D1029);
|
throw Oops.Oh(ErrorCodeEnum.D1029);
|
||||||
|
|
||||||
|
// 若账号为开放接口绑定账号则禁止删除
|
||||||
|
var isOpenAccessUser = await _sysUserRep.ChangeRepository<SqlSugarRepository<SysOpenAccess>>().IsAnyAsync(u => u.BindUserId == input.Id);
|
||||||
|
if (isOpenAccessUser)
|
||||||
|
throw Oops.Oh(ErrorCodeEnum.D1030);
|
||||||
|
|
||||||
// 强制下线
|
// 强制下线
|
||||||
await _sysOnlineUserService.ForceOffline(user.Id);
|
await _sysOnlineUserService.ForceOffline(user.Id);
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user