package cn.gistack.job.executor.jobhandler;
|
|
import cn.gistack.alerts.sms.feign.ISmsRecordClient;
|
import cn.gistack.sm.sms.feign.IDataAbnormalWarnClient;
|
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSONObject;
|
import com.xxl.job.core.biz.model.ReturnT;
|
import com.xxl.job.core.handler.annotation.XxlJob;
|
import com.xxl.job.core.log.XxlJobLogger;
|
import org.jetbrains.annotations.NotNull;
|
import org.springblade.core.mp.base.BaseEntity;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Component;
|
|
import java.util.List;
|
|
/**
|
* 短信定时发送任务执行器
|
* @author zhongrj
|
* @date 2023-06-03
|
*/
|
@Component
|
public class SendSmsXxlJob {
|
|
@Autowired
|
private ISmsRecordClient smsRecordClient;
|
|
@Autowired
|
private IDataAbnormalWarnClient dataAbnormalWarnClient;
|
|
|
/**
|
* 外呼未接通-发送短信
|
* @param param
|
* @return
|
* @throws Exception
|
*/
|
@XxlJob("sendSmsByOutCallNotConnect")
|
public ReturnT<String> createOutCallTaskJobHandler(String param){
|
return getStringReturnT(param);
|
}
|
|
@NotNull
|
private ReturnT<String> getStringReturnT(String param) {
|
XxlJobLogger.log("开始执行任务...");
|
JSONObject jsonParam = JSON.parseObject(param);
|
String taskId = jsonParam.getString("taskId");
|
String time = jsonParam.getString("time");
|
// 外呼未接通-发送短信
|
Object result = smsRecordClient.sendSmsByOutCallNotConnect(taskId, time);
|
XxlJobLogger.log("任务响应结果:" + result);
|
XxlJobLogger.log("结束自动创建任务...");
|
return ReturnT.SUCCESS;
|
}
|
|
/**
|
* 监测数据表异常,异常发送短信给运维人员
|
* @return
|
*/
|
@XxlJob("sendOperate")
|
public ReturnT<String> sendOperate(String param) {
|
XxlJobLogger.log("开始执行任务...");
|
JSONObject jsonParam = JSON.parseObject(param);
|
String tableName = jsonParam.getString("tableName");
|
String phones = jsonParam.getString("phones");
|
dataAbnormalWarnClient.sendOperate(tableName, phones);
|
XxlJobLogger.log("结束执行任务...");
|
return ReturnT.SUCCESS;
|
}
|
|
/**
|
* 试点白蚁报警,发送短信给水库人员监测监测点
|
* @param param
|
* @return
|
*/
|
@XxlJob("sendWarmInfo")
|
public ReturnT<String> sendWarmInfo(String param) {
|
XxlJobLogger.log("开始执行任务...");
|
List<BaseEntity> baseEntities = skBaiYiService.selectList();
|
|
// JSONObject jsonParam = JSON.parseObject(param);
|
// java.lang.String tableName = jsonParam.getString("resultList");
|
// java.lang.String phones = jsonParam.getString("phone");
|
// dataAbnormalWarnClient.sendOperate(tableName, phones);
|
|
XxlJobLogger.log("结束执行任务...");
|
return ReturnT.SUCCESS;
|
|
}
|
|
|
|
|
@XxlJob("sendOperateCZ")
|
public ReturnT<String> sendOperateCZ(String param) {
|
XxlJobLogger.log("开始执行任务...");
|
JSONObject jsonParam = JSON.parseObject(param);
|
String phones = jsonParam.getString("phones");
|
String rate = jsonParam.getString("rate");
|
dataAbnormalWarnClient.sendOperateCZ(phones, rate);
|
XxlJobLogger.log("结束执行任务...");
|
return ReturnT.SUCCESS;
|
}
|
|
}
|