From 3969c16daebb67d927e26cf06d62c167d8c9528c Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Thu, 15 Jun 2023 15:34:11 +0800
Subject: [PATCH] 每次定时外呼任务后修改外呼未接通发送短信通知任务参数,短信通知调整保存信息到 redis

---
 skjcmanager/skjcmanager-service/skjcmanager-xxljob/src/main/java/cn/gistack/job/executor/jobhandler/OutCallXxlJob.java |   46 ++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 38 insertions(+), 8 deletions(-)

diff --git a/skjcmanager/skjcmanager-service/skjcmanager-xxljob/src/main/java/cn/gistack/job/executor/jobhandler/OutCallXxlJob.java b/skjcmanager/skjcmanager-service/skjcmanager-xxljob/src/main/java/cn/gistack/job/executor/jobhandler/OutCallXxlJob.java
index 2f653f9..639a87b 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-xxljob/src/main/java/cn/gistack/job/executor/jobhandler/OutCallXxlJob.java
+++ b/skjcmanager/skjcmanager-service/skjcmanager-xxljob/src/main/java/cn/gistack/job/executor/jobhandler/OutCallXxlJob.java
@@ -1,5 +1,8 @@
 package cn.gistack.job.executor.jobhandler;
 
+import cn.gistack.job.executor.entity.XxlJobInfo;
+import cn.gistack.job.executor.service.IXxlJobInfoService;
+import cn.gistack.job.executor.vo.XxlJobInfoVO;
 import cn.gistack.sm.intelligentCall.feign.OutCallClient;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
@@ -8,6 +11,9 @@
 import com.xxl.job.core.log.XxlJobLogger;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
+
+import java.util.HashMap;
+import java.util.Map;
 
 /**
  * 智能外呼定时任务执行器
@@ -19,6 +25,9 @@
 
 	@Autowired
 	private OutCallClient outCallClient;
+
+	@Autowired
+	private IXxlJobInfoService xxlJobInfoService;
 
 	/**
 	 * 智能外呼定时创建任务执行器
@@ -36,7 +45,28 @@
 		String day = jsonParam.getString("day");
 		// 创建外呼任务
 		Object result = outCallClient.createOutCallTaskJobHandler(isOver,taskScheduleTime,personNumber, day);
-		XxlJobLogger.log("任务响应结果:" + result);
+		String[] split = result.toString().split(",");
+		if (split[0].equals("true")) {
+			// 获取任务id
+			String taskId = split[1];
+			// 修改定时任务
+			XxlJobInfo jobInfo = xxlJobInfoService.getById(11);
+			// 解析参数
+			Map mapParams = (Map) jobInfo.getExecutorParam();
+			String time = mapParams.get("time").toString();
+			XxlJobInfoVO xxlJobInfo = new XxlJobInfoVO();
+			xxlJobInfo.setId(11);
+			Map<String, Object> map = new HashMap<>(2);
+			map.put("taskId", taskId);
+			map.put("time", time);
+			xxlJobInfo.setExecutorParam(map);
+			Object o = xxlJobInfoService.updateXxlJobById(xxlJobInfo);
+			if (Boolean.parseBoolean(o.toString())) {
+				XxlJobLogger.log("外呼未接通短信通知定时任务修改成功!任务ID:" + taskId);
+			}else {
+				XxlJobLogger.log("外呼未接通短信通知定时任务修改失败!任务ID:" + taskId);
+			}
+		}
 		XxlJobLogger.log("结束自动创建任务...");
 		return ReturnT.SUCCESS;
 	}
@@ -50,14 +80,14 @@
 	@XxlJob("testOutCall")
 	public ReturnT<String> testOutCall(String param){
 		XxlJobLogger.log("开始执行任务...");
-		JSONObject jsonParam = JSON.parseObject(param);
-		String isOver = jsonParam.getString("isOver");
-		String taskScheduleTime = jsonParam.getString("taskScheduleTime");
-		String personNumber = jsonParam.getString("personNumber");
-		String day = jsonParam.getString("day");
+//		JSONObject jsonParam = JSON.parseObject(param);
+//		String isOver = jsonParam.getString("isOver");
+//		String taskScheduleTime = jsonParam.getString("taskScheduleTime");
+//		String personNumber = jsonParam.getString("personNumber");
+//		String day = jsonParam.getString("day");
 		// 创建外呼任务
-		Object result = outCallClient.testOutCall(isOver,taskScheduleTime,personNumber, day);
-		XxlJobLogger.log("任务响应结果:" + result);
+//		Object result = outCallClient.testOutCall(isOver,taskScheduleTime,personNumber, day);
+//		XxlJobLogger.log("任务响应结果:" + result);
 		XxlJobLogger.log("结束自动创建任务...");
 		return ReturnT.SUCCESS;
 	}

--
Gitblit v1.9.3