From 907641e56c2085aaa81f267946dc3e3e9fca73e7 Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期三, 18 九月 2024 09:39:02 +0800 Subject: [PATCH] 代码提交 --- smartor/src/main/java/com/smartor/service/impl/CommonTaskServiceImpl.java | 126 +++++++++++++++++++++++++++++++++++------ 1 files changed, 106 insertions(+), 20 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 ca3dcf8..22ce775 100644 --- a/smartor/src/main/java/com/smartor/service/impl/CommonTaskServiceImpl.java +++ b/smartor/src/main/java/com/smartor/service/impl/CommonTaskServiceImpl.java @@ -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,8 +55,9 @@ return wjSend(sendTaskVO); } else if (sendTaskVO.getTaskType() == 3) { //瀹f暀 - + return xjSend(sendTaskVO); } + log.error("璧板埌杩欓噷浜嗗槢"); return null; } @@ -67,8 +69,8 @@ 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; } //鍒ゆ柇鍙戦�佺姸鎬佹槸鍚︿负绌� @@ -80,12 +82,15 @@ String content = sendMQContent(sendTaskVO, ivrTask.getTemplateid().toString(), ivrTask.getPreachform(), ivrTask.getStopState(), null); //绔嬪嵆鍙戦�� redisCache.setCacheObject(content, content, 1, TimeUnit.SECONDS); - //灏嗕换鍔$姸鎬佷慨鏀规垚鎵ц涓� ServiceTask serviceTask = new ServiceTask(); serviceTask.setTaskid(ivrTask.getTaskid()); - serviceTask.setSendState(2); + 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,19 +116,20 @@ 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.setTaskid(ivrTask.getTaskid()); - serviceTask.setSendState(2); + serviceTask.setSendState(2L); + serviceTask.setStopState(null); ivrTaskService.updateServiceTask(serviceTask); } } @@ -131,6 +137,83 @@ } public int wjSend(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()); + int i = iServiceTaskService.updateServiceTask(serviceTask); + return i; + } + + //鍒ゆ柇鍙戦�佺姸鎬佹槸鍚︿负绌� + 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.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(); + 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) { //浠诲姟鏆傚仠鎴栫粓姝� @@ -156,7 +239,9 @@ //灏嗕换鍔$姸鎬佷慨鏀规垚鎵ц涓� ServiceTask serviceTask = new ServiceTask(); serviceTask.setTaskid(serviceTask1.getTaskid()); - serviceTask.setSendState(2); + 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")) { //鏃堕棿娈靛彂閫� @@ -171,8 +256,8 @@ } 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(); @@ -189,13 +274,14 @@ 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); } //灏嗕换鍔$姸鎬佷慨鏀规垚鎵ц涓� ServiceTask serviceTask = new ServiceTask(); serviceTask.setTaskid(serviceTask1.getTaskid()); - serviceTask.setSendState(2); + serviceTask.setSendState(2L); + serviceTask.setStopState(null); iServiceTaskService.updateServiceTask(serviceTask); } } @@ -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