diff --git a/Admin.NET/Admin.NET.Application/Service/App/Auth/AppAuthService.cs b/Admin.NET/Admin.NET.Application/Service/App/Auth/AppAuthService.cs index b594afbd..7c47e095 100644 --- a/Admin.NET/Admin.NET.Application/Service/App/Auth/AppAuthService.cs +++ b/Admin.NET/Admin.NET.Application/Service/App/Auth/AppAuthService.cs @@ -80,7 +80,7 @@ public class AppAuthService : IDynamicApiController, ITransient throw Oops.Oh(ErrorCodeEnum.D1017); // 租户是否被禁用 - var tenant = await _sysUserRep.ChangeRepository>().GetFirstAsync(u => u.Id == user.TenantId); + var tenant = await _sysUserRep.ChangeRepository>().GetByIdAsync(user.TenantId); if (tenant != null && tenant.Status == StatusEnum.Disable) throw Oops.Oh(ErrorCodeEnum.Z1003); @@ -206,11 +206,11 @@ public class AppAuthService : IDynamicApiController, ITransient [DisplayName("获取登录账号")] public virtual async Task GetUserInfo() { - var user = await _sysUserRep.GetFirstAsync(u => u.Id == _appUserManager.UserId) ?? throw Oops.Oh(ErrorCodeEnum.D1011).StatusCode(401); + var user = await _sysUserRep.GetByIdAsync(_appUserManager.UserId) ?? throw Oops.Oh(ErrorCodeEnum.D1011).StatusCode(401); // 机构 - var org = await _sysUserRep.ChangeRepository>().GetFirstAsync(u => u.Id == user.OrgId); + var org = await _sysUserRep.ChangeRepository>().GetByIdAsync(user.OrgId); // 职位 - var pos = await _sysUserRep.ChangeRepository>().GetFirstAsync(u => u.Id == user.PosId); + var pos = await _sysUserRep.ChangeRepository>().GetByIdAsync(user.PosId); // 角色集合 var roleIds = await _sysUserRep.ChangeRepository>().AsQueryable().Where(u => u.UserId == user.Id).Select(u => u.RoleId).ToListAsync(); // 接口集合 @@ -287,7 +287,7 @@ public class AppAuthService : IDynamicApiController, ITransient input.PasswordOld = CryptogramUtil.SM2Decrypt(input.PasswordOld); input.PasswordNew = CryptogramUtil.SM2Decrypt(input.PasswordNew); - var user = await _sysUserRep.GetFirstAsync(u => u.Id == _appUserManager.UserId) ?? throw Oops.Oh(ErrorCodeEnum.D0009); + var user = await _sysUserRep.GetByIdAsync(_appUserManager.UserId) ?? throw Oops.Oh(ErrorCodeEnum.D0009); if (CryptogramUtil.CryptoType == CryptogramEnum.MD5.ToString()) { if (user.Password != MD5Encryption.Encrypt(input.PasswordOld)) diff --git a/Admin.NET/Admin.NET.Core/Admin.NET.Core.csproj b/Admin.NET/Admin.NET.Core/Admin.NET.Core.csproj index 8aa9aa9f..8d19ecc7 100644 --- a/Admin.NET/Admin.NET.Core/Admin.NET.Core.csproj +++ b/Admin.NET/Admin.NET.Core/Admin.NET.Core.csproj @@ -17,7 +17,7 @@ - + diff --git a/Admin.NET/Admin.NET.Core/Const/ClaimConst.cs b/Admin.NET/Admin.NET.Core/Const/ClaimConst.cs index d16758e7..7fdf85f3 100644 --- a/Admin.NET/Admin.NET.Core/Const/ClaimConst.cs +++ b/Admin.NET/Admin.NET.Core/Const/ClaimConst.cs @@ -65,9 +65,4 @@ public class ClaimConst /// 登录模式PC、APP /// public const string LoginMode = "LoginMode"; - - /// - /// 最新密码修改时间 - /// - public const string LastChangePasswordTime = "LastChangePasswordTime"; } \ No newline at end of file diff --git a/Admin.NET/Admin.NET.Core/Hub/OnlineUserHub.cs b/Admin.NET/Admin.NET.Core/Hub/OnlineUserHub.cs index 9c74de35..cff056dc 100644 --- a/Admin.NET/Admin.NET.Core/Hub/OnlineUserHub.cs +++ b/Admin.NET/Admin.NET.Core/Hub/OnlineUserHub.cs @@ -105,7 +105,7 @@ public class OnlineUserHub : Hub var user = await _sysOnlineUerRep.AsQueryable().Filter("", true).FirstAsync(u => u.ConnectionId == Context.ConnectionId); if (user == null) return; - await _sysOnlineUerRep.DeleteAsync(u => u.Id == user.Id); + await _sysOnlineUerRep.DeleteByIdAsync(user.Id); // 是否开启单用户登录 if (await _sysConfigService.GetConfigValue(ConfigConst.SysSingleLogin)) diff --git a/Admin.NET/Admin.NET.Core/Service/Auth/Dto/LoginUserOutput.cs b/Admin.NET/Admin.NET.Core/Service/Auth/Dto/LoginUserOutput.cs index 3b81c123..da995a7f 100644 --- a/Admin.NET/Admin.NET.Core/Service/Auth/Dto/LoginUserOutput.cs +++ b/Admin.NET/Admin.NET.Core/Service/Auth/Dto/LoginUserOutput.cs @@ -100,4 +100,9 @@ public class LoginUserOutput /// 水印文字 /// public string WatermarkText { get; set; } + + /// + /// 最新密码修改时间 + /// + public DateTime? LastChangePasswordTime; } \ No newline at end of file diff --git a/Admin.NET/Admin.NET.Core/Service/Auth/SysAuthService.cs b/Admin.NET/Admin.NET.Core/Service/Auth/SysAuthService.cs index 1ec9f33a..a816273b 100644 --- a/Admin.NET/Admin.NET.Core/Service/Auth/SysAuthService.cs +++ b/Admin.NET/Admin.NET.Core/Service/Auth/SysAuthService.cs @@ -89,7 +89,7 @@ public class SysAuthService : IDynamicApiController, ITransient throw Oops.Oh(ErrorCodeEnum.D1017); // 租户是否被禁用 - var tenant = await _sysUserRep.ChangeRepository>().GetFirstAsync(u => u.Id == user.TenantId); + var tenant = await _sysUserRep.ChangeRepository>().GetByIdAsync(user.TenantId); if (tenant != null && tenant.Status == StatusEnum.Disable) throw Oops.Oh(ErrorCodeEnum.Z1003); @@ -162,7 +162,7 @@ public class SysAuthService : IDynamicApiController, ITransient public virtual async Task UnLockScreen([Required, FromQuery] string password) { // 账号是否存在 - var user = await _sysUserRep.GetFirstAsync(u => u.Id == _userManager.UserId); + var user = await _sysUserRep.GetByIdAsync(_userManager.UserId); _ = user ?? throw Oops.Oh(ErrorCodeEnum.D0009); // 国密SM2解密(前端密码传输SM2加密后的) @@ -230,7 +230,6 @@ public class SysAuthService : IDynamicApiController, ITransient { ClaimConst.OrgName, user.SysOrg?.Name }, { ClaimConst.OrgType, user.SysOrg?.Type }, { ClaimConst.LoginMode, loginMode }, - { ClaimConst.LastChangePasswordTime, user.LastChangePasswordTime }, }, tokenExpire); // 生成刷新Token令牌 @@ -270,11 +269,11 @@ public class SysAuthService : IDynamicApiController, ITransient [DisplayName("获取登录账号")] public virtual async Task GetUserInfo() { - var user = await _sysUserRep.GetFirstAsync(u => u.Id == _userManager.UserId) ?? throw Oops.Oh(ErrorCodeEnum.D1011).StatusCode(401); + var user = await _sysUserRep.GetByIdAsync(_userManager.UserId) ?? throw Oops.Oh(ErrorCodeEnum.D1011).StatusCode(401); // 机构 - var org = await _sysUserRep.ChangeRepository>().GetFirstAsync(u => u.Id == user.OrgId); + var org = await _sysUserRep.ChangeRepository>().GetByIdAsync(user.OrgId); // 职位 - var pos = await _sysUserRep.ChangeRepository>().GetFirstAsync(u => u.Id == user.PosId); + var pos = await _sysUserRep.ChangeRepository>().GetByIdAsync(user.PosId); // 角色集合 var roleIds = await _sysUserRep.ChangeRepository>().AsQueryable().Where(u => u.UserId == user.Id).Select(u => u.RoleId).ToListAsync(); // 接口集合 @@ -302,7 +301,8 @@ public class SysAuthService : IDynamicApiController, ITransient PosName = pos?.Name, Apis = apis, RoleIds = roleIds, - WatermarkText = watermarkText + WatermarkText = watermarkText, + LastChangePasswordTime = user.LastChangePasswordTime }; } diff --git a/Admin.NET/Admin.NET.Core/Service/Auth/SysLdapService.cs b/Admin.NET/Admin.NET.Core/Service/Auth/SysLdapService.cs index fd6679e8..45841c91 100644 --- a/Admin.NET/Admin.NET.Core/Service/Auth/SysLdapService.cs +++ b/Admin.NET/Admin.NET.Core/Service/Auth/SysLdapService.cs @@ -78,7 +78,7 @@ public class SysLdapService : IDynamicApiController, ITransient [DisplayName("删除系统域登录配置")] public async Task Delete(DeleteSysLdapInput input) { - var entity = await _sysLdapRep.GetFirstAsync(u => u.Id == input.Id) ?? throw Oops.Oh(ErrorCodeEnum.D1002); + var entity = await _sysLdapRep.GetByIdAsync(input.Id) ?? throw Oops.Oh(ErrorCodeEnum.D1002); await _sysLdapRep.FakeDeleteAsync(entity); // 假删除 //await _rep.DeleteAsync(entity); // 真删除 } @@ -91,7 +91,7 @@ public class SysLdapService : IDynamicApiController, ITransient [DisplayName("获取系统域登录配置详情")] public async Task GetDetail([FromQuery] DetailSysLdapInput input) { - return await _sysLdapRep.GetFirstAsync(u => u.Id == input.Id); + return await _sysLdapRep.GetByIdAsync(input.Id); } /// @@ -162,7 +162,7 @@ public class SysLdapService : IDynamicApiController, ITransient [DisplayName("同步域用户")] public async Task SyncUser(SyncSysLdapInput input) { - var sysLdap = await _sysLdapRep.GetFirstAsync(u => u.Id == input.Id) ?? throw Oops.Oh(ErrorCodeEnum.D1002); + var sysLdap = await _sysLdapRep.GetByIdAsync(input.Id) ?? throw Oops.Oh(ErrorCodeEnum.D1002); var ldapConn = new LdapConnection(); try { @@ -294,7 +294,7 @@ public class SysLdapService : IDynamicApiController, ITransient [DisplayName("同步域组织")] public async Task SyncDept(SyncSysLdapInput input) { - var sysLdap = await _sysLdapRep.GetFirstAsync(u => u.Id == input.Id) ?? throw Oops.Oh(ErrorCodeEnum.D1002); + var sysLdap = await _sysLdapRep.GetByIdAsync(input.Id) ?? throw Oops.Oh(ErrorCodeEnum.D1002); var ldapConn = new LdapConnection(); try { diff --git a/Admin.NET/Admin.NET.Core/Service/CodeGen/SysCodeGenConfigService.cs b/Admin.NET/Admin.NET.Core/Service/CodeGen/SysCodeGenConfigService.cs index 2d6fb68c..58d5de6a 100644 --- a/Admin.NET/Admin.NET.Core/Service/CodeGen/SysCodeGenConfigService.cs +++ b/Admin.NET/Admin.NET.Core/Service/CodeGen/SysCodeGenConfigService.cs @@ -72,7 +72,7 @@ public class SysCodeGenConfigService : IDynamicApiController, ITransient [DisplayName("获取代码生成配置详情")] public async Task GetDetail([FromQuery] CodeGenConfig input) { - return await _db.Queryable().FirstAsync(u => u.Id == input.Id); + return await _db.Queryable().SingleAsync(u => u.Id == input.Id); } /// diff --git a/Admin.NET/Admin.NET.Core/Service/CodeGen/SysCodeGenService.cs b/Admin.NET/Admin.NET.Core/Service/CodeGen/SysCodeGenService.cs index 679f0445..c869b2ad 100644 --- a/Admin.NET/Admin.NET.Core/Service/CodeGen/SysCodeGenService.cs +++ b/Admin.NET/Admin.NET.Core/Service/CodeGen/SysCodeGenService.cs @@ -635,7 +635,7 @@ public class SysCodeGenService : IDynamicApiController, ITransient } else { - var pMenu = await _db.Queryable().FirstAsync(u => u.Id == pid) ?? throw Oops.Oh(ErrorCodeEnum.D1505); + var pMenu = await _db.Queryable().SingleAsync(u => u.Id == pid) ?? throw Oops.Oh(ErrorCodeEnum.D1505); pPath = pMenu.Path; } diff --git a/Admin.NET/Admin.NET.Core/Service/Config/SysConfigService.cs b/Admin.NET/Admin.NET.Core/Service/Config/SysConfigService.cs index 1e6d65a4..3871a4b0 100644 --- a/Admin.NET/Admin.NET.Core/Service/Config/SysConfigService.cs +++ b/Admin.NET/Admin.NET.Core/Service/Config/SysConfigService.cs @@ -95,7 +95,7 @@ public class SysConfigService : IDynamicApiController, ITransient [DisplayName("删除参数配置")] public async Task DeleteConfig(DeleteConfigInput input) { - var config = await _sysConfigRep.GetFirstAsync(u => u.Id == input.Id); + var config = await _sysConfigRep.GetByIdAsync(input.Id); if (config.SysFlag == YesNoEnum.Y) // 禁止删除系统参数 throw Oops.Oh(ErrorCodeEnum.D9001); @@ -115,7 +115,7 @@ public class SysConfigService : IDynamicApiController, ITransient { foreach (var id in ids) { - var config = await _sysConfigRep.GetFirstAsync(u => u.Id == id); + var config = await _sysConfigRep.GetByIdAsync(id); if (config.SysFlag == YesNoEnum.Y) // 禁止删除系统参数 continue; @@ -133,7 +133,7 @@ public class SysConfigService : IDynamicApiController, ITransient [DisplayName("获取参数配置详情")] public async Task GetDetail([FromQuery] ConfigInput input) { - return await _sysConfigRep.GetFirstAsync(u => u.Id == input.Id); + return await _sysConfigRep.GetByIdAsync(input.Id); } /// diff --git a/Admin.NET/Admin.NET.Core/Service/Dict/SysDictDataService.cs b/Admin.NET/Admin.NET.Core/Service/Dict/SysDictDataService.cs index aeb2ac0b..0c5ac821 100644 --- a/Admin.NET/Admin.NET.Core/Service/Dict/SysDictDataService.cs +++ b/Admin.NET/Admin.NET.Core/Service/Dict/SysDictDataService.cs @@ -98,7 +98,7 @@ public class SysDictDataService : IDynamicApiController, ITransient [DisplayName("删除字典值")] public async Task DeleteDictData(DeleteDictDataInput input) { - var dictData = await _sysDictDataRep.GetFirstAsync(u => u.Id == input.Id) ?? throw Oops.Oh(ErrorCodeEnum.D3004); + var dictData = await _sysDictDataRep.GetByIdAsync(input.Id) ?? throw Oops.Oh(ErrorCodeEnum.D3004); var dictTypeCode = await _sysDictDataRep.AsQueryable().Where(u => u.DictTypeId == dictData.Id).Select(u => u.DictType.Code).FirstAsync(); _sysCacheService.Remove($"{CacheConst.KeyDict}{dictTypeCode}"); @@ -114,7 +114,7 @@ public class SysDictDataService : IDynamicApiController, ITransient [DisplayName("获取字典值详情")] public async Task GetDetail([FromQuery] DictDataInput input) { - return await _sysDictDataRep.GetFirstAsync(u => u.Id == input.Id); + return await _sysDictDataRep.GetByIdAsync(input.Id); } /// @@ -126,7 +126,7 @@ public class SysDictDataService : IDynamicApiController, ITransient [DisplayName("修改字典值状态")] public async Task SetStatus(DictDataInput input) { - var dictData = await _sysDictDataRep.GetFirstAsync(u => u.Id == input.Id) ?? throw Oops.Oh(ErrorCodeEnum.D3004); + var dictData = await _sysDictDataRep.GetByIdAsync(input.Id) ?? throw Oops.Oh(ErrorCodeEnum.D3004); var dictTypeCode = await _sysDictDataRep.AsQueryable().Where(u => u.DictTypeId == dictData.Id).Select(u => u.DictType.Code).FirstAsync(); _sysCacheService.Remove($"{CacheConst.KeyDict}{dictTypeCode}"); diff --git a/Admin.NET/Admin.NET.Core/Service/Dict/SysDictTypeService.cs b/Admin.NET/Admin.NET.Core/Service/Dict/SysDictTypeService.cs index ecbc042d..4d0b950e 100644 --- a/Admin.NET/Admin.NET.Core/Service/Dict/SysDictTypeService.cs +++ b/Admin.NET/Admin.NET.Core/Service/Dict/SysDictTypeService.cs @@ -107,7 +107,7 @@ public class SysDictTypeService : IDynamicApiController, ITransient [DisplayName("删除字典类型")] public async Task DeleteDictType(DeleteDictTypeInput input) { - var dictType = await _sysDictTypeRep.GetFirstAsync(u => u.Id == input.Id) ?? throw Oops.Oh(ErrorCodeEnum.D3000); + var dictType = await _sysDictTypeRep.GetByIdAsync(input.Id) ?? throw Oops.Oh(ErrorCodeEnum.D3000); // 删除字典值 await _sysDictTypeRep.DeleteAsync(dictType); @@ -122,7 +122,7 @@ public class SysDictTypeService : IDynamicApiController, ITransient [DisplayName("获取字典类型详情")] public async Task GetDetail([FromQuery] DictTypeInput input) { - return await _sysDictTypeRep.GetFirstAsync(u => u.Id == input.Id); + return await _sysDictTypeRep.GetByIdAsync(input.Id); } /// @@ -134,7 +134,7 @@ public class SysDictTypeService : IDynamicApiController, ITransient [DisplayName("修改字典类型状态")] public async Task SetStatus(DictTypeInput input) { - var dictType = await _sysDictTypeRep.GetFirstAsync(u => u.Id == input.Id) ?? throw Oops.Oh(ErrorCodeEnum.D3000); + var dictType = await _sysDictTypeRep.GetByIdAsync(input.Id) ?? throw Oops.Oh(ErrorCodeEnum.D3000); _sysCacheService.Remove($"{CacheConst.KeyDict}{dictType.Code}"); diff --git a/Admin.NET/Admin.NET.Core/Service/File/SysFileService.cs b/Admin.NET/Admin.NET.Core/Service/File/SysFileService.cs index 72c5ecc6..8615bfa1 100644 --- a/Admin.NET/Admin.NET.Core/Service/File/SysFileService.cs +++ b/Admin.NET/Admin.NET.Core/Service/File/SysFileService.cs @@ -231,7 +231,7 @@ public class SysFileService : IDynamicApiController, ITransient [DisplayName("删除文件")] public async Task DeleteFile(DeleteFileInput input) { - var file = await _sysFileRep.GetFirstAsync(u => u.Id == input.Id); + var file = await _sysFileRep.GetByIdAsync(input.Id); if (file != null) { await _sysFileRep.DeleteAsync(file); @@ -281,7 +281,7 @@ public class SysFileService : IDynamicApiController, ITransient [DisplayName("获取文件")] public async Task GetFile([FromQuery] FileInput input) { - var file = await _sysFileRep.CopyNew().GetFirstAsync(u => u.Id == input.Id); + var file = await _sysFileRep.CopyNew().GetByIdAsync(input.Id); return file ?? throw Oops.Oh(ErrorCodeEnum.D8000); } @@ -431,7 +431,7 @@ public class SysFileService : IDynamicApiController, ITransient var sysFile = await HandleUploadFile(file, "upload/avatar", _imageType); var sysUserRep = _sysFileRep.ChangeRepository>(); - var user = sysUserRep.GetFirst(u => u.Id == _userManager.UserId); + var user = await sysUserRep.GetByIdAsync(_userManager.UserId); // 删除已有头像文件 if (!string.IsNullOrWhiteSpace(user.Avatar)) { @@ -453,7 +453,7 @@ public class SysFileService : IDynamicApiController, ITransient var sysFile = await HandleUploadFile(file, "upload/signature", _imageType); var sysUserRep = _sysFileRep.ChangeRepository>(); - var user = sysUserRep.GetFirst(u => u.Id == _userManager.UserId); + var user = await sysUserRep.GetByIdAsync(_userManager.UserId); // 删除已有电子签名文件 if (!string.IsNullOrWhiteSpace(user.Signature) && user.Signature.EndsWith(".png")) { diff --git a/Admin.NET/Admin.NET.Core/Service/Job/SysJobService.cs b/Admin.NET/Admin.NET.Core/Service/Job/SysJobService.cs index 3ba906e5..54f30a78 100644 --- a/Admin.NET/Admin.NET.Core/Service/Job/SysJobService.cs +++ b/Admin.NET/Admin.NET.Core/Service/Job/SysJobService.cs @@ -123,7 +123,7 @@ public class SysJobService : IDynamicApiController, ITransient if (isExist) throw Oops.Oh(ErrorCodeEnum.D1006); - var sysJobDetail = await _sysJobDetailRep.GetFirstAsync(u => u.Id == input.Id); + var sysJobDetail = await _sysJobDetailRep.GetByIdAsync(input.Id); if (sysJobDetail.JobId != input.JobId) throw Oops.Oh(ErrorCodeEnum.D1704); diff --git a/Admin.NET/Admin.NET.Core/Service/Log/SysLogDiffService.cs b/Admin.NET/Admin.NET.Core/Service/Log/SysLogDiffService.cs index d2f8c45b..b79d53d5 100644 --- a/Admin.NET/Admin.NET.Core/Service/Log/SysLogDiffService.cs +++ b/Admin.NET/Admin.NET.Core/Service/Log/SysLogDiffService.cs @@ -42,6 +42,6 @@ public class SysLogDiffService : IDynamicApiController, ITransient [DisplayName("获取差异日志详情")] public async Task GetDetail(long id) { - return await _sysLogDiffRep.GetFirstAsync(u => u.Id == id); + return await _sysLogDiffRep.GetByIdAsync(id); } } \ No newline at end of file diff --git a/Admin.NET/Admin.NET.Core/Service/Log/SysLogExService.cs b/Admin.NET/Admin.NET.Core/Service/Log/SysLogExService.cs index 2519a26b..9de80ea2 100644 --- a/Admin.NET/Admin.NET.Core/Service/Log/SysLogExService.cs +++ b/Admin.NET/Admin.NET.Core/Service/Log/SysLogExService.cs @@ -51,7 +51,7 @@ public class SysLogExService : IDynamicApiController, ITransient [DisplayName("获取异常日志详情")] public async Task GetDetail(long id) { - return await _sysLogExRep.GetFirstAsync(u => u.Id == id); + return await _sysLogExRep.GetByIdAsync(id); } /// diff --git a/Admin.NET/Admin.NET.Core/Service/Log/SysLogOpService.cs b/Admin.NET/Admin.NET.Core/Service/Log/SysLogOpService.cs index 7d3d2d25..e7405116 100644 --- a/Admin.NET/Admin.NET.Core/Service/Log/SysLogOpService.cs +++ b/Admin.NET/Admin.NET.Core/Service/Log/SysLogOpService.cs @@ -49,7 +49,7 @@ public class SysLogOpService : IDynamicApiController, ITransient [DisplayName("获取操作日志详情")] public async Task GetDetail(long id) { - return await _sysLogOpRep.GetFirstAsync(u => u.Id == id); + return await _sysLogOpRep.GetByIdAsync(id); } /// diff --git a/Admin.NET/Admin.NET.Core/Service/Notice/SysNoticeService.cs b/Admin.NET/Admin.NET.Core/Service/Notice/SysNoticeService.cs index fe38d7aa..e2a192e1 100644 --- a/Admin.NET/Admin.NET.Core/Service/Notice/SysNoticeService.cs +++ b/Admin.NET/Admin.NET.Core/Service/Notice/SysNoticeService.cs @@ -103,7 +103,7 @@ public class SysNoticeService : IDynamicApiController, ITransient // 更新发布状态和时间 await _sysNoticeRep.UpdateAsync(u => new SysNotice() { Status = NoticeStatusEnum.PUBLIC, PublicTime = DateTime.Now }, u => u.Id == input.Id); - var notice = await _sysNoticeRep.GetFirstAsync(u => u.Id == input.Id); + var notice = await _sysNoticeRep.GetByIdAsync(input.Id); // 通知到的人(所有账号) var userIdList = await _sysUserRep.AsQueryable().Select(u => u.Id).ToListAsync(); diff --git a/Admin.NET/Admin.NET.Core/Service/OAuth/SysOAuthUser/SysOAuthUserService.cs b/Admin.NET/Admin.NET.Core/Service/OAuth/SysOAuthUser/SysOAuthUserService.cs index 06d16ae1..c9110c9a 100644 --- a/Admin.NET/Admin.NET.Core/Service/OAuth/SysOAuthUser/SysOAuthUserService.cs +++ b/Admin.NET/Admin.NET.Core/Service/OAuth/SysOAuthUser/SysOAuthUserService.cs @@ -70,6 +70,6 @@ public class SysOAuthUserService : IDynamicApiController, ITransient [DisplayName("删除OAuth账号")] public async Task DeleteWechatUser(DeleteOAuthUserInput input) { - await _sysOAuthUserRep.DeleteAsync(u => u.Id == input.Id); + await _sysOAuthUserRep.DeleteByIdAsync(input.Id); } } \ No newline at end of file diff --git a/Admin.NET/Admin.NET.Core/Service/OpenAccess/SysOpenAccessService.cs b/Admin.NET/Admin.NET.Core/Service/OpenAccess/SysOpenAccessService.cs index 35bdb140..a1902502 100644 --- a/Admin.NET/Admin.NET.Core/Service/OpenAccess/SysOpenAccessService.cs +++ b/Admin.NET/Admin.NET.Core/Service/OpenAccess/SysOpenAccessService.cs @@ -112,11 +112,11 @@ public class SysOpenAccessService : IDynamicApiController, ITransient [DisplayName("删除开放接口身份")] public async Task DeleteOpenAccess(DeleteOpenAccessInput input) { - var openAccess = await _sysOpenAccessRep.GetFirstAsync(u => u.Id == input.Id); + var openAccess = await _sysOpenAccessRep.GetByIdAsync(input.Id); if (openAccess != null) _sysCacheService.Remove(CacheConst.KeyOpenAccess + openAccess.AccessKey); - await _sysOpenAccessRep.DeleteAsync(u => u.Id == input.Id); + await _sysOpenAccessRep.DeleteByIdAsync(input.Id); } /// diff --git a/Admin.NET/Admin.NET.Core/Service/Org/SysOrgService.cs b/Admin.NET/Admin.NET.Core/Service/Org/SysOrgService.cs index aa19e23b..2a6ce46e 100644 --- a/Admin.NET/Admin.NET.Core/Service/Org/SysOrgService.cs +++ b/Admin.NET/Admin.NET.Core/Service/Org/SysOrgService.cs @@ -68,7 +68,7 @@ public class SysOrgService : IDynamicApiController, ITransient HandlerOrgTree(orgTree, userOrgIdList); } - var sysOrg = await _sysOrgRep.GetSingleAsync(u => u.Id == input.Id); + var sysOrg = await _sysOrgRep.GetByIdAsync(input.Id); if (sysOrg != null) { sysOrg.Children = orgTree; @@ -123,7 +123,7 @@ public class SysOrgService : IDynamicApiController, ITransient } else { - var pOrg = await _sysOrgRep.GetFirstAsync(u => u.Id == input.Pid); + var pOrg = await _sysOrgRep.GetByIdAsync(input.Pid); if (pOrg != null) DeleteAllUserOrgCache(pOrg.Id, pOrg.Pid); } @@ -160,11 +160,11 @@ public class SysOrgService : IDynamicApiController, ITransient if (input.Pid != 0) { - //var pOrg = await _sysOrgRep.GetFirstAsync(u => u.Id == input.Pid); + //var pOrg = await _sysOrgRep.GetByIdAsync(input.Pid); //_ = pOrg ?? throw Oops.Oh(ErrorCodeEnum.D2000); // 若父机构发生变化则清空用户机构缓存 - var sysOrg = await _sysOrgRep.GetFirstAsync(u => u.Id == input.Id); + var sysOrg = await _sysOrgRep.GetByIdAsync(input.Id); if (sysOrg != null && sysOrg.Pid != input.Pid) { // 删除与此机构、新父机构有关的用户机构缓存 @@ -203,7 +203,7 @@ public class SysOrgService : IDynamicApiController, ITransient [DisplayName("删除机构")] public async Task DeleteOrg(DeleteOrgInput input) { - var sysOrg = await _sysOrgRep.GetFirstAsync(u => u.Id == input.Id) ?? throw Oops.Oh(ErrorCodeEnum.D1002); + var sysOrg = await _sysOrgRep.GetByIdAsync(input.Id) ?? throw Oops.Oh(ErrorCodeEnum.D1002); // 是否有权限操作此机构 if (!_userManager.SuperAdmin) diff --git a/Admin.NET/Admin.NET.Core/Service/Plugin/SysPluginService.cs b/Admin.NET/Admin.NET.Core/Service/Plugin/SysPluginService.cs index 35064b63..10225a1a 100644 --- a/Admin.NET/Admin.NET.Core/Service/Plugin/SysPluginService.cs +++ b/Admin.NET/Admin.NET.Core/Service/Plugin/SysPluginService.cs @@ -90,7 +90,7 @@ public class SysPluginService : IDynamicApiController, ITransient // 移除动态程序集/接口 RemoveAssembly(plugin.AssemblyName); - await _sysPluginRep.DeleteAsync(u => u.Id == input.Id); + await _sysPluginRep.DeleteByIdAsync(input.Id); } /// diff --git a/Admin.NET/Admin.NET.Core/Service/Pos/SysPosService.cs b/Admin.NET/Admin.NET.Core/Service/Pos/SysPosService.cs index 0ad3e266..db2ed553 100644 --- a/Admin.NET/Admin.NET.Core/Service/Pos/SysPosService.cs +++ b/Admin.NET/Admin.NET.Core/Service/Pos/SysPosService.cs @@ -109,7 +109,7 @@ public class SysPosService : IDynamicApiController, ITransient [DisplayName("删除职位")] public async Task DeletePos(DeletePosInput input) { - var sysPos = await _sysPosRep.GetFirstAsync(u => u.Id == input.Id) ?? throw Oops.Oh(ErrorCodeEnum.D6003); + var sysPos = await _sysPosRep.GetByIdAsync(input.Id) ?? throw Oops.Oh(ErrorCodeEnum.D6003); if (!_userManager.SuperAdmin && sysPos.CreateUserId != _userManager.UserId) throw Oops.Oh(ErrorCodeEnum.D6002); @@ -124,6 +124,6 @@ public class SysPosService : IDynamicApiController, ITransient if (hasExtPosEmp) throw Oops.Oh(ErrorCodeEnum.D6001); - await _sysPosRep.DeleteAsync(u => u.Id == input.Id); + await _sysPosRep.DeleteByIdAsync(input.Id); } } \ No newline at end of file diff --git a/Admin.NET/Admin.NET.Core/Service/Print/SysPrintService.cs b/Admin.NET/Admin.NET.Core/Service/Print/SysPrintService.cs index dc6fcca6..17fca2f6 100644 --- a/Admin.NET/Admin.NET.Core/Service/Print/SysPrintService.cs +++ b/Admin.NET/Admin.NET.Core/Service/Print/SysPrintService.cs @@ -85,6 +85,6 @@ public class SysPrintService : IDynamicApiController, ITransient [DisplayName("删除打印模板")] public async Task DeletePrint(DeletePrintInput input) { - await _sysPrintRep.DeleteAsync(u => u.Id == input.Id); + await _sysPrintRep.DeleteByIdAsync(input.Id); } } \ No newline at end of file diff --git a/Admin.NET/Admin.NET.Core/Service/Region/SysRegionService.cs b/Admin.NET/Admin.NET.Core/Service/Region/SysRegionService.cs index f8f34847..4f117ec5 100644 --- a/Admin.NET/Admin.NET.Core/Service/Region/SysRegionService.cs +++ b/Admin.NET/Admin.NET.Core/Service/Region/SysRegionService.cs @@ -69,7 +69,7 @@ public class SysRegionService : IDynamicApiController, ITransient if (input.Pid != 0) { - var pRegion = await _sysRegionRep.GetFirstAsync(u => u.Id == input.Pid); + var pRegion = await _sysRegionRep.GetByIdAsync(input.Pid); pRegion ??= await _sysRegionRep.GetFirstAsync(u => u.Code == input.Pid.ToString()); if (pRegion == null) throw Oops.Oh(ErrorCodeEnum.D2000); @@ -98,13 +98,13 @@ public class SysRegionService : IDynamicApiController, ITransient if (input.Code.Length != 12 && input.Code.Length != 9 && input.Code.Length != 6) throw Oops.Oh(ErrorCodeEnum.R2003); - var sysRegion = await _sysRegionRep.GetFirstAsync(u => u.Id == input.Id); + var sysRegion = await _sysRegionRep.GetByIdAsync(input.Id); if (sysRegion == null) throw Oops.Oh(ErrorCodeEnum.D1002); if (sysRegion.Pid != input.Pid && input.Pid != 0) { - var pRegion = await _sysRegionRep.GetFirstAsync(u => u.Id == input.Pid); + var pRegion = await _sysRegionRep.GetByIdAsync(input.Pid); pRegion ??= await _sysRegionRep.GetFirstAsync(u => u.Code == input.Pid.ToString()); if (pRegion == null) throw Oops.Oh(ErrorCodeEnum.D2000); diff --git a/Admin.NET/Admin.NET.Core/Service/Role/SysRoleService.cs b/Admin.NET/Admin.NET.Core/Service/Role/SysRoleService.cs index 6cf8a2d4..c7b5e43e 100644 --- a/Admin.NET/Admin.NET.Core/Service/Role/SysRoleService.cs +++ b/Admin.NET/Admin.NET.Core/Service/Role/SysRoleService.cs @@ -124,7 +124,7 @@ public class SysRoleService : IDynamicApiController, ITransient public async Task DeleteRole(DeleteRoleInput input) { // 禁止删除系统管理员角色 - var sysRole = await _sysRoleRep.GetFirstAsync(u => u.Id == input.Id) ?? throw Oops.Oh(ErrorCodeEnum.D1002); + var sysRole = await _sysRoleRep.GetByIdAsync(input.Id) ?? throw Oops.Oh(ErrorCodeEnum.D1002); if (sysRole.Code == CommonConst.SysAdminRole) throw Oops.Oh(ErrorCodeEnum.D1019); @@ -189,7 +189,7 @@ public class SysRoleService : IDynamicApiController, ITransient SqlSugarFilter.DeleteUserOrgCache(userId, _sysRoleRep.Context.CurrentConnectionConfig.ConfigId.ToString()); } - var role = await _sysRoleRep.GetFirstAsync(u => u.Id == input.Id); + var role = await _sysRoleRep.GetByIdAsync(input.Id); var dataScope = input.DataScope; if (!_userManager.SuperAdmin) { diff --git a/Admin.NET/Admin.NET.Core/Service/Schedule/SysScheduleService.cs b/Admin.NET/Admin.NET.Core/Service/Schedule/SysScheduleService.cs index fd803fde..ca522976 100644 --- a/Admin.NET/Admin.NET.Core/Service/Schedule/SysScheduleService.cs +++ b/Admin.NET/Admin.NET.Core/Service/Schedule/SysScheduleService.cs @@ -46,7 +46,7 @@ public class SysScheduleService : IDynamicApiController, ITransient [DisplayName("获取日程详情")] public async Task GetDetail(long id) { - return await _sysSchedule.GetFirstAsync(u => u.Id == id); + return await _sysSchedule.GetByIdAsync(id); } /// @@ -83,7 +83,7 @@ public class SysScheduleService : IDynamicApiController, ITransient [DisplayName("删除日程")] public async Task DeleteUserSchedule(DeleteScheduleInput input) { - await _sysSchedule.DeleteAsync(u => u.Id == input.Id); + await _sysSchedule.DeleteByIdAsync(input.Id); } /// diff --git a/Admin.NET/Admin.NET.Core/Service/Tenant/SysTenantService.cs b/Admin.NET/Admin.NET.Core/Service/Tenant/SysTenantService.cs index 0a0df168..9aec4dfe 100644 --- a/Admin.NET/Admin.NET.Core/Service/Tenant/SysTenantService.cs +++ b/Admin.NET/Admin.NET.Core/Service/Tenant/SysTenantService.cs @@ -154,7 +154,7 @@ public class SysTenantService : IDynamicApiController, ITransient [DisplayName("设置租户状态")] public async Task SetStatus(TenantInput input) { - var tenant = await _sysTenantRep.GetFirstAsync(u => u.Id == input.Id); + var tenant = await _sysTenantRep.GetByIdAsync(input.Id); if (tenant == null || tenant.ConfigId == SqlSugarConst.MainConfigId) throw Oops.Oh(ErrorCodeEnum.Z1001); @@ -271,7 +271,7 @@ public class SysTenantService : IDynamicApiController, ITransient if (isOpenAccessTenant) throw Oops.Oh(ErrorCodeEnum.D1031); - await _sysTenantRep.DeleteAsync(u => u.Id == input.Id); + await _sysTenantRep.DeleteByIdAsync(input.Id); await CacheTenant(input.Id); @@ -431,7 +431,7 @@ public class SysTenantService : IDynamicApiController, ITransient [DisplayName("创建租户数据库")] public async Task InitTenantDb(TenantInput input) { - var tenant = await _sysTenantRep.GetSingleAsync(u => u.Id == input.Id); + var tenant = await _sysTenantRep.GetByIdAsync(input.Id); if (tenant == null) return; if (tenant.DbType == SqlSugar.DbType.Oracle) @@ -465,7 +465,7 @@ public class SysTenantService : IDynamicApiController, ITransient [DisplayName("创建租户数据")] public async Task InitTenantData(TenantInput input) { - var tenant = await _sysTenantRep.GetSingleAsync(u => u.Id == input.Id); + var tenant = await _sysTenantRep.GetByIdAsync(input.Id); if (tenant == null) return; if (string.IsNullOrWhiteSpace(tenant.Connection) || tenant.Connection.Length < 10) diff --git a/Admin.NET/Admin.NET.Core/Service/User/SysUserService.cs b/Admin.NET/Admin.NET.Core/Service/User/SysUserService.cs index 8f8e3e88..3cf09e67 100644 --- a/Admin.NET/Admin.NET.Core/Service/User/SysUserService.cs +++ b/Admin.NET/Admin.NET.Core/Service/User/SysUserService.cs @@ -261,7 +261,7 @@ public class SysUserService : IDynamicApiController, ITransient [DisplayName("授权用户角色")] public async Task GrantRole(UserRoleInput input) { - //var user = await _sysUserRep.GetFirstAsync(u => u.Id == input.UserId) ?? throw Oops.Oh(ErrorCodeEnum.D0009); + //var user = await _sysUserRep.GetByIdAsync(input.UserId) ?? throw Oops.Oh(ErrorCodeEnum.D0009); //if (user.AccountType == AccountTypeEnum.SuperAdmin) // throw Oops.Oh(ErrorCodeEnum.D1022); diff --git a/Admin.NET/Plugins/Admin.NET.Plugin.ApprovalFlow/Service/ApprovalFlow/ApprovalFlowService.cs b/Admin.NET/Plugins/Admin.NET.Plugin.ApprovalFlow/Service/ApprovalFlow/ApprovalFlowService.cs index 53748fdb..97fcb7ff 100644 --- a/Admin.NET/Plugins/Admin.NET.Plugin.ApprovalFlow/Service/ApprovalFlow/ApprovalFlowService.cs +++ b/Admin.NET/Plugins/Admin.NET.Plugin.ApprovalFlow/Service/ApprovalFlow/ApprovalFlowService.cs @@ -76,7 +76,7 @@ public class ApprovalFlowService : IDynamicApiController, ITransient [ApiDescriptionSettings(Name = "Delete"), HttpPost] public async Task Delete(DeleteApprovalFlowInput input) { - var entity = await _approvalFlowRep.GetFirstAsync(u => u.Id == input.Id) ?? throw Oops.Oh(ErrorCodeEnum.D1002); + var entity = await _approvalFlowRep.GetByIdAsync(input.Id) ?? throw Oops.Oh(ErrorCodeEnum.D1002); await _approvalFlowRep.FakeDeleteAsync(entity); // 假删除 } @@ -87,7 +87,7 @@ public class ApprovalFlowService : IDynamicApiController, ITransient /// public async Task GetDetail([FromQuery] QueryByIdApprovalFlowInput input) { - return await _approvalFlowRep.GetFirstAsync(u => u.Id == input.Id); + return await _approvalFlowRep.GetByIdAsync(input.Id); } /// diff --git a/Admin.NET/Plugins/Admin.NET.Plugin.GoView/Service/GoViewPro/GoViewProService.cs b/Admin.NET/Plugins/Admin.NET.Plugin.GoView/Service/GoViewPro/GoViewProService.cs index ee612fc1..ac582cd7 100644 --- a/Admin.NET/Plugins/Admin.NET.Plugin.GoView/Service/GoViewPro/GoViewProService.cs +++ b/Admin.NET/Plugins/Admin.NET.Plugin.GoView/Service/GoViewPro/GoViewProService.cs @@ -104,10 +104,10 @@ public class GoViewProService : IDynamicApiController [DisplayName("获取项目数据")] public async Task GetData([FromQuery] long projectId) { - var projectData = await _goViewProDataRep.GetFirstAsync(u => u.Id == projectId); + var projectData = await _goViewProDataRep.GetByIdAsync(projectId); if (projectData == null) return null; - var project = await _goViewProRep.GetFirstAsync(u => u.Id == projectId); + var project = await _goViewProRep.GetByIdAsync(projectId); var projectDetail = project.Adapt(); projectDetail.Content = projectData.Content; @@ -207,7 +207,7 @@ public class GoViewProService : IDynamicApiController ////保存预览图 //var result = await _fileService.UploadFile(@object, ""); - //var file = await _fileRep.GetFirstAsync(u => u.Id == result.Id); + //var file = await _fileRep.GetByIdAsync(result.Id); //int.TryParse(file.SizeKb, out var size); ////本地存储,使用拼接的地址