SysLogService.cs 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. using Attribute;
  2. using Model;
  3. using Model.Base;
  4. using Repository;
  5. using Service;
  6. using Microsoft.AspNetCore.Mvc;
  7. using Vo.Admin;
  8. namespace Services
  9. {
  10. /// <summary>
  11. /// 日志表Service业务层处理
  12. /// </summary>
  13. [AppService(ServiceType = typeof(ISysLogService), ServiceLifetime = LifeTime.Transient)]
  14. public class SysLogService : BaseService<SysLog>, ISysLogService
  15. {
  16. /// <summary>
  17. /// 日志表-列表
  18. /// </summary>
  19. /// <param name="param">参数请求体</param>
  20. /// <param name="page">分页参数</param>
  21. /// <returns>列表</returns>
  22. public PagedInfo<GetSysLogListVo> getSysLogList([FromQuery] PagerInfo page, [FromQuery] SysLog param)
  23. {
  24. //拼装查询条件
  25. var predicate = Expressionable.Create<SysLog>();
  26. predicate = predicate.AndIF(!string.IsNullOrEmpty(param.Title), m => m.Title.Contains(param.Title));
  27. predicate = predicate.AndIF(!string.IsNullOrEmpty(param.CreateBy), m => m.CreateBy.Contains(param.CreateBy));
  28. predicate = predicate.AndIF(!string.IsNullOrEmpty(param.UpdateBy), m => m.UpdateBy.Contains(param.UpdateBy));
  29. predicate = predicate.AndIF(!string.IsNullOrEmpty(param.Method), m => m.Method.Contains(param.Method));
  30. var response = Queryable()
  31. .Where(predicate.ToExpression())
  32. .SplitTable(DateTime.Now.AddMonths(-3), DateTime.Now)
  33. .OrderByDescending(m => m.Id)
  34. .ToPage<SysLog, GetSysLogListVo>(page);
  35. return response;
  36. }
  37. /// <summary>
  38. /// 日志表-详情
  39. /// </summary>
  40. /// <param name="param">参数请求体</param>
  41. /// <returns>详情</returns>
  42. public SysLog getSysLogQuery([FromQuery] SysLog param)
  43. {
  44. //拼装查询条件
  45. var predicate = Expressionable.Create<SysLog>();
  46. predicate = predicate.AndIF(param.Id > 0, m => m.Id == param.Id);
  47. var response = Queryable()
  48. .Where(predicate.ToExpression())
  49. .SplitTable(DateTime.Now.AddMonths(-3), DateTime.Now)
  50. .First();
  51. return response;
  52. }
  53. /// <summary>
  54. /// 日志表-添加
  55. /// </summary>
  56. /// <returns>添加</returns>
  57. public long addSysLog([FromBody] SysLog param)
  58. {
  59. return Insertable(param).SplitTable().ExecuteReturnSnowflakeId();
  60. }
  61. /// <summary>
  62. /// 日志表-修改
  63. /// </summary>
  64. /// <param name="param">参数请求体</param>
  65. /// <returns>修改</returns>
  66. public long updateSysLog([FromBody] SysLog param)
  67. {
  68. return Context.Updateable(param).SplitTable().ExecuteCommand();
  69. }
  70. /// <summary>
  71. /// 日志表-删除
  72. /// </summary>
  73. /// <param name="param">参数请求体</param>
  74. /// <returns>删除</returns>
  75. public long deleteSysLog(long id)
  76. {
  77. return Context.Deleteable<SysLog>(id).SplitTable().ExecuteCommand();
  78. }
  79. }
  80. }