|
|
@@ -1,212 +1,204 @@
|
|
|
-// Admin.NET 项目的版权、商标、专利和其他相关权利均受相应法律法规的保护。使用本项目应遵守相关法律法规和许可证的要求。
|
|
|
-//
|
|
|
-// 本项目主要遵循 MIT 许可证和 Apache 许可证(版本 2.0)进行分发和使用。许可证位于源代码树根目录中的 LICENSE-MIT 和 LICENSE-APACHE 文件。
|
|
|
-//
|
|
|
-// 不得利用本项目从事危害国家安全、扰乱社会秩序、侵犯他人合法权益等法律法规禁止的活动!任何基于本项目二次开发而产生的一切法律纠纷和责任,我们不承担任何责任!
|
|
|
-
|
|
|
-namespace Admin.NET.Core.Service;
|
|
|
-
|
|
|
-/// <summary>
|
|
|
-/// 系统字典值服务 🧩
|
|
|
-/// </summary>
|
|
|
-[ApiDescriptionSettings(Order = 420)]
|
|
|
-public class SysDictDataService : IDynamicApiController, ITransient
|
|
|
-{
|
|
|
- private readonly SqlSugarRepository<SysDictData> _sysDictDataRep;
|
|
|
- private readonly SysCacheService _sysCacheService;
|
|
|
- private readonly UserManager _userManager;
|
|
|
-
|
|
|
- public SysDictDataService(
|
|
|
- SqlSugarRepository<SysDictData> sysDictDataRep,
|
|
|
- SysCacheService sysCacheService,
|
|
|
- UserManager userManager)
|
|
|
- {
|
|
|
- _userManager = userManager;
|
|
|
- _sysDictDataRep = sysDictDataRep;
|
|
|
- _sysCacheService = sysCacheService;
|
|
|
- }
|
|
|
-
|
|
|
- /// <summary>
|
|
|
- /// 获取字典值分页列表 🔖
|
|
|
- /// </summary>
|
|
|
- /// <param name="input"></param>
|
|
|
- /// <returns></returns>
|
|
|
- [DisplayName("获取字典值分页列表")]
|
|
|
- public async Task<SqlSugarPagedList<SysDictData>> Page(PageDictDataInput input)
|
|
|
- {
|
|
|
- return await _sysDictDataRep.AsQueryable()
|
|
|
- .Where(u => u.DictTypeId == input.DictTypeId)
|
|
|
- .WhereIF(!string.IsNullOrEmpty(input.Label?.Trim()), u => u.Value.Contains(input.Label))
|
|
|
- .OrderBy(u => new { u.OrderNo, Code = u.Value })
|
|
|
- .ToPagedListAsync(input.Page, input.PageSize);
|
|
|
- }
|
|
|
-
|
|
|
- /// <summary>
|
|
|
- /// 获取字典值列表 🔖
|
|
|
- /// </summary>
|
|
|
- /// <returns></returns>
|
|
|
- [DisplayName("获取字典值列表")]
|
|
|
- public async Task<List<SysDictData>> GetList([FromQuery] GetDataDictDataInput input)
|
|
|
- {
|
|
|
- return await GetDictValueQueryable().Where(u => u.DictTypeId == input.DictTypeId).ToListAsync();
|
|
|
- }
|
|
|
-
|
|
|
- /// <summary>
|
|
|
- /// 增加字典值 🔖
|
|
|
- /// </summary>
|
|
|
- /// <param name="input"></param>
|
|
|
- /// <returns></returns>
|
|
|
- [ApiDescriptionSettings(Name = "Add"), HttpPost]
|
|
|
- [DisplayName("增加字典值")]
|
|
|
- public async Task AddDictData(AddDictDataInput input)
|
|
|
- {
|
|
|
- var isExist = await GetDictValueQueryable().AnyAsync(u => u.Value == input.Value && u.DictTypeId == input.DictTypeId);
|
|
|
- if (isExist) throw Oops.Oh(ErrorCodeEnum.D3003);
|
|
|
-
|
|
|
- var dictType = await _sysDictDataRep.Change<SysDictType>().GetByIdAsync(input.DictTypeId);
|
|
|
- if (dictType.SysFlag == YesNoEnum.Y && !_userManager.SuperAdmin) throw Oops.Oh(ErrorCodeEnum.D3010);
|
|
|
-
|
|
|
- var dictTypeCode = await _sysDictDataRep.AsQueryable().ClearFilter().Where(u => u.DictTypeId == input.DictTypeId).Select(u => u.DictType.Code).FirstAsync();
|
|
|
- _sysCacheService.Remove($"{CacheConst.KeyDict}{dictTypeCode}");
|
|
|
-
|
|
|
- await _sysDictDataRep.InsertAsync(input.Adapt<SysDictData>());
|
|
|
- }
|
|
|
-
|
|
|
- /// <summary>
|
|
|
- /// 更新字典值 🔖
|
|
|
- /// </summary>
|
|
|
- /// <param name="input"></param>
|
|
|
- /// <returns></returns>
|
|
|
- [UnitOfWork]
|
|
|
- [ApiDescriptionSettings(Name = "Update"), HttpPost]
|
|
|
- [DisplayName("更新字典值")]
|
|
|
- public async Task UpdateDictData(UpdateDictDataInput input)
|
|
|
- {
|
|
|
- var isExist = await GetDictValueQueryable().AnyAsync(u => u.Id == input.Id);
|
|
|
- if (!isExist) throw Oops.Oh(ErrorCodeEnum.D3004);
|
|
|
-
|
|
|
- isExist = await GetDictValueQueryable().AnyAsync(u => u.Value == input.Value && u.DictTypeId == input.DictTypeId && u.Id != input.Id);
|
|
|
- if (isExist) throw Oops.Oh(ErrorCodeEnum.D3003);
|
|
|
-
|
|
|
- var dictType = await _sysDictDataRep.Change<SysDictType>().GetByIdAsync(input.DictTypeId);
|
|
|
- if (dictType.SysFlag == YesNoEnum.Y && !_userManager.SuperAdmin) throw Oops.Oh(ErrorCodeEnum.D3010);
|
|
|
-
|
|
|
- var dictTypeCode = await _sysDictDataRep.AsQueryable().ClearFilter()
|
|
|
- .Where(u => u.DictTypeId == input.DictTypeId).Select(u => u.DictType.Code)
|
|
|
- .FirstAsync();
|
|
|
- _sysCacheService.Remove($"{CacheConst.KeyDict}{dictTypeCode}");
|
|
|
-
|
|
|
- await _sysDictDataRep.UpdateAsync(input.Adapt<SysDictData>());
|
|
|
- }
|
|
|
-
|
|
|
- /// <summary>
|
|
|
- /// 删除字典值 🔖
|
|
|
- /// </summary>
|
|
|
- /// <param name="input"></param>
|
|
|
- /// <returns></returns>
|
|
|
- [UnitOfWork]
|
|
|
- [ApiDescriptionSettings(Name = "Delete"), HttpPost]
|
|
|
- [DisplayName("删除字典值")]
|
|
|
- public async Task DeleteDictData(DeleteDictDataInput input)
|
|
|
- {
|
|
|
- var dictData = await _sysDictDataRep.GetByIdAsync(input.Id) ?? throw Oops.Oh(ErrorCodeEnum.D3004);
|
|
|
-
|
|
|
- var dictTypeCode = await _sysDictDataRep.AsQueryable().ClearFilter()
|
|
|
- .Where(u => u.DictTypeId == dictData.DictTypeId).Select(u => u.DictType.Code)
|
|
|
- .FirstAsync();
|
|
|
- _sysCacheService.Remove($"{CacheConst.KeyDict}{dictTypeCode}");
|
|
|
-
|
|
|
- var dictType = await _sysDictDataRep.Change<SysDictType>().GetByIdAsync(dictData.DictTypeId);
|
|
|
- if (dictType.SysFlag == YesNoEnum.Y && !_userManager.SuperAdmin) throw Oops.Oh(ErrorCodeEnum.D3010);
|
|
|
-
|
|
|
- await _sysDictDataRep.DeleteAsync(dictData);
|
|
|
- }
|
|
|
-
|
|
|
- /// <summary>
|
|
|
- /// 获取字典值详情 🔖
|
|
|
- /// </summary>
|
|
|
- /// <param name="input"></param>
|
|
|
- /// <returns></returns>
|
|
|
- [DisplayName("获取字典值详情")]
|
|
|
- public async Task<SysDictData> GetDetail([FromQuery] DictDataInput input)
|
|
|
- {
|
|
|
- return await _sysDictDataRep.GetByIdAsync(input.Id);
|
|
|
- }
|
|
|
-
|
|
|
- /// <summary>
|
|
|
- /// 修改字典值状态 🔖
|
|
|
- /// </summary>
|
|
|
- /// <param name="input"></param>
|
|
|
- /// <returns></returns>
|
|
|
- [UnitOfWork]
|
|
|
- [DisplayName("修改字典值状态")]
|
|
|
- public async Task SetStatus(DictDataInput input)
|
|
|
- {
|
|
|
- var dictData = await _sysDictDataRep.AsQueryable().FirstAsync(u => u.Id == input.Id) ?? throw Oops.Oh(ErrorCodeEnum.D3004);
|
|
|
-
|
|
|
- var dictTypeCode = await _sysDictDataRep.AsQueryable().ClearFilter()
|
|
|
- .Where(u => u.DictTypeId == dictData.Id).Select(u => u.DictType.Code)
|
|
|
- .FirstAsync();
|
|
|
- _sysCacheService.Remove($"{CacheConst.KeyDict}{dictTypeCode}");
|
|
|
-
|
|
|
- dictData.Status = input.Status;
|
|
|
- await _sysDictDataRep.AsUpdateable(dictData).UpdateColumns(u => new { u.Status }, true).ExecuteCommandAsync();
|
|
|
- }
|
|
|
-
|
|
|
- /// <summary>
|
|
|
- /// 根据字典类型编码获取字典值集合 🔖
|
|
|
- /// </summary>
|
|
|
- /// <param name="code"></param>
|
|
|
- /// <returns></returns>
|
|
|
- [DisplayName("根据字典类型编码获取字典值集合")]
|
|
|
- public async Task<List<SysDictData>> GetDataList(string code)
|
|
|
- {
|
|
|
- var cacheKey = $"{CacheConst.KeyDict}{code}";
|
|
|
- var dictDataList = _sysCacheService.Get<List<SysDictData>>(cacheKey);
|
|
|
- if (dictDataList != null) return dictDataList;
|
|
|
-
|
|
|
- dictDataList = await GetDictValueQueryable().Where(u => u.DictType.Code == code && u.Status == StatusEnum.Enable && u.DictType.Status == StatusEnum.Enable).ToListAsync();
|
|
|
- _sysCacheService.Set(cacheKey, dictDataList);
|
|
|
- return dictDataList;
|
|
|
- }
|
|
|
-
|
|
|
- /// <summary>
|
|
|
- /// 根据查询条件获取字典值集合 🔖
|
|
|
- /// </summary>
|
|
|
- /// <param name="input"></param>
|
|
|
- /// <returns></returns>
|
|
|
- [DisplayName("根据查询条件获取字典值集合")]
|
|
|
- public async Task<List<SysDictData>> GetDataList([FromQuery] QueryDictDataInput input)
|
|
|
- {
|
|
|
- return await GetDictValueQueryable()
|
|
|
- .Where(u => u.DictType.Code == input.Code)
|
|
|
- .WhereIF(input.Status > 0, u => u.Status == (StatusEnum)input.Status)
|
|
|
- .ToListAsync();
|
|
|
- }
|
|
|
-
|
|
|
- /// <summary>
|
|
|
- /// 根据字典类型Id删除字典值
|
|
|
- /// </summary>
|
|
|
- /// <param name="dictTypeId"></param>
|
|
|
- /// <returns></returns>
|
|
|
- [NonAction]
|
|
|
- public async Task DeleteDictData(long dictTypeId)
|
|
|
- {
|
|
|
- var dictTypeCode = await _sysDictDataRep.AsQueryable().ClearFilter()
|
|
|
- .Where(u => u.DictTypeId == dictTypeId).Select(u => u.DictType.Code)
|
|
|
- .FirstAsync();
|
|
|
- _sysCacheService.Remove($"{CacheConst.KeyDict}{dictTypeCode}");
|
|
|
- await _sysDictDataRep.DeleteAsync(u => u.DictTypeId == dictTypeId);
|
|
|
- }
|
|
|
-
|
|
|
- /// <summary>
|
|
|
- /// 获取字典值查询器
|
|
|
- /// </summary>
|
|
|
- /// <returns></returns>
|
|
|
- [NonAction]
|
|
|
- public ISugarQueryable<SysDictData> GetDictValueQueryable()
|
|
|
- {
|
|
|
- return _sysDictDataRep.AsQueryable().ClearFilter()
|
|
|
- .Where(u => u.DictType.SysFlag == YesNoEnum.Y || u.TenantId == _userManager.TenantId);
|
|
|
- }
|
|
|
+// Admin.NET 项目的版权、商标、专利和其他相关权利均受相应法律法规的保护。使用本项目应遵守相关法律法规和许可证的要求。
|
|
|
+//
|
|
|
+// 本项目主要遵循 MIT 许可证和 Apache 许可证(版本 2.0)进行分发和使用。许可证位于源代码树根目录中的 LICENSE-MIT 和 LICENSE-APACHE 文件。
|
|
|
+//
|
|
|
+// 不得利用本项目从事危害国家安全、扰乱社会秩序、侵犯他人合法权益等法律法规禁止的活动!任何基于本项目二次开发而产生的一切法律纠纷和责任,我们不承担任何责任!
|
|
|
+
|
|
|
+namespace Admin.NET.Core.Service;
|
|
|
+
|
|
|
+/// <summary>
|
|
|
+/// 系统字典值服务 🧩
|
|
|
+/// </summary>
|
|
|
+[ApiDescriptionSettings(Order = 420)]
|
|
|
+public class SysDictDataService : IDynamicApiController, ITransient
|
|
|
+{
|
|
|
+ private readonly SqlSugarRepository<SysDictData> _sysDictDataRep;
|
|
|
+ private readonly SysCacheService _sysCacheService;
|
|
|
+ private readonly UserManager _userManager;
|
|
|
+
|
|
|
+ public SysDictDataService(
|
|
|
+ SqlSugarRepository<SysDictData> sysDictDataRep,
|
|
|
+ SysCacheService sysCacheService,
|
|
|
+ UserManager userManager)
|
|
|
+ {
|
|
|
+ _userManager = userManager;
|
|
|
+ _sysDictDataRep = sysDictDataRep;
|
|
|
+ _sysCacheService = sysCacheService;
|
|
|
+ }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 获取字典值分页列表 🔖
|
|
|
+ /// </summary>
|
|
|
+ /// <param name="input"></param>
|
|
|
+ /// <returns></returns>
|
|
|
+ [DisplayName("获取字典值分页列表")]
|
|
|
+ public async Task<SqlSugarPagedList<SysDictData>> Page(PageDictDataInput input)
|
|
|
+ {
|
|
|
+ return await GetDictValueQueryable()
|
|
|
+ .Where(u => u.DictTypeId == input.DictTypeId)
|
|
|
+ .WhereIF(!string.IsNullOrEmpty(input.Label?.Trim()), u => u.Value.Contains(input.Label))
|
|
|
+ .OrderBy(u => new { u.OrderNo, Code = u.Value })
|
|
|
+ .ToPagedListAsync(input.Page, input.PageSize);
|
|
|
+ }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 获取字典值列表 🔖
|
|
|
+ /// </summary>
|
|
|
+ /// <returns></returns>
|
|
|
+ [DisplayName("获取字典值列表")]
|
|
|
+ public async Task<List<SysDictData>> GetList([FromQuery] GetDataDictDataInput input)
|
|
|
+ {
|
|
|
+ return await GetDictValueQueryable().Where(u => u.DictTypeId == input.DictTypeId).ToListAsync();
|
|
|
+ }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 增加字典值 🔖
|
|
|
+ /// </summary>
|
|
|
+ /// <param name="input"></param>
|
|
|
+ /// <returns></returns>
|
|
|
+ [ApiDescriptionSettings(Name = "Add"), HttpPost]
|
|
|
+ [DisplayName("增加字典值")]
|
|
|
+ public async Task AddDictData(AddDictDataInput input)
|
|
|
+ {
|
|
|
+ var isExist = await GetDictValueQueryable().AnyAsync(u => u.Value == input.Value && u.DictTypeId == input.DictTypeId);
|
|
|
+ if (isExist) throw Oops.Oh(ErrorCodeEnum.D3003);
|
|
|
+
|
|
|
+ var dictType = await _sysDictDataRep.Change<SysDictType>().GetByIdAsync(input.DictTypeId);
|
|
|
+ if (dictType.SysFlag == YesNoEnum.Y && !_userManager.SuperAdmin) throw Oops.Oh(ErrorCodeEnum.D3010);
|
|
|
+
|
|
|
+ var dictTypeCode = await GetDictValueQueryable().Where(u => u.DictTypeId == input.DictTypeId).Select(u => u.DictType.Code).FirstAsync();
|
|
|
+ _sysCacheService.Remove($"{CacheConst.KeyDict}{dictTypeCode}");
|
|
|
+
|
|
|
+ await _sysDictDataRep.InsertAsync(input.Adapt<SysDictData>());
|
|
|
+ }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 更新字典值 🔖
|
|
|
+ /// </summary>
|
|
|
+ /// <param name="input"></param>
|
|
|
+ /// <returns></returns>
|
|
|
+ [UnitOfWork]
|
|
|
+ [ApiDescriptionSettings(Name = "Update"), HttpPost]
|
|
|
+ [DisplayName("更新字典值")]
|
|
|
+ public async Task UpdateDictData(UpdateDictDataInput input)
|
|
|
+ {
|
|
|
+ var isExist = await GetDictValueQueryable().AnyAsync(u => u.Id == input.Id);
|
|
|
+ if (!isExist) throw Oops.Oh(ErrorCodeEnum.D3004);
|
|
|
+
|
|
|
+ isExist = await GetDictValueQueryable().AnyAsync(u => u.Value == input.Value && u.DictTypeId == input.DictTypeId && u.Id != input.Id);
|
|
|
+ if (isExist) throw Oops.Oh(ErrorCodeEnum.D3003);
|
|
|
+
|
|
|
+ var dictType = await _sysDictDataRep.Change<SysDictType>().GetByIdAsync(input.DictTypeId);
|
|
|
+ if (dictType.SysFlag == YesNoEnum.Y && !_userManager.SuperAdmin) throw Oops.Oh(ErrorCodeEnum.D3010);
|
|
|
+
|
|
|
+ var dictTypeCode = await GetDictValueQueryable().Where(u => u.DictTypeId == input.DictTypeId).Select(u => u.DictType.Code).FirstAsync();
|
|
|
+ _sysCacheService.Remove($"{CacheConst.KeyDict}{dictTypeCode}");
|
|
|
+
|
|
|
+ await _sysDictDataRep.UpdateAsync(input.Adapt<SysDictData>());
|
|
|
+ }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 删除字典值 🔖
|
|
|
+ /// </summary>
|
|
|
+ /// <param name="input"></param>
|
|
|
+ /// <returns></returns>
|
|
|
+ [UnitOfWork]
|
|
|
+ [ApiDescriptionSettings(Name = "Delete"), HttpPost]
|
|
|
+ [DisplayName("删除字典值")]
|
|
|
+ public async Task DeleteDictData(DeleteDictDataInput input)
|
|
|
+ {
|
|
|
+ var dictData = await _sysDictDataRep.GetByIdAsync(input.Id) ?? throw Oops.Oh(ErrorCodeEnum.D3004);
|
|
|
+
|
|
|
+ var dictTypeCode = await GetDictValueQueryable().Where(u => u.DictTypeId == dictData.DictTypeId).Select(u => u.DictType.Code).FirstAsync();
|
|
|
+ _sysCacheService.Remove($"{CacheConst.KeyDict}{dictTypeCode}");
|
|
|
+
|
|
|
+ var dictType = await _sysDictDataRep.Change<SysDictType>().GetByIdAsync(dictData.DictTypeId);
|
|
|
+ if (dictType.SysFlag == YesNoEnum.Y && !_userManager.SuperAdmin) throw Oops.Oh(ErrorCodeEnum.D3010);
|
|
|
+
|
|
|
+ await _sysDictDataRep.DeleteAsync(dictData);
|
|
|
+ }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 获取字典值详情 🔖
|
|
|
+ /// </summary>
|
|
|
+ /// <param name="input"></param>
|
|
|
+ /// <returns></returns>
|
|
|
+ [DisplayName("获取字典值详情")]
|
|
|
+ public async Task<SysDictData> GetDetail([FromQuery] DictDataInput input)
|
|
|
+ {
|
|
|
+ return await _sysDictDataRep.GetByIdAsync(input.Id);
|
|
|
+ }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 修改字典值状态 🔖
|
|
|
+ /// </summary>
|
|
|
+ /// <param name="input"></param>
|
|
|
+ /// <returns></returns>
|
|
|
+ [UnitOfWork]
|
|
|
+ [DisplayName("修改字典值状态")]
|
|
|
+ public async Task SetStatus(DictDataInput input)
|
|
|
+ {
|
|
|
+ var dictData = await _sysDictDataRep.AsQueryable().FirstAsync(u => u.Id == input.Id) ?? throw Oops.Oh(ErrorCodeEnum.D3004);
|
|
|
+
|
|
|
+ var dictTypeCode = await GetDictValueQueryable().Where(u => u.DictTypeId == dictData.Id).Select(u => u.DictType.Code).FirstAsync();
|
|
|
+ _sysCacheService.Remove($"{CacheConst.KeyDict}{dictTypeCode}");
|
|
|
+
|
|
|
+ dictData.Status = input.Status;
|
|
|
+ await _sysDictDataRep.AsUpdateable(dictData).UpdateColumns(u => new { u.Status }, true).ExecuteCommandAsync();
|
|
|
+ }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 根据字典类型编码获取字典值集合 🔖
|
|
|
+ /// </summary>
|
|
|
+ /// <param name="code"></param>
|
|
|
+ /// <returns></returns>
|
|
|
+ [DisplayName("根据字典类型编码获取字典值集合")]
|
|
|
+ public async Task<List<SysDictData>> GetDataList(string code)
|
|
|
+ {
|
|
|
+ var cacheKey = $"{CacheConst.KeyDict}{code}";
|
|
|
+ var dictDataList = _sysCacheService.Get<List<SysDictData>>(cacheKey);
|
|
|
+ if (dictDataList != null) return dictDataList;
|
|
|
+
|
|
|
+ dictDataList = await GetDictValueQueryable().Where(u => u.DictType.Code == code && u.Status == StatusEnum.Enable && u.DictType.Status == StatusEnum.Enable).ToListAsync();
|
|
|
+ _sysCacheService.Set(cacheKey, dictDataList);
|
|
|
+ return dictDataList;
|
|
|
+ }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 根据查询条件获取字典值集合 🔖
|
|
|
+ /// </summary>
|
|
|
+ /// <param name="input"></param>
|
|
|
+ /// <returns></returns>
|
|
|
+ [DisplayName("根据查询条件获取字典值集合")]
|
|
|
+ public async Task<List<SysDictData>> GetDataList([FromQuery] QueryDictDataInput input)
|
|
|
+ {
|
|
|
+ return await GetDictValueQueryable()
|
|
|
+ .Where(u => u.DictType.Code == input.Code)
|
|
|
+ .WhereIF(input.Status > 0, u => u.Status == (StatusEnum)input.Status)
|
|
|
+ .ToListAsync();
|
|
|
+ }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 根据字典类型Id删除字典值
|
|
|
+ /// </summary>
|
|
|
+ /// <param name="dictTypeId"></param>
|
|
|
+ /// <returns></returns>
|
|
|
+ [NonAction]
|
|
|
+ public async Task DeleteDictData(long dictTypeId)
|
|
|
+ {
|
|
|
+ var dictTypeCode = await GetDictValueQueryable().Where(u => u.DictTypeId == dictTypeId).Select(u => u.DictType.Code).FirstAsync();
|
|
|
+ _sysCacheService.Remove($"{CacheConst.KeyDict}{dictTypeCode}");
|
|
|
+ await _sysDictDataRep.DeleteAsync(u => u.DictTypeId == dictTypeId);
|
|
|
+ }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 获取字典值查询器
|
|
|
+ /// </summary>
|
|
|
+ /// <returns></returns>
|
|
|
+ [NonAction]
|
|
|
+ public ISugarQueryable<SysDictData> GetDictValueQueryable()
|
|
|
+ {
|
|
|
+ return _sysDictDataRep.AsQueryable().ClearFilter()
|
|
|
+ .Where(u => u.DictType.SysFlag == YesNoEnum.Y || u.TenantId == _userManager.TenantId);
|
|
|
+ }
|
|
|
}
|