SysOperLogService.cs 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. using Infrastructure;
  2. using Infrastructure.Attribute;
  3. using Infrastructure.Extensions;
  4. using SqlSugar;
  5. using ZR.Model;
  6. using ZR.Model.System;
  7. using ZR.Model.System.Dto;
  8. using ZR.Service.System.IService;
  9. namespace ZR.Service.System
  10. {
  11. /// <summary>
  12. /// 操作日志
  13. /// </summary>
  14. [AppService(ServiceType = typeof(ISysOperLogService), ServiceLifetime = LifeTime.Transient)]
  15. public class SysOperLogService : BaseService<SysOperLog>, ISysOperLogService
  16. {
  17. /// <summary>
  18. /// 新增操作日志操作
  19. /// </summary>
  20. /// <param name="operLog">日志对象</param>
  21. public void InsertOperlog(SysOperLog operLog)
  22. {
  23. if (operLog.OperParam.Length >= 1000)
  24. {
  25. operLog.OperParam = operLog.OperParam[..1000];
  26. }
  27. //sysOperLogRepository.AddSysOperLog(operLog);
  28. Insert(operLog);
  29. }
  30. /// <summary>
  31. /// 查询系统操作日志集合
  32. /// </summary>
  33. /// <param name="sysOper">操作日志对象</param>
  34. /// <param name="pager"></param>
  35. /// <returns>操作日志集合</returns>
  36. public PagedInfo<SysOperLog> SelectOperLogList(SysOperLogDto sysOper, PagerInfo pager)
  37. {
  38. sysOper.BeginTime = DateTimeHelper.GetBeginTime(sysOper.BeginTime, -1);
  39. sysOper.EndTime = DateTimeHelper.GetBeginTime(sysOper.EndTime, 1);
  40. var exp = Expressionable.Create<SysOperLog>();
  41. exp.And(it => it.OperTime >= sysOper.BeginTime && it.OperTime <= sysOper.EndTime);
  42. exp.AndIF(sysOper.Title.IfNotEmpty(), it => it.Title.Contains(sysOper.Title));
  43. exp.AndIF(sysOper.OperName.IfNotEmpty(), it => it.OperName.Contains(sysOper.OperName));
  44. exp.AndIF(sysOper.BusinessType != -1, it => it.BusinessType == sysOper.BusinessType);
  45. exp.AndIF(sysOper.Status != -1, it => it.Status == sysOper.Status);
  46. exp.AndIF(sysOper.OperParam != null, it => it.OperParam.Contains(sysOper.OperParam));
  47. return GetPages(exp.ToExpression(), pager, x => x.OperId, OrderByType.Desc);
  48. }
  49. /// <summary>
  50. /// 清空操作日志
  51. /// </summary>
  52. public void CleanOperLog()
  53. {
  54. Truncate();
  55. }
  56. /// <summary>
  57. /// 批量删除系统操作日志
  58. /// </summary>
  59. /// <param name="operIds">需要删除的操作日志ID</param>
  60. /// <returns>结果</returns>
  61. public int DeleteOperLogByIds(long[] operIds)
  62. {
  63. return Context.Deleteable<SysOperLog>().In(operIds).ExecuteCommand();
  64. }
  65. /// <summary>
  66. /// 查询操作日志详细
  67. /// </summary>
  68. /// <param name="operId">操作ID</param>
  69. /// <returns>操作日志对象</returns>
  70. public SysOperLog SelectOperLogById(long operId)
  71. {
  72. return GetById(operId);
  73. }
  74. }
  75. }