|
@@ -105,11 +105,27 @@ public class XxlJobServiceImpl implements IXxlJobService {
|
105
|
105
|
|
106
|
106
|
// add in db
|
107
|
107
|
xxlJobInfoDao.save(jobInfo);
|
108
|
|
- int jobId = jobInfo.getId();
|
109
|
|
- if (jobId < 1) {
|
|
108
|
+ if (jobInfo.getId() < 1) {
|
110
|
109
|
return new ReturnT<String>(500, "新增任务失败");
|
111
|
110
|
}
|
112
|
|
- return ReturnT.SUCCESS;
|
|
111
|
+
|
|
112
|
+ // add in quartz
|
|
113
|
+ String qz_group = String.valueOf(jobInfo.getJobGroup());
|
|
114
|
+ String qz_name = String.valueOf(jobInfo.getId());
|
|
115
|
+ try {
|
|
116
|
+ XxlJobDynamicScheduler.addJob(qz_name, qz_group, jobInfo.getJobCron());
|
|
117
|
+ XxlJobDynamicScheduler.pauseJob(qz_name, qz_group);
|
|
118
|
+ return ReturnT.SUCCESS;
|
|
119
|
+ } catch (SchedulerException e) {
|
|
120
|
+ logger.error("", e);
|
|
121
|
+ try {
|
|
122
|
+ xxlJobInfoDao.delete(jobInfo.getId());
|
|
123
|
+ XxlJobDynamicScheduler.removeJob(qz_name, qz_group);
|
|
124
|
+ } catch (SchedulerException e1) {
|
|
125
|
+ logger.error("", e1);
|
|
126
|
+ }
|
|
127
|
+ return new ReturnT<String>(500, "新增任务失败:" + e.getMessage());
|
|
128
|
+ }
|
113
|
129
|
}
|
114
|
130
|
|
115
|
131
|
@Override
|
|
@@ -206,8 +222,8 @@ public class XxlJobServiceImpl implements IXxlJobService {
|
206
|
222
|
String name = String.valueOf(xxlJobInfo.getId());
|
207
|
223
|
|
208
|
224
|
try {
|
209
|
|
- XxlJobDynamicScheduler.pauseJob(name, group); // jobStatus do not store
|
210
|
|
- return ReturnT.SUCCESS;
|
|
225
|
+ boolean ret = XxlJobDynamicScheduler.pauseJob(name, group); // jobStatus do not store
|
|
226
|
+ return ret?ReturnT.SUCCESS:ReturnT.FAIL;
|
211
|
227
|
} catch (SchedulerException e) {
|
212
|
228
|
e.printStackTrace();
|
213
|
229
|
return ReturnT.FAIL;
|
|
@@ -221,12 +237,7 @@ public class XxlJobServiceImpl implements IXxlJobService {
|
221
|
237
|
String name = String.valueOf(xxlJobInfo.getId());
|
222
|
238
|
|
223
|
239
|
try {
|
224
|
|
- boolean ret = false;
|
225
|
|
- if (XxlJobDynamicScheduler.checkExists(name, group)) {
|
226
|
|
- ret = XxlJobDynamicScheduler.resumeJob(name, group);
|
227
|
|
- } else {
|
228
|
|
- ret = XxlJobDynamicScheduler.addJob(name, group, xxlJobInfo.getJobCron());
|
229
|
|
- }
|
|
240
|
+ boolean ret = XxlJobDynamicScheduler.resumeJob(name, group);
|
230
|
241
|
return ret?ReturnT.SUCCESS:ReturnT.FAIL;
|
231
|
242
|
} catch (SchedulerException e) {
|
232
|
243
|
e.printStackTrace();
|