SysJobLogServiceImpl.java 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. package com.ruoyi.quartz.service.impl;
  2. import com.ruoyi.common.utils.StringUtils;
  3. import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  4. import com.ruoyi.common.core.mybatisplus.core.ServicePlusImpl;
  5. import com.ruoyi.common.core.page.TableDataInfo;
  6. import com.ruoyi.common.utils.PageUtils;
  7. import com.ruoyi.quartz.domain.SysJobLog;
  8. import com.ruoyi.quartz.mapper.SysJobLogMapper;
  9. import com.ruoyi.quartz.service.ISysJobLogService;
  10. import org.springframework.stereotype.Service;
  11. import java.util.Arrays;
  12. import java.util.List;
  13. import java.util.Map;
  14. /**
  15. * 定时任务调度日志信息 服务层
  16. *
  17. * @author ruoyi
  18. */
  19. @Service
  20. public class SysJobLogServiceImpl extends ServicePlusImpl<SysJobLogMapper, SysJobLog, SysJobLog> implements ISysJobLogService {
  21. @Override
  22. public TableDataInfo<SysJobLog> selectPageJobLogList(SysJobLog jobLog) {
  23. Map<String, Object> params = jobLog.getParams();
  24. LambdaQueryWrapper<SysJobLog> lqw = new LambdaQueryWrapper<SysJobLog>()
  25. .like(StringUtils.isNotBlank(jobLog.getJobName()), SysJobLog::getJobName, jobLog.getJobName())
  26. .eq(StringUtils.isNotBlank(jobLog.getJobGroup()), SysJobLog::getJobGroup, jobLog.getJobGroup())
  27. .eq(StringUtils.isNotBlank(jobLog.getStatus()), SysJobLog::getStatus, jobLog.getStatus())
  28. .like(StringUtils.isNotBlank(jobLog.getInvokeTarget()), SysJobLog::getInvokeTarget, jobLog.getInvokeTarget())
  29. .apply(StringUtils.isNotEmpty(params.get("beginTime")),
  30. "date_format(create_time,'%y%m%d') >= date_format({0},'%y%m%d')",
  31. params.get("beginTime"))
  32. .apply(StringUtils.isNotEmpty(params.get("endTime")),
  33. "date_format(create_time,'%y%m%d') <= date_format({0},'%y%m%d')",
  34. params.get("endTime"));
  35. return PageUtils.buildDataInfo(page(PageUtils.buildPage(), lqw));
  36. }
  37. /**
  38. * 获取quartz调度器日志的计划任务
  39. *
  40. * @param jobLog 调度日志信息
  41. * @return 调度任务日志集合
  42. */
  43. @Override
  44. public List<SysJobLog> selectJobLogList(SysJobLog jobLog) {
  45. Map<String, Object> params = jobLog.getParams();
  46. return list(new LambdaQueryWrapper<SysJobLog>()
  47. .like(StringUtils.isNotBlank(jobLog.getJobName()), SysJobLog::getJobName, jobLog.getJobName())
  48. .eq(StringUtils.isNotBlank(jobLog.getJobGroup()), SysJobLog::getJobGroup, jobLog.getJobGroup())
  49. .eq(StringUtils.isNotBlank(jobLog.getStatus()), SysJobLog::getStatus, jobLog.getStatus())
  50. .like(StringUtils.isNotBlank(jobLog.getInvokeTarget()), SysJobLog::getInvokeTarget, jobLog.getInvokeTarget())
  51. .apply(StringUtils.isNotEmpty(params.get("beginTime")),
  52. "date_format(create_time,'%y%m%d') >= date_format({0},'%y%m%d')",
  53. params.get("beginTime"))
  54. .apply(StringUtils.isNotEmpty(params.get("endTime")),
  55. "date_format(create_time,'%y%m%d') <= date_format({0},'%y%m%d')",
  56. params.get("endTime")));
  57. }
  58. /**
  59. * 通过调度任务日志ID查询调度信息
  60. *
  61. * @param jobLogId 调度任务日志ID
  62. * @return 调度任务日志对象信息
  63. */
  64. @Override
  65. public SysJobLog selectJobLogById(Long jobLogId) {
  66. return getById(jobLogId);
  67. }
  68. /**
  69. * 新增任务日志
  70. *
  71. * @param jobLog 调度日志信息
  72. */
  73. @Override
  74. public void addJobLog(SysJobLog jobLog) {
  75. baseMapper.insert(jobLog);
  76. }
  77. /**
  78. * 批量删除调度日志信息
  79. *
  80. * @param logIds 需要删除的数据ID
  81. * @return 结果
  82. */
  83. @Override
  84. public int deleteJobLogByIds(Long[] logIds) {
  85. return baseMapper.deleteBatchIds(Arrays.asList(logIds));
  86. }
  87. /**
  88. * 删除任务日志
  89. *
  90. * @param jobId 调度日志ID
  91. */
  92. @Override
  93. public int deleteJobLogById(Long jobId) {
  94. return baseMapper.deleteById(jobId);
  95. }
  96. /**
  97. * 清空任务日志
  98. */
  99. @Override
  100. public void cleanJobLog() {
  101. remove(new LambdaQueryWrapper<>());
  102. }
  103. }