|
@@ -29,6 +29,8 @@ import vip.xiaonuo.common.exception.CommonException;
|
|
|
import vip.xiaonuo.common.page.CommonPageRequest;
|
|
import vip.xiaonuo.common.page.CommonPageRequest;
|
|
|
import vip.xiaonuo.common.pojo.CommonResult;
|
|
import vip.xiaonuo.common.pojo.CommonResult;
|
|
|
import vip.xiaonuo.dev.api.DevJobApi;
|
|
import vip.xiaonuo.dev.api.DevJobApi;
|
|
|
|
|
+import vip.xiaonuo.dev.modular.job.param.DevJobIdParam;
|
|
|
|
|
+import vip.xiaonuo.dev.modular.job.service.DevJobService;
|
|
|
import vip.xiaonuo.dev.modular.message.enums.DevMessageCategoryEnum;
|
|
import vip.xiaonuo.dev.modular.message.enums.DevMessageCategoryEnum;
|
|
|
import vip.xiaonuo.dev.modular.message.param.DevMessageSendParam;
|
|
import vip.xiaonuo.dev.modular.message.param.DevMessageSendParam;
|
|
|
import vip.xiaonuo.dev.modular.message.service.DevMessageService;
|
|
import vip.xiaonuo.dev.modular.message.service.DevMessageService;
|
|
@@ -91,8 +93,8 @@ public class TExamServiceImpl extends ServiceImpl<TExamMapper, TExam> implements
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
|
|
+ @Resource
|
|
|
|
|
+ private DevJobService devJobService;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -257,6 +259,8 @@ public class TExamServiceImpl extends ServiceImpl<TExamMapper, TExam> implements
|
|
|
jobIds.add(tExam.getEndJobId());
|
|
jobIds.add(tExam.getEndJobId());
|
|
|
JSONObject deleteJobResult = devJobApi.deleteJob(jobIds);
|
|
JSONObject deleteJobResult = devJobApi.deleteJob(jobIds);
|
|
|
if(deleteJobResult != null && deleteJobResult.getInteger("code") == 200){
|
|
if(deleteJobResult != null && deleteJobResult.getInteger("code") == 200){
|
|
|
|
|
+ tExam.setStartTime(tExamEditParam.getStartTime());
|
|
|
|
|
+ tExam.setEndTime(tExamEditParam.getEndTime());
|
|
|
tExam = this.addJob(tExam, "start");
|
|
tExam = this.addJob(tExam, "start");
|
|
|
tExam = this.addJob(tExam, "end");
|
|
tExam = this.addJob(tExam, "end");
|
|
|
}else{
|
|
}else{
|
|
@@ -265,6 +269,8 @@ public class TExamServiceImpl extends ServiceImpl<TExamMapper, TExam> implements
|
|
|
}
|
|
}
|
|
|
}else{
|
|
}else{
|
|
|
// 任务不存在,创建任务
|
|
// 任务不存在,创建任务
|
|
|
|
|
+ tExam.setStartTime(tExamEditParam.getStartTime());
|
|
|
|
|
+ tExam.setEndTime(tExamEditParam.getEndTime());
|
|
|
tExam = this.addJob(tExam, "start");
|
|
tExam = this.addJob(tExam, "start");
|
|
|
tExam = this.addJob(tExam, "end");
|
|
tExam = this.addJob(tExam, "end");
|
|
|
}
|
|
}
|
|
@@ -352,25 +358,33 @@ public class TExamServiceImpl extends ServiceImpl<TExamMapper, TExam> implements
|
|
|
public TExam addJob(TExam tExam, String startOnEnd){
|
|
public TExam addJob(TExam tExam, String startOnEnd){
|
|
|
JSONObject jobParam = new JSONObject();
|
|
JSONObject jobParam = new JSONObject();
|
|
|
jobParam.put("name", tExam.getId()+"-"+tExam.getExamName()+"-"+tExam.getPaperId());
|
|
jobParam.put("name", tExam.getId()+"-"+tExam.getExamName()+"-"+tExam.getPaperId());
|
|
|
- jobParam.put("category", "exam-"+startOnEnd);
|
|
|
|
|
|
|
+ jobParam.put("category", DevMessageCategoryEnum.BIZ.getValue());
|
|
|
jobParam.put("actionClass", "vip.xiaonuo.exam.job.task.ExamJobTimerTaskRunner");
|
|
jobParam.put("actionClass", "vip.xiaonuo.exam.job.task.ExamJobTimerTaskRunner");
|
|
|
String cronExpression = "";
|
|
String cronExpression = "";
|
|
|
if("start".equals(startOnEnd)){
|
|
if("start".equals(startOnEnd)){
|
|
|
cronExpression = DateTimeUtil.generateCronExpression(tExam.getStartTime());
|
|
cronExpression = DateTimeUtil.generateCronExpression(tExam.getStartTime());
|
|
|
|
|
+ tExam.setType("start");
|
|
|
}
|
|
}
|
|
|
if("end".equals(startOnEnd)){
|
|
if("end".equals(startOnEnd)){
|
|
|
cronExpression = DateTimeUtil.generateCronExpression(tExam.getEndTime());
|
|
cronExpression = DateTimeUtil.generateCronExpression(tExam.getEndTime());
|
|
|
|
|
+ tExam.setType("end");
|
|
|
}
|
|
}
|
|
|
jobParam.put("cronExpression", cronExpression);
|
|
jobParam.put("cronExpression", cronExpression);
|
|
|
jobParam.put("sortCode", 99);
|
|
jobParam.put("sortCode", 99);
|
|
|
jobParam.put("extJson", JSONUtil.parseObj(tExam));
|
|
jobParam.put("extJson", JSONUtil.parseObj(tExam));
|
|
|
JSONObject addJobResult = devJobApi.addJob(jobParam);
|
|
JSONObject addJobResult = devJobApi.addJob(jobParam);
|
|
|
if(addJobResult != null && addJobResult.getInteger("code") != null && addJobResult.getIntValue("code") == 200){
|
|
if(addJobResult != null && addJobResult.getInteger("code") != null && addJobResult.getIntValue("code") == 200){
|
|
|
|
|
+ DevJobIdParam devJobIdParam = new DevJobIdParam();
|
|
|
|
|
+
|
|
|
if("start".equals(startOnEnd)){
|
|
if("start".equals(startOnEnd)){
|
|
|
tExam.setStartJobId(addJobResult.getJSONObject("data").getString("id"));
|
|
tExam.setStartJobId(addJobResult.getJSONObject("data").getString("id"));
|
|
|
|
|
+ devJobIdParam.setId(addJobResult.getJSONObject("data").getString("id"));
|
|
|
|
|
+ devJobService.runJob(devJobIdParam);
|
|
|
}
|
|
}
|
|
|
if("end".equals(startOnEnd)){
|
|
if("end".equals(startOnEnd)){
|
|
|
tExam.setEndJobId(addJobResult.getJSONObject("data").getString("id"));
|
|
tExam.setEndJobId(addJobResult.getJSONObject("data").getString("id"));
|
|
|
|
|
+ devJobIdParam.setId(addJobResult.getJSONObject("data").getString("id"));
|
|
|
|
|
+ devJobService.runJob(devJobIdParam);
|
|
|
}
|
|
}
|
|
|
this.updateById(tExam);
|
|
this.updateById(tExam);
|
|
|
return tExam;
|
|
return tExam;
|