SysLogDiffService.cs 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. // 大名科技(天津)有限公司 版权所有
  2. //
  3. // 此源代码遵循位于源代码树根目录中的 LICENSE 文件的许可证
  4. //
  5. // 不得利用本项目从事危害国家安全、扰乱社会秩序、侵犯他人合法权益等法律法规禁止的活动
  6. //
  7. // 任何基于本项目二次开发而产生的一切法律纠纷和责任,均与作者无关
  8. namespace Admin.NET.Core.Service;
  9. /// <summary>
  10. /// 系统差异日志服务 🧩
  11. /// </summary>
  12. [ApiDescriptionSettings(Order = 330)]
  13. public class SysLogDiffService : IDynamicApiController, ITransient
  14. {
  15. private readonly SqlSugarRepository<SysLogDiff> _sysLogDiffRep;
  16. public SysLogDiffService(SqlSugarRepository<SysLogDiff> sysLogDiffRep)
  17. {
  18. _sysLogDiffRep = sysLogDiffRep;
  19. }
  20. /// <summary>
  21. /// 获取差异日志分页列表 🔖
  22. /// </summary>
  23. /// <returns></returns>
  24. [SuppressMonitor]
  25. [DisplayName("获取差异日志分页列表")]
  26. public async Task<SqlSugarPagedList<SysLogDiff>> Page(PageLogInput input)
  27. {
  28. return await _sysLogDiffRep.AsQueryable()
  29. .WhereIF(!string.IsNullOrWhiteSpace(input.StartTime.ToString()), u => u.CreateTime >= input.StartTime)
  30. .WhereIF(!string.IsNullOrWhiteSpace(input.EndTime.ToString()), u => u.CreateTime <= input.EndTime)
  31. .OrderBy(u => u.CreateTime, OrderByType.Desc)
  32. .ToPagedListAsync(input.Page, input.PageSize);
  33. }
  34. /// <summary>
  35. /// 清空差异日志 🔖
  36. /// </summary>
  37. /// <returns></returns>
  38. [ApiDescriptionSettings(Name = "Clear"), HttpPost]
  39. [DisplayName("清空差异日志")]
  40. public async Task<bool> Clear()
  41. {
  42. return await _sysLogDiffRep.DeleteAsync(u => u.Id > 0);
  43. }
  44. }