From f01bb5966a55bd35754476c11d9c8afa6bc7f659 Mon Sep 17 00:00:00 2001 From: 疯狂的狮子li <15040126243@163.com> Date: 星期四, 13 五月 2021 21:25:51 +0800 Subject: [PATCH] update 使用 MP 分页工具 重构业务 --- ruoyi-quartz/src/main/java/com/ruoyi/quartz/service/impl/SysJobServiceImpl.java | 160 +++++++++++++++++++++++++---------------------------- 1 files changed, 76 insertions(+), 84 deletions(-) diff --git a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/service/impl/SysJobServiceImpl.java b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/service/impl/SysJobServiceImpl.java index d7bc6c9..9b97b4f 100644 --- a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/service/impl/SysJobServiceImpl.java +++ b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/service/impl/SysJobServiceImpl.java @@ -1,7 +1,17 @@ package com.ruoyi.quartz.service.impl; -import java.util.List; -import javax.annotation.PostConstruct; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.common.constant.ScheduleConstants; +import com.ruoyi.common.core.page.TableDataInfo; +import com.ruoyi.common.exception.job.TaskException; +import com.ruoyi.common.utils.PageUtils; +import com.ruoyi.quartz.domain.SysJob; +import com.ruoyi.quartz.mapper.SysJobMapper; +import com.ruoyi.quartz.service.ISysJobService; +import com.ruoyi.quartz.util.CronUtils; +import com.ruoyi.quartz.util.ScheduleUtils; import org.quartz.JobDataMap; import org.quartz.JobKey; import org.quartz.Scheduler; @@ -9,81 +19,81 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import com.ruoyi.common.constant.ScheduleConstants; -import com.ruoyi.common.exception.job.TaskException; -import com.ruoyi.quartz.domain.SysJob; -import com.ruoyi.quartz.mapper.SysJobMapper; -import com.ruoyi.quartz.service.ISysJobService; -import com.ruoyi.quartz.util.CronUtils; -import com.ruoyi.quartz.util.ScheduleUtils; + +import javax.annotation.PostConstruct; +import java.util.List; /** * 瀹氭椂浠诲姟璋冨害淇℃伅 鏈嶅姟灞� - * + * * @author ruoyi */ @Service -public class SysJobServiceImpl implements ISysJobService -{ +public class SysJobServiceImpl extends ServiceImpl<SysJobMapper, SysJob> implements ISysJobService { @Autowired private Scheduler scheduler; - - @Autowired - private SysJobMapper jobMapper; /** * 椤圭洰鍚姩鏃讹紝鍒濆鍖栧畾鏃跺櫒 涓昏鏄槻姝㈡墜鍔ㄤ慨鏀规暟鎹簱瀵艰嚧鏈悓姝ュ埌瀹氭椂浠诲姟澶勭悊锛堟敞锛氫笉鑳芥墜鍔ㄤ慨鏀规暟鎹簱ID鍜屼换鍔$粍鍚嶏紝鍚﹀垯浼氬鑷磋剰鏁版嵁锛� */ @PostConstruct - public void init() throws SchedulerException, TaskException - { + public void init() throws SchedulerException, TaskException { scheduler.clear(); - List<SysJob> jobList = jobMapper.selectJobAll(); - for (SysJob job : jobList) - { + List<SysJob> jobList = list(); + for (SysJob job : jobList) { ScheduleUtils.createScheduleJob(scheduler, job); } } + @Override + public TableDataInfo<SysJob> selectPageJobList(SysJob job) { + LambdaQueryWrapper<SysJob> lqw = new LambdaQueryWrapper<SysJob>() + .like(StrUtil.isNotBlank(job.getJobName()), SysJob::getJobName, job.getJobName()) + .eq(StrUtil.isNotBlank(job.getJobGroup()), SysJob::getJobGroup, job.getJobGroup()) + .eq(StrUtil.isNotBlank(job.getStatus()), SysJob::getStatus, job.getStatus()) + .like(StrUtil.isNotBlank(job.getInvokeTarget()), SysJob::getInvokeTarget, job.getInvokeTarget()); + return PageUtils.buildDataInfo(page(PageUtils.buildPage(), lqw)); + } + /** * 鑾峰彇quartz璋冨害鍣ㄧ殑璁″垝浠诲姟鍒楄〃 - * + * * @param job 璋冨害淇℃伅 * @return */ @Override - public List<SysJob> selectJobList(SysJob job) - { - return jobMapper.selectJobList(job); + public List<SysJob> selectJobList(SysJob job) { + return list(new LambdaQueryWrapper<SysJob>() + .like(StrUtil.isNotBlank(job.getJobName()), SysJob::getJobName, job.getJobName()) + .eq(StrUtil.isNotBlank(job.getJobGroup()), SysJob::getJobGroup, job.getJobGroup()) + .eq(StrUtil.isNotBlank(job.getStatus()), SysJob::getStatus, job.getStatus()) + .like(StrUtil.isNotBlank(job.getInvokeTarget()), SysJob::getInvokeTarget, job.getInvokeTarget())); } /** * 閫氳繃璋冨害浠诲姟ID鏌ヨ璋冨害淇℃伅 - * + * * @param jobId 璋冨害浠诲姟ID * @return 璋冨害浠诲姟瀵硅薄淇℃伅 */ @Override - public SysJob selectJobById(Long jobId) - { - return jobMapper.selectJobById(jobId); + public SysJob selectJobById(Long jobId) { + return getById(jobId); } /** * 鏆傚仠浠诲姟 - * + * * @param job 璋冨害淇℃伅 */ @Override @Transactional - public int pauseJob(SysJob job) throws SchedulerException - { + public int pauseJob(SysJob job) throws SchedulerException { Long jobId = job.getJobId(); String jobGroup = job.getJobGroup(); job.setStatus(ScheduleConstants.Status.PAUSE.getValue()); - int rows = jobMapper.updateJob(job); - if (rows > 0) - { + int rows = baseMapper.updateById(job); + if (rows > 0) { scheduler.pauseJob(ScheduleUtils.getJobKey(jobId, jobGroup)); } return rows; @@ -91,19 +101,17 @@ /** * 鎭㈠浠诲姟 - * + * * @param job 璋冨害淇℃伅 */ @Override @Transactional - public int resumeJob(SysJob job) throws SchedulerException - { + public int resumeJob(SysJob job) throws SchedulerException { Long jobId = job.getJobId(); String jobGroup = job.getJobGroup(); job.setStatus(ScheduleConstants.Status.NORMAL.getValue()); - int rows = jobMapper.updateJob(job); - if (rows > 0) - { + int rows = baseMapper.updateById(job); + if (rows > 0) { scheduler.resumeJob(ScheduleUtils.getJobKey(jobId, jobGroup)); } return rows; @@ -111,18 +119,16 @@ /** * 鍒犻櫎浠诲姟鍚庯紝鎵�瀵瑰簲鐨則rigger涔熷皢琚垹闄� - * + * * @param job 璋冨害淇℃伅 */ @Override @Transactional - public int deleteJob(SysJob job) throws SchedulerException - { + public int deleteJob(SysJob job) throws SchedulerException { Long jobId = job.getJobId(); String jobGroup = job.getJobGroup(); - int rows = jobMapper.deleteJobById(jobId); - if (rows > 0) - { + int rows = baseMapper.deleteById(jobId); + if (rows > 0) { scheduler.deleteJob(ScheduleUtils.getJobKey(jobId, jobGroup)); } return rows; @@ -130,38 +136,32 @@ /** * 鎵归噺鍒犻櫎璋冨害淇℃伅 - * + * * @param jobIds 闇�瑕佸垹闄ょ殑浠诲姟ID * @return 缁撴灉 */ @Override @Transactional - public void deleteJobByIds(Long[] jobIds) throws SchedulerException - { - for (Long jobId : jobIds) - { - SysJob job = jobMapper.selectJobById(jobId); + public void deleteJobByIds(Long[] jobIds) throws SchedulerException { + for (Long jobId : jobIds) { + SysJob job = getById(jobId); deleteJob(job); } } /** * 浠诲姟璋冨害鐘舵�佷慨鏀� - * + * * @param job 璋冨害淇℃伅 */ @Override @Transactional - public int changeStatus(SysJob job) throws SchedulerException - { + public int changeStatus(SysJob job) throws SchedulerException { int rows = 0; String status = job.getStatus(); - if (ScheduleConstants.Status.NORMAL.getValue().equals(status)) - { + if (ScheduleConstants.Status.NORMAL.getValue().equals(status)) { rows = resumeJob(job); - } - else if (ScheduleConstants.Status.PAUSE.getValue().equals(status)) - { + } else if (ScheduleConstants.Status.PAUSE.getValue().equals(status)) { rows = pauseJob(job); } return rows; @@ -169,13 +169,12 @@ /** * 绔嬪嵆杩愯浠诲姟 - * + * * @param job 璋冨害淇℃伅 */ @Override @Transactional - public void run(SysJob job) throws SchedulerException - { + public void run(SysJob job) throws SchedulerException { Long jobId = job.getJobId(); String jobGroup = job.getJobGroup(); SysJob properties = selectJobById(job.getJobId()); @@ -187,17 +186,15 @@ /** * 鏂板浠诲姟 - * + * * @param job 璋冨害淇℃伅 璋冨害淇℃伅 */ @Override @Transactional - public int insertJob(SysJob job) throws SchedulerException, TaskException - { + public int insertJob(SysJob job) throws SchedulerException, TaskException { job.setStatus(ScheduleConstants.Status.PAUSE.getValue()); - int rows = jobMapper.insertJob(job); - if (rows > 0) - { + int rows = baseMapper.insert(job); + if (rows > 0) { ScheduleUtils.createScheduleJob(scheduler, job); } return rows; @@ -205,17 +202,15 @@ /** * 鏇存柊浠诲姟鐨勬椂闂磋〃杈惧紡 - * + * * @param job 璋冨害淇℃伅 */ @Override @Transactional - public int updateJob(SysJob job) throws SchedulerException, TaskException - { + public int updateJob(SysJob job) throws SchedulerException, TaskException { SysJob properties = selectJobById(job.getJobId()); - int rows = jobMapper.updateJob(job); - if (rows > 0) - { + int rows = baseMapper.updateById(job); + if (rows > 0) { updateSchedulerJob(job, properties.getJobGroup()); } return rows; @@ -223,17 +218,15 @@ /** * 鏇存柊浠诲姟 - * - * @param job 浠诲姟瀵硅薄 + * + * @param job 浠诲姟瀵硅薄 * @param jobGroup 浠诲姟缁勫悕 */ - public void updateSchedulerJob(SysJob job, String jobGroup) throws SchedulerException, TaskException - { + public void updateSchedulerJob(SysJob job, String jobGroup) throws SchedulerException, TaskException { Long jobId = job.getJobId(); // 鍒ゆ柇鏄惁瀛樺湪 JobKey jobKey = ScheduleUtils.getJobKey(jobId, jobGroup); - if (scheduler.checkExists(jobKey)) - { + if (scheduler.checkExists(jobKey)) { // 闃叉鍒涘缓鏃跺瓨鍦ㄦ暟鎹棶棰� 鍏堢Щ闄わ紝鐒跺悗鍦ㄦ墽琛屽垱寤烘搷浣� scheduler.deleteJob(jobKey); } @@ -242,13 +235,12 @@ /** * 鏍¢獙cron琛ㄨ揪寮忔槸鍚︽湁鏁� - * + * * @param cronExpression 琛ㄨ揪寮� * @return 缁撴灉 */ @Override - public boolean checkCronExpressionIsValid(String cronExpression) - { + public boolean checkCronExpressionIsValid(String cronExpression) { return CronUtils.isValid(cronExpression); } } -- Gitblit v1.9.3