SysLogVisService.cs 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. // 此源代码遵循位于源代码树根目录中的 LICENSE 文件的许可证。
  2. //
  3. // 必须在法律法规允许的范围内正确使用,严禁将其用于非法、欺诈、恶意或侵犯他人合法权益的目的。
  4. namespace Admin.NET.Core.Service;
  5. /// <summary>
  6. /// 系统访问日志服务 💥
  7. /// </summary>
  8. [ApiDescriptionSettings(Order = 340)]
  9. public class SysLogVisService : IDynamicApiController, ITransient
  10. {
  11. private readonly SqlSugarRepository<SysLogVis> _sysLogVisRep;
  12. public SysLogVisService(SqlSugarRepository<SysLogVis> sysLogVisRep)
  13. {
  14. _sysLogVisRep = sysLogVisRep;
  15. }
  16. /// <summary>
  17. /// 获取访问日志分页列表 🔖
  18. /// </summary>
  19. /// <returns></returns>
  20. [SuppressMonitor]
  21. [DisplayName("获取访问日志分页列表")]
  22. public async Task<SqlSugarPagedList<SysLogVis>> Page(PageLogInput input)
  23. {
  24. return await _sysLogVisRep.AsQueryable()
  25. .WhereIF(!string.IsNullOrWhiteSpace(input.StartTime.ToString()), u => u.CreateTime >= input.StartTime)
  26. .WhereIF(!string.IsNullOrWhiteSpace(input.EndTime.ToString()), u => u.CreateTime <= input.EndTime)
  27. .OrderBy(u => u.CreateTime, OrderByType.Desc)
  28. .ToPagedListAsync(input.Page, input.PageSize);
  29. }
  30. /// <summary>
  31. /// 清空访问日志 🔖
  32. /// </summary>
  33. /// <returns></returns>
  34. [ApiDescriptionSettings(Name = "Clear"), HttpPost]
  35. [DisplayName("清空访问日志")]
  36. public async Task<bool> Clear()
  37. {
  38. return await _sysLogVisRep.DeleteAsync(u => u.Id > 0);
  39. }
  40. }