Przeglądaj źródła

短信上行定时器

master
zouhantao 2 tygodni temu
rodzic
commit
d530b86b8a

+ 7
- 0
zhywpt-dps-iasq/src/main/java/cn/com/taiji/iasq/manager/quartz/msgw/MsgwUpwardManager.java Wyświetl plik

@@ -0,0 +1,7 @@
package cn.com.taiji.iasq.manager.quartz.msgw;

import cn.com.taiji.iasq.manager.AbstractCommManager;

public interface MsgwUpwardManager {
void execute();
}

+ 92
- 0
zhywpt-dps-iasq/src/main/java/cn/com/taiji/iasq/manager/quartz/msgw/MsgwUpwardManagerImpl.java Wyświetl plik

@@ -0,0 +1,92 @@
package cn.com.taiji.iasq.manager.quartz.msgw;

import java.time.LocalDateTime;
import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import cn.com.taiji.common.manager.ManagerException;
import cn.com.taiji.core.entity.dict.EnableStatus;
import cn.com.taiji.core.entity.dict.msgw.MessageResult;
import cn.com.taiji.core.entity.dict.msgw.MessageType;
import cn.com.taiji.core.entity.msgw.MsgwAlarmConfig;
import cn.com.taiji.core.entity.msgw.MsgwAlarmLog;
import cn.com.taiji.core.model.comm.protocol.ias.message.HltSendShortRequest;
import cn.com.taiji.core.repo.jpa.msgw.MsgwAlarmConfigRepo;
import cn.com.taiji.core.repo.jpa.msgw.MsgwAlarmLogRepo;
import cn.com.taiji.core.repo.jpa.msgw.MsgwSendDetailsRepo;
import cn.com.taiji.iasq.manager.AbstractCommManager;

@Service
public class MsgwUpwardManagerImpl extends AbstractCommManager implements MsgwUpwardManager {

@Autowired
private MsgwSendDetailsRepo sendDetailsRepo;
@Autowired
private MsgwAlarmConfigRepo alarmConfigRepo;
@Autowired
private MsgwAlarmLogRepo alarmLogRepo;
LocalDateTime startDateTime = LocalDateTime.now().minusHours(1);
LocalDateTime endDateTime = LocalDateTime.now();

@Override
public void execute() {
logger.info("-------消息推送-消息发送失败告警开始-------");
// 查询时间段内是否有需要告警的数据
// Long failNum = sendDetailsRepo.countStatistics(null, MessageResult.FAIL, startDateTime, endDateTime);
// boolean isAlerts = failNum.equals(0);
// // 如果有,查询是哪个的,触发告警发送
// while (!isAlerts) {
// for (MessageType type : MessageType.values()) {
// Long failTotalNum = sendDetailsRepo.countStatistics(type, MessageResult.FAIL, startDateTime, endDateTime);
// // 如果不为空,发送告警
// if (failTotalNum != 0){
// try {
// sendAlerts(type, failTotalNum);
// } catch (ManagerException e) {
// logger.error("--消息推送-消息发送失败告警失败:", e);
// }
// }
// }
// }
logger.info("-------消息推送-消息发送失败告警结束-------");
}

// public void sendAlerts(MessageType type, Long num) throws ManagerException{
// List<MsgwAlarmConfig> configs = alarmConfigRepo.findConfigByCondition(type, EnableStatus.ENABLE);
// MsgwAlarmLog alarmLog = new MsgwAlarmLog();
// alarmLog.setInsertTime(endDateTime);
// alarmLog.setMessageType(type);
// if (configs.isEmpty()){
// //告警配置内容
// alarmLog.setSendResult(0);//默认失败 告警结果(0-失败,1-成功)
// String failReason = "未找到可用的告警配置!原因:没有配置【" + ",消息类型为:" + type.name() + "】的告警配置。";
// alarmLog.setAlarmReason(failReason);
// alarmLogRepo.persist(alarmLog);
// return;
// }
// // 循环发送告警人
// for (MsgwAlarmConfig config : configs){
// HltSendShortRequest request = new HltSendShortRequest();
// String message = "类型" + type.getValue() + "发送错误,共计" + num + "个。";
// request.setTitle("告警提醒");
// request.setMessage(message);
// request.setMobile(config.getMobile());
// alarmLog.setAlarmConfigId(config.getId());
// alarmLog.setStaffName(config.getStaffName());
// alarmLog.setMobile(config.getMobile());
// alarmLog.setAlarmMessage(message);
// try {
// jsonPostRepeat(request);
// // 记录日志
// alarmLog.setSendResult(1);
// alarmLogRepo.persist(alarmLog);
// } catch (ManagerException e) {
// alarmLog.setSendResult(0);
// alarmLog.setAlarmReason("告警短信发送失败!");
// }
// }
// }

}

+ 22
- 0
zhywpt-dps-iasq/src/main/java/cn/com/taiji/iasq/manager/quartz/msgw/MsgwUpwardTask.java Wyświetl plik

@@ -0,0 +1,22 @@
package cn.com.taiji.iasq.manager.quartz.msgw;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import cn.com.taiji.common.manager.quartz.AbstractCronTask;
import cn.com.taiji.iasq.model.TaskInfo;

@Service
public class MsgwUpwardTask extends AbstractCronTask {
public MsgwUpwardTask() {
super(TaskInfo.MSGW_UPWARD);
}

@Autowired
private MsgwUpwardManager manager;

@Override
public void run() {
manager.execute();
}
}

+ 1
- 0
zhywpt-dps-iasq/src/main/java/cn/com/taiji/iasq/model/CronPara.java Wyświetl plik

@@ -41,6 +41,7 @@ public class CronPara extends AbstractSysConf {
// MSGW
private String msgwPushAlerts = "0 0 * * * ?";
private String msgwPush = "0 0/5 * * * ? ";
private String msgwUpward = "0 0/5 * * * ? ";

//ats
private String orderRefundQuery = "0 0/5 * * * ? ";

+ 1
- 0
zhywpt-dps-iasq/src/main/java/cn/com/taiji/iasq/model/TaskInfo.java Wyświetl plik

@@ -33,6 +33,7 @@ public enum TaskInfo implements PriorityTaskDefinition {
// MSGW
MSGW_PUSH_ALERTS("消息推送告警", TaskGroup.MSGW, "msgwPushAlerts", 3600 * 2, true, List.of(1, 2)),
MSGW_PUSH("消息推送", TaskGroup.MSGW, "msgwPush", 3600 * 2, true, List.of(1, 2)),
MSGW_UPWARD("消息上行获取", TaskGroup.MSGW, "msgwUpward", 3600 * 2, true, List.of(1, 2)),

//invw
ORDER_REFUND_QUERY("微信、支付宝退费查询",TaskGroup.ATS, "orderRefundQuery", 3600 * 2, true, List.of(1, 2)),

Ładowanie…
Anuluj
Zapisz