From 8b09fbc19a96b57bf1d0e4d7c79b51a76aeca554 Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期五, 28 三月 2025 19:57:56 +0800 Subject: [PATCH] 修改bug --- DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/quartz/jobs/OrderTimeOutJob.java | 117 ++++++++++++++-------------------------------------------- 1 files changed, 29 insertions(+), 88 deletions(-) diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/quartz/jobs/OrderTimeOutJob.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/quartz/jobs/OrderTimeOutJob.java index 871e41f..7d458ea 100644 --- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/quartz/jobs/OrderTimeOutJob.java +++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/quartz/jobs/OrderTimeOutJob.java @@ -8,26 +8,25 @@ import com.stylefeng.guns.modular.specialTrain.server.IOrderPrivateCarService; import com.stylefeng.guns.modular.system.dao.UserInfoMapper; import com.stylefeng.guns.modular.system.model.Driver; -import com.stylefeng.guns.modular.system.model.User; import com.stylefeng.guns.modular.system.model.UserInfo; import com.stylefeng.guns.modular.system.service.IDriverService; -import com.stylefeng.guns.modular.system.service.IUserService; import com.stylefeng.guns.modular.system.util.PushUtil; import com.stylefeng.guns.modular.system.util.TextToSpeechUtil; import com.stylefeng.guns.modular.system.util.quartz.QuartzUtil; -import com.stylefeng.guns.modular.system.util.quartz.model.QuartzEnum; -import com.stylefeng.guns.modular.system.util.quartz.model.QuartzJob; import lombok.extern.slf4j.Slf4j; import org.quartz.*; import org.springframework.stereotype.Component; import javax.annotation.Resource; +import java.io.BufferedReader; import java.io.IOException; +import java.io.InputStreamReader; import java.text.SimpleDateFormat; import java.util.Arrays; import java.util.List; import java.util.Timer; import java.util.TimerTask; + /** * 订单司机超时提醒任务 @@ -36,7 +35,7 @@ */ @Slf4j @Component -public class OrderTimeOutJob extends QuartzJob { +public class OrderTimeOutJob implements Job { @Resource private PushUtil pushUtil; @@ -49,47 +48,14 @@ @Resource private UserInfoMapper userInfoMapper; - - - @Override - public QuartzJob buildQuartzJob() { - return buildQuartzJob(QuartzEnum.JOB_NAME.getValue()); - } - - @Override - public QuartzJob buildQuartzJob(String name) { - return buildQuartzJob(name, QuartzEnum.DEFAULT_GROUP.getValue()); - } - - @Override - public QuartzJob buildQuartzJob(String name, String group) { - return buildQuartzJob(name, QuartzEnum.DEFAULT_GROUP.getValue(), null); - } - - @Override - public QuartzJob buildQuartzJob(String name, String group, JobDataMap jobDataMap) { - QuartzJob job = new OrderTimeOutJob(); - if(ToolUtil.isNotEmpty(name)){ - job.setName(name); - }else{ - job.setName(QuartzEnum.JOB_NAME.getValue()); - } - if(ToolUtil.isNotEmpty(group)){ - job.setGroup(group); - }else{ - job.setGroup(QuartzEnum.DEFAULT_GROUP.getValue()); - } - if(null != jobDataMap){ - job.setJobDataMap(jobDataMap); - } - return job; - } + @Resource + private QuartzUtil quartzUtil; + /** * 执行的业务逻辑 * @param jobExecutionContext 定时任务上下文对象 */ - @Override public void run(JobExecutionContext jobExecutionContext) { JobDetail jobDetail = jobExecutionContext.getJobDetail(); JobDataMap jobDataMap = jobDetail.getJobDataMap(); @@ -149,7 +115,7 @@ List<Integer> list = Arrays.asList(4, 5, 6, 7, 8, 9, 10, 11, 12); if(1 == timeOutType && list.contains(orderPrivateCar.getState())){ JobKey key = jobExecutionContext.getJobDetail().getKey(); - boolean b = QuartzUtil.deleteQuartzTask(key); + boolean b = quartzUtil.deleteQuartzTask(key); if(!b){ log.error("定时任务关闭失败:" + key.toString()); } @@ -157,7 +123,7 @@ } if(2 == timeOutType && (System.currentTimeMillis() >= timeOut || list.contains(orderPrivateCar.getState()))){ JobKey key = jobExecutionContext.getJobDetail().getKey(); - boolean b = QuartzUtil.deleteQuartzTask(key); + boolean b = quartzUtil.deleteQuartzTask(key); if(!b){ log.error("定时任务关闭失败:" + key.toString()); } @@ -167,7 +133,7 @@ //结束超时循环提醒定时 if(3 == timeOutType && list.contains(orderPrivateCar.getState())){ JobKey key = jobExecutionContext.getJobDetail().getKey(); - boolean b = QuartzUtil.deleteQuartzTask(key); + boolean b = quartzUtil.deleteQuartzTask(key); if(!b){ log.error("定时任务关闭失败:" + key.toString()); } @@ -181,7 +147,7 @@ List<Integer> list = Arrays.asList(4, 5, 6, 7, 8, 9, 10, 11, 12, 13); if(1 == timeOutType && list.contains(orderLogistics.getState())){ JobKey key = jobExecutionContext.getJobDetail().getKey(); - boolean b = QuartzUtil.deleteQuartzTask(key); + boolean b = quartzUtil.deleteQuartzTask(key); if(!b){ log.error("定时任务关闭失败:" + key.toString()); } @@ -190,7 +156,7 @@ //结束超时循环提醒定时 if(3 == timeOutType && list.contains(orderLogistics.getState())){ JobKey key = jobExecutionContext.getJobDetail().getKey(); - boolean b = QuartzUtil.deleteQuartzTask(key); + boolean b = quartzUtil.deleteQuartzTask(key); if(!b){ log.error("定时任务关闭失败:" + key.toString()); } @@ -210,14 +176,21 @@ new Timer().schedule(new TimerTask() { @Override public void run() { - Process process = null; try { - process = Runtime.getRuntime().exec("sudo rm -rf /home/igotechgh/nginx/html/files/audio/" + fileName); - } catch (IOException e) { - throw new RuntimeException(e); - } - if (process != null) { - process.destroy(); + // 使用Runtime执行命令 + Process process = Runtime.getRuntime().exec("sudo rm -rf /home/igotechgh/nginx/html/files/audio/" + fileName); + // 读取命令的输出 + BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream())); + String line; + while ((line = reader.readLine()) != null) { + System.out.println(line); + } + // 等待命令执行完成 + process.waitFor(); + // 关闭流 + reader.close(); + } catch (IOException | InterruptedException e) { + e.printStackTrace(); } } }, 30000); @@ -227,44 +200,12 @@ } - /** - * 初始化任务对象 - * @return - */ - public static QuartzJob init(){ - return new OrderTimeOutJob().buildQuartzJob(); - } - - /** - * 初始化任务对象 - * @param name - * @return - */ - public static QuartzJob init(String name){ - return new OrderTimeOutJob().buildQuartzJob(name); + @Override + public void execute(JobExecutionContext jobExecutionContext){ + run(jobExecutionContext); } - /** - * 初始化任务对象 - * @param name - * @param group - * @return - */ - public static QuartzJob init(String name, String group){ - return new OrderTimeOutJob().buildQuartzJob(name, group); - } - - - /** - * 初始化任务对象 - * @param name - * @param group - * @return - */ - public static QuartzJob init(String name, String group, JobDataMap jobDataMap){ - return new OrderTimeOutJob().buildQuartzJob(name, group, jobDataMap); - } } -- Gitblit v1.7.1