| | |
| | | serviceTask.setTaskid(sendTaskVO.getTaskId()); |
| | | serviceTask.setStopState(ivrTask.getStopState() + 1); |
| | | serviceTask.setSendState(sendTaskVO.getSendState()); |
| | | ivrTaskService.updateServiceTask(serviceTask); |
| | | return 0; |
| | | int i = ivrTaskService.updateServiceTask(serviceTask); |
| | | return i; |
| | | } |
| | | |
| | | //判断发送状态是否为空 |
| | |
| | | serviceTask.setTaskid(ivrTask.getTaskid()); |
| | | serviceTask.setSendState(2); |
| | | 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(); |
| | |
| | | log.error("JsonProcessingException报错了:{}", e.getMessage()); |
| | | } |
| | | for (TaskSendTimeVO taskSendTimeVO : taskSendTimeVOList) { |
| | | //去SendTimeslot中,获取所有的时间段 |
| | | List<TaskSendTimeVO> list = new ArrayList<>(); |
| | | list.add(taskSendTimeVO); |
| | | // //去SendTimeslot中,获取所有的时间段 |
| | | // List<TaskSendTimeVO> list = new ArrayList<>(); |
| | | // list.add(taskSendTimeVO); |
| | | |
| | | //获取开始发送时间 |
| | | String begantime = taskSendTimeVO.getBegantime(); |
| | |
| | | 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); |
| | | } |
| | | //将任务状态修改成执行中 |
| | | ServiceTask serviceTask = new ServiceTask(); |
| | |
| | | serviceTask.setSendState(2); |
| | | ivrTaskService.updateServiceTask(serviceTask); |
| | | } |
| | | } |
| | | return 1; |
| | | } return 1; |
| | | } |
| | | |
| | | public int wjSend(SendTaskVO sendTaskVO) { |
| | |
| | | } |
| | | for (TaskSendTimeVO taskSendTimeVO : taskSendTimeVOList) { |
| | | //去SendTimeslot中,获取所有的时间段 |
| | | List<TaskSendTimeVO> list = new ArrayList<>(); |
| | | list.add(taskSendTimeVO); |
| | | // List<TaskSendTimeVO> list = new ArrayList<>(); |
| | | // list.add(taskSendTimeVO); |
| | | |
| | | //获取开始发送时间 |
| | | String begantime = taskSendTimeVO.getBegantime(); |
| | |
| | | |
| | | SendTaskVO sendTaskVO1 = DtoConversionUtils.sourceToTarget(sendTaskVO, SendTaskVO.class); |
| | | sendTaskVO1.setSendType("1"); |
| | | String content = sendMQContent(sendTaskVO1, serviceTask1.getTemplateid().toString(), serviceTask1.getPreachform(), serviceTask1.getStopState(), list); |
| | | String content = sendMQContent(sendTaskVO1, serviceTask1.getTemplateid().toString(), serviceTask1.getPreachform(), serviceTask1.getStopState(), taskSendTimeVO); |
| | | redisCache.setCacheObject(content, content, milliseconds / 1000, TimeUnit.SECONDS); |
| | | } |
| | | //将任务状态修改成执行中 |
| | |
| | | } |
| | | for (TaskSendTimeVO taskSendTimeVO : taskSendTimeVOList) { |
| | | //去SendTimeslot中,获取所有的时间段 |
| | | List<TaskSendTimeVO> list = new ArrayList<>(); |
| | | list.add(taskSendTimeVO); |
| | | // List<TaskSendTimeVO> list = new ArrayList<>(); |
| | | // list.add(taskSendTimeVO); |
| | | |
| | | //获取开始发送时间 |
| | | String begantime = taskSendTimeVO.getBegantime(); |
| | |
| | | |
| | | SendTaskVO sendTaskVO1 = DtoConversionUtils.sourceToTarget(sendTaskVO, SendTaskVO.class); |
| | | sendTaskVO1.setSendType("1"); |
| | | String content = sendMQContent(sendTaskVO1, serviceTask1.getTemplateid().toString(), serviceTask1.getPreachform(), serviceTask1.getStopState(), list); |
| | | String content = sendMQContent(sendTaskVO1, serviceTask1.getTemplateid().toString(), serviceTask1.getPreachform(), serviceTask1.getStopState(), taskSendTimeVO); |
| | | redisCache.setCacheObject(content, content, milliseconds / 1000, TimeUnit.SECONDS); |
| | | } |
| | | //将任务状态修改成执行中 |
| | |
| | | * @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()); |