From da6cce0d9f01b98d20b9ed89b438cd32006a8dd8 Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期五, 22 十一月 2024 17:17:10 +0800 Subject: [PATCH] 代码提交 --- smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java | 82 ++++++++++++++++++++++++++++++++++------ 1 files changed, 69 insertions(+), 13 deletions(-) diff --git a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java index aca304e..d96e13e 100644 --- a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java +++ b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java @@ -498,6 +498,11 @@ if (noVoice == ivrTaskTemplateVO.getNoVoiceNum().intValue()) { //宸茬粡闂簡瀵瑰簲鐨勯亶鏁帮紝灏卞垽鏂槸鍚﹁繕鏈変笅涓�棰� if (nowQuestion.getTargetid() == IvrTaskTemplateScriptVOs.size()) { + ServiceSubtask ss = new ServiceSubtask(); + ss.setId(serviceSubtask.getId()); + ss.setSendstate(5L); + ss.setRemark("鐢佃瘽鏃犲搷搴�"); + serviceSubtaskMapper.updateServiceSubtask(ss); //娌℃湁涓嬩竴棰樹簡锛屽氨鎸傛柇鐢佃瘽锛屾挱鏀剧粨鏉熻 redisCache.setCacheObject(phoneCallBackVO.getUuid() + "hangup", 1, 120, TimeUnit.MINUTES); phoneUtils.ttsPlayback(ivrTaskTemplateVO.getRevisitAfter(), phoneCallBackVO.getUuid()); @@ -574,6 +579,10 @@ return; } else if (nextQuestion > IvrTaskTemplateScriptVOs.size()) { //娌℃湁涓嬩竴棰樹簡锛屽氨缁撴潫浜� + ServiceSubtask ss = new ServiceSubtask(); + ss.setId(serviceSubtask.getId()); + ss.setSendstate(6L); + serviceSubtaskMapper.updateServiceSubtask(ss); String date = simpleDateFormat1.format(new Date()); log.error("娌℃湁涓嬩竴棰樹簡锛屽氨缁撴潫浜�: {},uuid涓猴細{}", date, phoneCallBackVO.getUuid()); redisCache.setCacheObject(phoneCallBackVO.getUuid() + "hangup", 1, 120, TimeUnit.MINUTES); @@ -615,6 +624,11 @@ return; } else { //灏卞彲浠ユ寕鏂數璇濅簡 + ServiceSubtask ss = new ServiceSubtask(); + ss.setId(serviceSubtask.getId()); + ss.setSendstate(6L); + serviceSubtaskMapper.updateServiceSubtask(ss); + String date = simpleDateFormat1.format(new Date()); log.info("灏卞彲浠ユ寕鏂數璇濅簡------: {},uuid涓猴細{}", date, phoneCallBackVO.getUuid()); redisCache.setCacheObject(phoneCallBackVO.getUuid() + "hangup", 1, 120, TimeUnit.MINUTES); @@ -795,6 +809,11 @@ } else { log.error("闈欓粯娆℃暟杈惧埌,鎸傛帀鐢佃瘽锛歿}", num); ServiceTask serviceTask1 = serviceTaskService.selectServiceTaskByTaskid(serviceSubtask.getTaskid()); + ServiceSubtask ss = new ServiceSubtask(); + ss.setId(serviceSubtask.getId()); + ss.setSendstate(5L); + ss.setRemark("鐢佃瘽闈欓粯"); + serviceSubtaskMapper.updateServiceSubtask(ss); //澶т笌绛変簬鐨勮瘽,鐩存帴鎸傛柇 phoneCallBackYQVO.setType("text"); phoneCallBackYQVO.setSilent_interval(ivrTaskTemplate.getSilencetime().intValue()); @@ -858,6 +877,11 @@ if (ObjectUtils.isNotEmpty(les)) { //瀵瑰尮閰嶇殑缁撴灉澶勭悊涓�涓�(鐪嬬湅鏄笉鏄渶瑕佹寕鏈�) if (les.getIsEnd() != null && les.getIsEnd() == 1) { + ServiceSubtask ss = new ServiceSubtask(); + ss.setId(serviceSubtask.getId()); + ss.setSendstate(6L); + ss.setRemark("鐢佃瘽鎷ㄦ墦宸插畬鎴�"); + serviceSubtaskMapper.updateServiceSubtask(ss); //鍙互鎸傛満浜� redisCache.deleteObject(serviceSubtask.getId() + "-" + serviceSubtask.getPhone()); redisCache.deleteObject(phoneCallReqYQVO.getUuid() + "SCORE"); @@ -961,6 +985,30 @@ score = BigDecimal.valueOf(score).add(ivrTaskTemplateScriptVO.getIvrTaskScriptTargetoptionList().get(j).getScore()).doubleValue(); redisCache.setCacheObject(phoneCallReqYQVO.getUuid() + "SCORE", score, 120, TimeUnit.MINUTES); } + if (nextQuestion == null || nextQuestion == 0L) { + //濡傛灉涓嬩竴棰樹负绌猴紝鎴栬�呬负0锛屽垯鎸傛満 + ServiceSubtask ss = new ServiceSubtask(); + ss.setId(serviceSubtask.getId()); + ss.setSendstate(6L); + ss.setRemark("鐢佃瘽鎷ㄦ墦宸插畬鎴�"); + serviceSubtaskMapper.updateServiceSubtask(ss); + redisCache.deleteObject(serviceSubtask.getId() + "-" + serviceSubtask.getPhone()); + redisCache.deleteObject(phoneCallReqYQVO.getUuid() + "SCORE"); + redisCache.deleteObject(phoneCallReqYQVO.getUuid() + "PlayEventCallbackPlaystop"); + redisCache.deleteObject(phoneCallReqYQVO.getUuid() + "noVoice"); + //鍦╮edis涓繚瀛樹竴涓嬬粨鏉熻锛屽湪璋冪敤鎸傜數璇濈殑鏂规硶鏃跺垹闄� + ServiceTask serviceTask = serviceTaskService.selectServiceTaskByTaskid(serviceSubtask.getTaskid()); + redisCache.setCacheObject(phoneCallReqYQVO.getUuid() + "- jsy", serviceTask.getJsy(), 120, TimeUnit.MINUTES); + phoneCallBackYQVO.setType("text"); + phoneCallBackYQVO.setValue(phoneCallBackYQVO.getCommonValue() + serviceTask.getJsy()); + //灏嗙粨鏋滃啓杩沝etail琛� + ServiceSubTaskDetailReq ssdReq = new ServiceSubTaskDetailReq(); + List<ServiceSubtaskDetail> serviceSubtaskDetailList2 = new ArrayList<>(); + serviceSubtaskDetailList.add(getServiceSubtaskDetail(phoneCallReqYQVO, ivrTaskTemplateScriptVO, serviceSubtask, ivrTaskTemplate)); + serviceSubTaskDetailReq.setServiceSubtaskDetailList(serviceSubtaskDetailList2); + saveQuestionAnswerPhone(ssdReq); + return phoneCallBackYQVO; + } for (IvrTaskTemplateScript script : ivrTaskTemplateScripts) { if (script.getSort() == nextQuestion.intValue()) { @@ -985,6 +1033,8 @@ if (ObjectUtils.isNotEmpty(scoreObj)) score = (double) scoreObj; serviceSubtask.setScore(BigDecimal.valueOf(score)); serviceSubtask.setFinishtime(new Date()); + serviceSubtask.setSendstate(6L); + serviceSubtask.setRemark("鐢佃瘽鎷ㄦ墦宸插畬鎴�"); serviceSubtaskMapper.updateServiceSubtask(serviceSubtask); //璁剧疆缁撴潫璇� phoneCallBackYQVO.setValue(phoneCallBackYQVO.getCommonValue() + serviceTask1.getJsy()); @@ -1049,6 +1099,8 @@ if (ObjectUtils.isNotEmpty(scoreObj)) score = (Double) scoreObj; serviceSubtask.setScore(BigDecimal.valueOf(score)); serviceSubtask.setFinishtime(new Date()); + serviceSubtask.setSendstate(6L); + serviceSubtask.setRemark("鐢佃瘽鎷ㄦ墦宸插畬鎴�"); serviceSubtaskMapper.updateServiceSubtask(serviceSubtask); //鍦╮edis涓繚瀛樹竴涓嬬粨鏉熻锛屽湪璋冪敤鎸傜數璇濈殑鏂规硶鏃跺垹闄� @@ -1146,6 +1198,8 @@ if (ObjectUtils.isNotEmpty(scoreObj)) score = (Double) scoreObj; serviceSubtask.setScore(BigDecimal.valueOf(score)); serviceSubtask.setFinishtime(new Date()); + serviceSubtask.setRemark("鐢佃瘽鎷ㄦ墦宸插畬鎴�"); + serviceSubtask.setSendstate(6L); serviceSubtaskMapper.updateServiceSubtask(serviceSubtask); //鍘籸edis涓紝鎶婅瀛愪换鍔D鍒犻櫎 @@ -1595,19 +1649,21 @@ i = serviceSubtaskDetailMapper.insertServiceSubtaskDetail(serviceSubtaskDetail); } } else { - for (ServiceSubtaskDetail serviceSubtaskDetail : serviceSubTaskDetailReq.getServiceSubtaskDetailList()) { - serviceSubtaskDetail.setCreateTime(new Date()); - //鍏堟牴鎹瓙浠诲姟id,浠诲姟ID鍜岄棶棰樺簭鍙锋煡璇竴涓嬶紝璇ラ棶棰樻槸鍚﹀凡缁忔湁鍊硷紝濡傛灉鏈夊�硷紝鐩存帴淇敼锛屽鏋滀负绌猴紝鐩存帴鎻掑叆 - ServiceSubtaskDetail ssd = new ServiceSubtaskDetail(); - ssd.setSubId(serviceSubtaskDetail.getSubId()); - ssd.setTaskid(serviceSubtaskDetail.getTaskid()); - ssd.setTemplatequestionnum(serviceSubtaskDetail.getTemplatequestionnum()); - List<ServiceSubtaskDetail> serviceSubtaskDetails = serviceSubtaskDetailMapper.selectServiceSubtaskDetailList(ssd); - if (CollectionUtils.isNotEmpty(serviceSubtaskDetails) && StringUtils.isNotEmpty(serviceSubtaskDetails.get(0).getMatchedtext())) { - serviceSubtaskDetail.setId(serviceSubtaskDetails.get(0).getId()); - serviceSubtaskDetailMapper.updateServiceSubtaskDetail(serviceSubtaskDetail); - } else { - i = serviceSubtaskDetailMapper.insertServiceSubtaskDetail(serviceSubtaskDetail); + if (serviceSubTaskDetailReq != null && CollectionUtils.isNotEmpty(serviceSubTaskDetailReq.getServiceSubtaskDetailList())) { + for (ServiceSubtaskDetail serviceSubtaskDetail : serviceSubTaskDetailReq.getServiceSubtaskDetailList()) { + serviceSubtaskDetail.setCreateTime(new Date()); + //鍏堟牴鎹瓙浠诲姟id,浠诲姟ID鍜岄棶棰樺簭鍙锋煡璇竴涓嬶紝璇ラ棶棰樻槸鍚﹀凡缁忔湁鍊硷紝濡傛灉鏈夊�硷紝鐩存帴淇敼锛屽鏋滀负绌猴紝鐩存帴鎻掑叆 + ServiceSubtaskDetail ssd = new ServiceSubtaskDetail(); + ssd.setSubId(serviceSubtaskDetail.getSubId()); + ssd.setTaskid(serviceSubtaskDetail.getTaskid()); + ssd.setTemplatequestionnum(serviceSubtaskDetail.getTemplatequestionnum()); + List<ServiceSubtaskDetail> serviceSubtaskDetails = serviceSubtaskDetailMapper.selectServiceSubtaskDetailList(ssd); + if (CollectionUtils.isNotEmpty(serviceSubtaskDetails) && StringUtils.isNotEmpty(serviceSubtaskDetails.get(0).getMatchedtext())) { + serviceSubtaskDetail.setId(serviceSubtaskDetails.get(0).getId()); + serviceSubtaskDetailMapper.updateServiceSubtaskDetail(serviceSubtaskDetail); + } else { + i = serviceSubtaskDetailMapper.insertServiceSubtaskDetail(serviceSubtaskDetail); + } } } } -- Gitblit v1.9.3