dcs преди 5 месеца
родител
ревизия
269d5b94e6

+ 2 - 0
virgo.api/src/main/java/com/bosshand/virgo/api/controller/ReminderController.java

@@ -66,6 +66,8 @@ public class ReminderController {
     @ApiOperation("删除")
     @RequestMapping(value = "/delete/{id}", method = RequestMethod.DELETE)
     public Response delete(@PathVariable long id) {
+        Reminder reminder = reminderService.get(id);
+        quartzService.deleteJobReminderQuartz(reminder);
         reminderService.delete(id);
         return Response.ok();
     }

+ 8 - 0
virgo.api/src/main/java/com/bosshand/virgo/api/service/QuartzService.java

@@ -106,6 +106,14 @@ public class QuartzService {
         executeOnce(delay, jobName, jobClassName, JSONObject.toJSONString(reminder));
     }
 
+    /**
+     * 删除提醒任务
+     */
+    public void deleteJobReminderQuartz(Reminder reminder) {
+        String jobName = reminder.getId() + "_" + reminder.getName();
+        this.deleteCronJob(jobName, DEFAULT_JOB_GROUP, TRIGGER_PRE + jobName, DEFAULT_TRIGGER_GROUP);
+    }
+
     public String addCronJob(String jobName, String cron, String jobClassName, JSONObject data) {
         try {
             // 当前任务不存在才进行添加

+ 4 - 1
virgo.api/src/main/java/com/bosshand/virgo/api/service/ReminderService.java

@@ -49,7 +49,9 @@ public class ReminderService {
         return reminder;
     }
 
-    public void addMessage(Reminder reminder) {
+    public void addMessage(long id) {
+
+        Reminder reminder = reminderDao.get(id);
 
         long userId = reminder.getCreator();
 
@@ -96,6 +98,7 @@ public class ReminderService {
     }
 
     public int updateState(long id) {
+        this.addMessage(id);
         return reminderDao.updateState(id);
     }