task-reminder/src/main/java/com/zeodao/reminder/strategy/ZentaoOverdueReminderHandler.java
2025-05-29 17:55:48 +08:00

46 lines
1.7 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package com.zeodao.reminder.strategy;
import com.zeodao.reminder.config.TaskReminderConfig;
import com.zeodao.reminder.enums.ScheduleType;
import com.zeodao.reminder.enums.TaskSystemType;
import com.zeodao.reminder.service.ZentaoTaskReminderService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
/**
* 禅道逾期任务提醒处理器
* 处理禅道系统的 overdue-reminder 类型提醒
*
* @author Zeodao
* @version 2.0.0
*/
@Component
public class ZentaoOverdueReminderHandler implements ReminderHandler {
private static final Logger logger = LoggerFactory.getLogger(ZentaoOverdueReminderHandler.class);
@Autowired
private ZentaoTaskReminderService zentaoTaskReminderService;
@Override
public boolean supports(ScheduleType scheduleType, TaskSystemType taskSystemType) {
// 只支持禅道系统的逾期提醒
return scheduleType.isOverdueReminder() && taskSystemType == TaskSystemType.ZENTAO;
}
@Override
public void handleReminder(TaskReminderConfig.Group group, ScheduleType scheduleType, TaskReminderConfig.Schedule schedule) {
logger.info("处理禅道逾期任务提醒 - 群组: {}", group.getName());
try {
// 发送禅道任务状态统计提醒包含任务和BUG详情
zentaoTaskReminderService.sendTaskReminder(group);
logger.info("禅道逾期任务提醒发送成功 - 群组: {}", group.getName());
} catch (Exception e) {
logger.error("禅道逾期任务提醒发送失败 - 群组: {}", group.getName(), e);
}
}
}