From 562a960261b75d70abd65aa10528f09aeece94e8 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期二, 24 九月 2024 09:49:23 +0800
Subject: [PATCH] 代码提交
---
smartor/src/main/java/com/smartor/service/impl/CommonTaskServiceImpl.java | 188 ++++++++++++++++++++++++++++++++++------------
1 files changed, 137 insertions(+), 51 deletions(-)
diff --git a/smartor/src/main/java/com/smartor/service/impl/CommonTaskServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/CommonTaskServiceImpl.java
index 34d0dc1..22ce775 100644
--- a/smartor/src/main/java/com/smartor/service/impl/CommonTaskServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/CommonTaskServiceImpl.java
@@ -9,7 +9,7 @@
import com.ruoyi.common.utils.DtoConversionUtils;
import com.smartor.domain.*;
import com.smartor.service.CommonTaskService;
-import com.smartor.service.IIvrTaskService;
+import com.smartor.service.IServiceTaskService;
import com.smartor.service.ISvyTaskService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
@@ -33,10 +33,10 @@
@Service
public class CommonTaskServiceImpl implements CommonTaskService {
@Autowired
- private IIvrTaskService ivrTaskService;
+ private IServiceTaskService ivrTaskService;
@Autowired
- private ISvyTaskService iSvyTaskService;
+ private IServiceTaskService iServiceTaskService;
@Autowired
private RedisCache redisCache;
@@ -44,6 +44,7 @@
@Override
public Integer taskSend(SendTaskVO sendTaskVO) {
+
if (sendTaskVO.getTaskId() == null || sendTaskVO.getTaskType() == null)
throw new BaseException("浠诲姟ID鎴栬�呬换鍔$被鍨嬩笉鑳戒负绌猴紝璇锋鏌ュ悗锛屽啀杩涜鎵ц");
if (sendTaskVO.getTaskType() == 1) {
@@ -54,21 +55,22 @@
return wjSend(sendTaskVO);
} else if (sendTaskVO.getTaskType() == 3) {
//瀹f暀
-
+ return xjSend(sendTaskVO);
}
+ log.error("璧板埌杩欓噷浜嗗槢");
return null;
}
public int sfSend(SendTaskVO sendTaskVO) {
- IvrTask ivrTask = ivrTaskService.selectIvrTaskByTaskid(sendTaskVO.getTaskId());
+ ServiceTask ivrTask = ivrTaskService.selectServiceTaskByTaskid(sendTaskVO.getTaskId());
if (sendTaskVO.getSendState() != null && sendTaskVO.getSendState() == 3 || sendTaskVO.getSendState() != null && sendTaskVO.getSendState() == 4) {
//浠诲姟鏆傚仠鎴栫粓姝�
- IvrTask ivrTask3 = new IvrTask();
- ivrTask3.setTaskid(sendTaskVO.getTaskId());
- ivrTask3.setStopState(ivrTask.getStopState() + 1);
- ivrTask3.setSendState(sendTaskVO.getSendState());
- ivrTaskService.updateIvrTask(ivrTask3);
- return 0;
+ ServiceTask serviceTask = new ServiceTask();
+ serviceTask.setTaskid(sendTaskVO.getTaskId());
+ serviceTask.setStopState(ivrTask.getStopState() + 1);
+ serviceTask.setSendState(sendTaskVO.getSendState());
+ int i = ivrTaskService.updateServiceTask(serviceTask);
+ return i;
}
//鍒ゆ柇鍙戦�佺姸鎬佹槸鍚︿负绌�
@@ -80,12 +82,15 @@
String content = sendMQContent(sendTaskVO, ivrTask.getTemplateid().toString(), ivrTask.getPreachform(), ivrTask.getStopState(), null);
//绔嬪嵆鍙戦��
redisCache.setCacheObject(content, content, 1, TimeUnit.SECONDS);
-
//灏嗕换鍔$姸鎬佷慨鏀规垚鎵ц涓�
- IvrTask ivrTask2 = new IvrTask();
- ivrTask2.setTaskid(ivrTask.getTaskid());
- ivrTask2.setSendState(2);
- ivrTaskService.updateIvrTask(ivrTask2);
+ ServiceTask serviceTask = new ServiceTask();
+ serviceTask.setTaskid(ivrTask.getTaskid());
+ serviceTask.setSendState(2L);
+ //涓嶇煡涓哄暐杩欐牱鍐欙紝鍏堝皢stopstate缃负null
+// serviceTask.setStopState(ivrTask.getStopState());
+ serviceTask.setStopState(null);
+ ivrTaskService.updateServiceTask(serviceTask);
+ log.error("娑堟伅鍙戦�佹垚鍔�");
} else if (StringUtils.isNotEmpty(sendTaskVO.getSendType()) && sendTaskVO.getSendType().equals("1") || StringUtils.isNotEmpty(sendTaskVO.getSendType()) && sendTaskVO.getSendType().equals("3")) {
//鏃堕棿娈靛彂閫�
ObjectMapper objectMapper = new ObjectMapper();
@@ -98,9 +103,9 @@
log.error("JsonProcessingException鎶ラ敊浜嗭細{}", e.getMessage());
}
for (TaskSendTimeVO taskSendTimeVO : taskSendTimeVOList) {
- //鍘籗endTimeslot涓紝鑾峰彇鎵�鏈夌殑鏃堕棿娈�
- List<TaskSendTimeVO> list = new ArrayList<>();
- list.add(taskSendTimeVO);
+// //鍘籗endTimeslot涓紝鑾峰彇鎵�鏈夌殑鏃堕棿娈�
+// List<TaskSendTimeVO> list = new ArrayList<>();
+// list.add(taskSendTimeVO);
//鑾峰彇寮�濮嬪彂閫佹椂闂�
String begantime = taskSendTimeVO.getBegantime();
@@ -111,68 +116,148 @@
Date date = sdf.parse(begantime);
milliseconds = date.getTime() - System.currentTimeMillis();
System.out.println("鏃ユ湡姣鏁帮細" + milliseconds);
+ SendTaskVO sendTaskVO1 = DtoConversionUtils.sourceToTarget(sendTaskVO, SendTaskVO.class);
+ sendTaskVO1.setSendType("1");
+ String content = sendMQContent(sendTaskVO1, ivrTask.getTemplateid().toString(), ivrTask.getPreachform(), ivrTask.getStopState(), taskSendTimeVO);
+ redisCache.setCacheObject(content, content, milliseconds / 1000, TimeUnit.SECONDS);
} catch (Exception e) {
e.printStackTrace();
+ if (milliseconds < 0) throw new BaseException("璇锋鏌ヤ换鍔″紑濮嬫椂闂达紝涓嶈兘灏忎簬褰撳墠鏃堕棿");
}
-
- SendTaskVO sendTaskVO1 = DtoConversionUtils.sourceToTarget(sendTaskVO, SendTaskVO.class);
- sendTaskVO1.setSendType("1");
- String content = sendMQContent(sendTaskVO1, ivrTask.getTemplateid().toString(), ivrTask.getPreachform(), ivrTask.getStopState(), list);
- redisCache.setCacheObject(content, content, milliseconds / 1000, TimeUnit.SECONDS);
}
//灏嗕换鍔$姸鎬佷慨鏀规垚鎵ц涓�
- IvrTask ivrTask2 = new IvrTask();
- ivrTask2.setTaskid(ivrTask.getTaskid());
- ivrTask2.setSendState(2);
- ivrTaskService.updateIvrTask(ivrTask2);
+ ServiceTask serviceTask = new ServiceTask();
+ serviceTask.setTaskid(ivrTask.getTaskid());
+ serviceTask.setSendState(2L);
+ serviceTask.setStopState(null);
+ ivrTaskService.updateServiceTask(serviceTask);
}
}
return 1;
}
public int wjSend(SendTaskVO sendTaskVO) {
- SvyTask svyTask = iSvyTaskService.selectSvyTaskByTaskid(sendTaskVO.getTaskId());
+ ServiceTask serviceTask1 = iServiceTaskService.selectServiceTaskByTaskid(sendTaskVO.getTaskId());
if (sendTaskVO.getSendState() != null && sendTaskVO.getSendState() == 3 || sendTaskVO.getSendState() != null && sendTaskVO.getSendState() == 4) {
//浠诲姟鏆傚仠鎴栫粓姝�
- SvyTask svyTask1 = new SvyTask();
- svyTask1.setTaskid(sendTaskVO.getTaskId());
- svyTask1.setStopState(svyTask.getStopState() + 1);
- svyTask1.setSendState(sendTaskVO.getSendState().toString());
- iSvyTaskService.updateSvyTask(svyTask1);
- return 0;
+ ServiceTask serviceTask = new ServiceTask();
+ serviceTask.setTaskid(sendTaskVO.getTaskId());
+ serviceTask.setStopState(serviceTask1.getStopState() + 1);
+ serviceTask.setSendState(sendTaskVO.getSendState());
+ int i = iServiceTaskService.updateServiceTask(serviceTask);
+ return i;
}
//鍒ゆ柇鍙戦�佺姸鎬佹槸鍚︿负绌�
if (StringUtils.isEmpty(sendTaskVO.getSendType())) {
- sendTaskVO.setSendType(svyTask.getSendType().toString());
+ sendTaskVO.setSendType(serviceTask1.getSendType().toString());
}
//鍒ゆ柇浠诲姟鏄惁鏄珛鍗冲彂閫�
if (StringUtils.isNotEmpty(sendTaskVO.getSendType()) && sendTaskVO.getSendType().equals("2")) {
- String content = sendMQContent(sendTaskVO, svyTask.getTemplateid(), svyTask.getPreachform(), svyTask.getStopState(), null);
+ String content = sendMQContent(sendTaskVO, serviceTask1.getTemplateid().toString(), serviceTask1.getPreachform(), serviceTask1.getStopState(), null);
//绔嬪嵆鍙戦��
redisCache.setCacheObject(content, content, 1, TimeUnit.SECONDS);
//灏嗕换鍔$姸鎬佷慨鏀规垚鎵ц涓�
- SvyTask svyTask2 = new SvyTask();
- svyTask2.setTaskid(svyTask.getTaskid());
- svyTask2.setSendState("2");
- iSvyTaskService.updateSvyTask(svyTask2);
+ ServiceTask serviceTask = new ServiceTask();
+ serviceTask.setTaskid(serviceTask1.getTaskid());
+ serviceTask.setSendState(2L);
+ serviceTask.setStopState(null);
+ iServiceTaskService.updateServiceTask(serviceTask);
} else if (StringUtils.isNotEmpty(sendTaskVO.getSendType()) && sendTaskVO.getSendType().equals("1") || StringUtils.isNotEmpty(sendTaskVO.getSendType()) && sendTaskVO.getSendType().equals("3")) {
//鏃堕棿娈靛彂閫�
ObjectMapper objectMapper = new ObjectMapper();
- if (StringUtils.isNotEmpty(svyTask.getSendTimeSlot())) {
+ if (StringUtils.isNotEmpty(serviceTask1.getSendTimeSlot())) {
List<TaskSendTimeVO> taskSendTimeVOList = null;
try {
- taskSendTimeVOList = objectMapper.readValue(svyTask.getSendTimeSlot(), new TypeReference<List<TaskSendTimeVO>>() {
+ taskSendTimeVOList = objectMapper.readValue(serviceTask1.getSendTimeSlot(), new TypeReference<List<TaskSendTimeVO>>() {
});
} catch (JsonProcessingException e) {
log.error("JsonProcessingException鎶ラ敊浜嗭細{}", e.getMessage());
}
for (TaskSendTimeVO taskSendTimeVO : taskSendTimeVOList) {
//鍘籗endTimeslot涓紝鑾峰彇鎵�鏈夌殑鏃堕棿娈�
- List<TaskSendTimeVO> list = new ArrayList<>();
- list.add(taskSendTimeVO);
+// List<TaskSendTimeVO> list = new ArrayList<>();
+// list.add(taskSendTimeVO);
+
+ //鑾峰彇寮�濮嬪彂閫佹椂闂�
+ String begantime = taskSendTimeVO.getBegantime();
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+ //璁板綍鐩墠鍒板彂閫佹椂闂寸殑姣鍊� 锛堝彂閫佹椂闂寸殑姣鍊� - 褰撳墠鏃堕棿鐨勬绉掑�硷級
+ Long milliseconds = 1000L;
+ try {
+ Date date = sdf.parse(begantime);
+ milliseconds = date.getTime() - System.currentTimeMillis();
+ if (milliseconds < 0) {
+ milliseconds = 1000L;
+ }
+ System.out.println("鏃ユ湡姣鏁帮細" + milliseconds);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+
+ SendTaskVO sendTaskVO1 = DtoConversionUtils.sourceToTarget(sendTaskVO, SendTaskVO.class);
+ sendTaskVO1.setSendType("1");
+ String content = sendMQContent(sendTaskVO1, serviceTask1.getTemplateid().toString(), serviceTask1.getPreachform(), serviceTask1.getStopState(), taskSendTimeVO);
+ redisCache.setCacheObject(content, content, milliseconds / 1000, TimeUnit.SECONDS);
+ }
+ //灏嗕换鍔$姸鎬佷慨鏀规垚鎵ц涓�
+ ServiceTask serviceTask = new ServiceTask();
+ serviceTask.setTaskid(serviceTask1.getTaskid());
+ serviceTask.setSendState(2L);
+ serviceTask.setStopState(null);
+ iServiceTaskService.updateServiceTask(serviceTask);
+ }
+ }
+ return 1;
+ }
+
+ public int xjSend(SendTaskVO sendTaskVO) {
+ ServiceTask serviceTask1 = iServiceTaskService.selectServiceTaskByTaskid(sendTaskVO.getTaskId());
+ if (sendTaskVO.getSendState() != null && sendTaskVO.getSendState() == 3 || sendTaskVO.getSendState() != null && sendTaskVO.getSendState() == 4) {
+ //浠诲姟鏆傚仠鎴栫粓姝�
+ ServiceTask serviceTask = new ServiceTask();
+ serviceTask.setTaskid(sendTaskVO.getTaskId());
+ serviceTask.setStopState(serviceTask1.getStopState() + 1);
+ serviceTask.setSendState(sendTaskVO.getSendState());
+ iServiceTaskService.updateServiceTask(serviceTask);
+ return 0;
+ }
+
+ //鍒ゆ柇鍙戦�佺姸鎬佹槸鍚︿负绌�
+ if (StringUtils.isEmpty(sendTaskVO.getSendType())) {
+ sendTaskVO.setSendType(serviceTask1.getSendType().toString());
+ }
+ //鍒ゆ柇浠诲姟鏄惁鏄珛鍗冲彂閫�
+ if (StringUtils.isNotEmpty(sendTaskVO.getSendType()) && sendTaskVO.getSendType().equals("2")) {
+
+ String content = sendMQContent(sendTaskVO, serviceTask1.getTemplateid().toString(), serviceTask1.getPreachform(), serviceTask1.getStopState(), null);
+ //绔嬪嵆鍙戦��
+ redisCache.setCacheObject(content, content, 1, TimeUnit.SECONDS);
+
+ //灏嗕换鍔$姸鎬佷慨鏀规垚鎵ц涓�
+ ServiceTask serviceTask = new ServiceTask();
+ serviceTask.setTaskid(serviceTask1.getTaskid());
+ serviceTask.setSendState(2L);
+ serviceTask.setSendType(1L);
+ serviceTask.setStopState(null);
+ iServiceTaskService.updateServiceTask(serviceTask);
+ } else if (StringUtils.isNotEmpty(sendTaskVO.getSendType()) && sendTaskVO.getSendType().equals("1") || StringUtils.isNotEmpty(sendTaskVO.getSendType()) && sendTaskVO.getSendType().equals("3")) {
+ //鏃堕棿娈靛彂閫�
+ ObjectMapper objectMapper = new ObjectMapper();
+ if (StringUtils.isNotEmpty(serviceTask1.getSendTimeSlot())) {
+ List<TaskSendTimeVO> taskSendTimeVOList = null;
+ try {
+ taskSendTimeVOList = objectMapper.readValue(serviceTask1.getSendTimeSlot(), new TypeReference<List<TaskSendTimeVO>>() {
+ });
+ } catch (JsonProcessingException e) {
+ log.error("JsonProcessingException鎶ラ敊浜嗭細{}", e.getMessage());
+ }
+ for (TaskSendTimeVO taskSendTimeVO : taskSendTimeVOList) {
+ //鍘籗endTimeslot涓紝鑾峰彇鎵�鏈夌殑鏃堕棿娈�
+// List<TaskSendTimeVO> list = new ArrayList<>();
+// list.add(taskSendTimeVO);
//鑾峰彇寮�濮嬪彂閫佹椂闂�
String begantime = taskSendTimeVO.getBegantime();
@@ -189,14 +274,15 @@
SendTaskVO sendTaskVO1 = DtoConversionUtils.sourceToTarget(sendTaskVO, SendTaskVO.class);
sendTaskVO1.setSendType("1");
- String content = sendMQContent(sendTaskVO1, svyTask.getTemplateid(), svyTask.getPreachform(), svyTask.getStopState(), list);
+ String content = sendMQContent(sendTaskVO1, serviceTask1.getTemplateid().toString(), serviceTask1.getPreachform(), serviceTask1.getStopState(), taskSendTimeVO);
redisCache.setCacheObject(content, content, milliseconds / 1000, TimeUnit.SECONDS);
}
//灏嗕换鍔$姸鎬佷慨鏀规垚鎵ц涓�
- SvyTask svyTask3 = new SvyTask();
- svyTask3.setTaskid(svyTask.getTaskid());
- svyTask3.setSendState("2");
- iSvyTaskService.updateSvyTask(svyTask3);
+ ServiceTask serviceTask = new ServiceTask();
+ serviceTask.setTaskid(serviceTask1.getTaskid());
+ serviceTask.setSendState(2L);
+ serviceTask.setStopState(null);
+ iServiceTaskService.updateServiceTask(serviceTask);
}
}
return 1;
@@ -212,7 +298,7 @@
* @param sendTimeslot
* @return
*/
- private String sendMQContent(SendTaskVO sendTaskVO, String templateid, String preachform, Long stopState, List<TaskSendTimeVO> sendTimeslot) {
+ private String sendMQContent(SendTaskVO sendTaskVO, String templateid, String preachform, Long stopState, TaskSendTimeVO sendTimeslot) {
CommonTaskcallMQ commonTaskcallMQ = new CommonTaskcallMQ();
commonTaskcallMQ.setTaskid(sendTaskVO.getTaskId());
commonTaskcallMQ.setSendType(sendTaskVO.getSendType());
--
Gitblit v1.9.3