From f55c563e2a0b52e4569ce6b5f81632cac598f7fe Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期三, 30 十月 2024 18:36:55 +0800
Subject: [PATCH] 代码提交
---
smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java | 220 +++++++++++++++++++++++++++++++++----------------------
1 files changed, 132 insertions(+), 88 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 1a0cf5b..c55649a 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
@@ -327,7 +327,7 @@
serviceSubtask.setSendname(patTaskRelevance.getName());
serviceSubtask.setAge(patTaskRelevance.getAge());
serviceSubtask.setSfzh(patTaskRelevance.getIdcardno());
- serviceSubtask.setPhone(patTaskRelevance.getPhone());
+ serviceSubtask.setPhone(patTaskRelevance.getTelcode());
serviceSubtask.setAddr(patTaskRelevance.getAddr());
serviceSubtask.setPatid(patTaskRelevance.getPatid());
serviceSubtask.setCreateTime(DateUtils.getNowDate());
@@ -609,7 +609,7 @@
Pattern pattern2 = Pattern.compile(ivrLibaExtemplatescript.getSelfRegex2());
matcher2 = pattern2.matcher(returnQues.getContent());
}
- log.info("++++++++++++++++++++++++++閫氱敤搴撴槸鍚︿负绌猴細selfRegex : {} , selfRegex2 : {}", ivrLibaExtemplatescript.getSelfRegex(), ivrLibaExtemplatescript.getSelfRegex2());
+ log.error("++++++++++++++++++++++++++閫氱敤搴撴槸鍚︿负绌猴細selfRegex : {} , selfRegex2 : {}", ivrLibaExtemplatescript.getSelfRegex(), ivrLibaExtemplatescript.getSelfRegex2());
if (StringUtils.isNotEmpty(ivrLibaExtemplatescript.getSelfRegex()) && matcher.matches() && StringUtils.isNotEmpty(ivrLibaExtemplatescript.getSelfRegex2()) && matcher2.matches() || StringUtils.isEmpty(ivrLibaExtemplatescript.getSelfRegex()) && StringUtils.isNotEmpty(ivrLibaExtemplatescript.getSelfRegex2()) && matcher2.matches() || StringUtils.isEmpty(ivrLibaExtemplatescript.getSelfRegex2()) && StringUtils.isNotEmpty(ivrLibaExtemplatescript.getSelfRegex()) && matcher.matches()) {
QuestionMessage questionMessage = redisCache.getCacheObject(phoneCallBackVO.getUuid() + "returnQues");
IvrTaskTemplateScriptVO ivrTaskTemplateScriptVO = returnQues.getNowQuestion();
@@ -646,6 +646,27 @@
*/
@Override
public PhoneCallBackYQVO phoneCallBackYQ(PhoneCallReqYQVO phoneCallReqYQVO) {
+ //鍒ゆ柇鏄惁鎸傛満
+ String hangupState = redisCache.getCacheObject(phoneCallReqYQVO.getUuid() + "- hangup");
+ if (StringUtils.isNotEmpty(hangupState) && hangup.equals("1")) {
+ return new PhoneCallBackYQVO();
+ }
+ if ("AsrCallback".equals(phoneCallReqYQVO.getOperate()) && phoneCallReqYQVO.getEnd_time() != null && phoneCallReqYQVO.getEnd_time() != -1) {
+ //澶勭悊鎸傛柇
+ if (phoneCallReqYQVO.getAsrtext().contains("鎷ㄥ彨鐨勭敤鎴锋蹇�")) {
+ ServiceSubtask serviceSubtask2 = new ServiceSubtask();
+ serviceSubtask2.setRemark("鐢佃瘽鍙戦�佹垚鍔燂紙鎮h�呮寕鏂級");
+ serviceSubtask2.setSenduuid(phoneCallReqYQVO.getUuid());
+ serviceSubtask2.setId(Long.valueOf(phoneCallReqYQVO.getTaskid()));
+ serviceSubtaskMapper.updateServiceSubtask(serviceSubtask2);
+ Map<String, String> req = new HashMap<>();
+ req.put("uuid", phoneCallReqYQVO.getUuid());
+ req.put("caller", phoneCallReqYQVO.getPhone());
+ HttpUtil.postJsonRequest(hangup, new Gson().toJson(req));
+ redisCache.setCacheObject(phoneCallReqYQVO.getUuid() + "- hangup", "1", 2, TimeUnit.MINUTES);
+ return new PhoneCallBackYQVO();
+ }
+ }
//瀹氫箟涓�涓垎鏁扮殑鍙橀噺
Boolean aBoolean1 = redisCache.hasKey(phoneCallReqYQVO.getUuid() + "SCORE");
if (!aBoolean1) redisCache.setCacheObject(phoneCallReqYQVO.getUuid() + "SCORE", 0.0, 120, TimeUnit.MINUTES);
@@ -669,7 +690,8 @@
Map<String, String> req = new HashMap<>();
req.put("uuid", phoneCallReqYQVO.getUuid());
req.put("caller", phoneCallReqYQVO.getPhone());
- HttpUtils.sendPost(hangup, new Gson().toJson(req));
+// HttpUtils.sendPost(hangup, new Gson().toJson(req));
+ HttpUtil.postJsonRequest(hangup, new Gson().toJson(req));
//鍒犻櫎缁撴潫璇殑鎮e瓨
redisCache.deleteObject(phoneCallReqYQVO.getUuid() + "- jsy");
} else {
@@ -723,10 +745,11 @@
return phoneCallBackYQVO;
} else {
log.error("闈欓粯娆℃暟杈惧埌,鎸傛帀鐢佃瘽锛歿}", num);
+ ServiceTask serviceTask1 = serviceTaskService.selectServiceTaskByTaskid(serviceSubtask.getTaskid());
//澶т笌绛変簬鐨勮瘽,鐩存帴鎸傛柇
phoneCallBackYQVO.setType("text");
phoneCallBackYQVO.setSilent_interval(ivrTaskTemplate.getSilencetime().intValue());
- phoneCallBackYQVO.setValue(ivrTaskTemplate.getRevisitAfter());
+ phoneCallBackYQVO.setValue(serviceTask1.getJsy());
//灏嗙粨鏋滃啓鍒癲etail涓�
ServiceSubTaskDetailReq serviceSubTaskDetailReq = new ServiceSubTaskDetailReq();
List<ServiceSubtaskDetail> serviceSubtaskDetailList = new ArrayList<>();
@@ -746,29 +769,65 @@
redisCache.deleteObject(phoneCallReqYQVO.getUuid() + "SCORE");
redisCache.deleteObject(phoneCallReqYQVO.getUuid() + "PlayEventCallbackPlaystop");
//鍦╮edis涓繚瀛樹竴涓嬬粨鏉熻锛屽湪璋冪敤鎸傜數璇濈殑鏂规硶鏃跺垹闄�
- redisCache.setCacheObject(phoneCallReqYQVO.getUuid() + "- jsy", ivrTaskTemplate.getRevisitAfter(), 120, TimeUnit.MINUTES);
+ ServiceTask serviceTask = serviceTaskService.selectServiceTaskByTaskid(serviceSubtask.getTaskid());
+ redisCache.setCacheObject(phoneCallReqYQVO.getUuid() + "- jsy", serviceTask.getJsy(), 120, TimeUnit.MINUTES);
}
return phoneCallBackYQVO;
} else if ("AsrCallback".equals(phoneCallReqYQVO.getOperate()) && phoneCallReqYQVO.getEnd_time() != null && phoneCallReqYQVO.getEnd_time() != -1) {
- //鎾姤绗竴棰�
- Integer integer = redisCache.getCacheObject(phoneCallReqYQVO.getTaskid().trim() + "-" + phoneCallReqYQVO.getPhone().trim() + "-firstSort");
-// if(integer==0){
-// //integer==0,琛ㄧず寮�鍦虹櫧鍒氭挱鎶ュ畬锛岄渶瑕佸仠椤夸竴涓嬶紝绛夋偅鑰呰璇�
-// redisCache.setCacheObject(phoneCallReqYQVO.getTaskid().trim() + "-" + phoneCallReqYQVO.getPhone().trim() + "-firstSort", 1, 120, TimeUnit.MINUTES);
-// return phoneCallBackYQVO;
-// }
- if (ivrTaskTemplateScriptVO.getSort() == 1 && integer == 1) {
- phoneCallBackYQVO.setType("text");
- phoneCallBackYQVO.setSilent_interval(ivrTaskTemplate.getSilencetime().intValue());
- String scriptContent = ivrTaskTemplateScriptVO.getScriptContent();
- phoneCallBackYQVO.setValue(getObject(serviceSubtask, scriptContent));
- redisCache.setCacheObject(phoneCallReqYQVO.getTaskid().trim() + "-" + phoneCallReqYQVO.getPhone().trim() + "-firstSort", 2, 120, TimeUnit.MINUTES);
- return phoneCallBackYQVO;
+
+ // 鍏堝閫氳瘽杩涜閫氱敤搴撳尮閰嶄竴娆�
+ String extemplateID = ivrTaskTemplate.getSubmoduleID();
+ if (StringUtils.isNotEmpty(extemplateID)) {
+ String[] split = extemplateID.split(",");
+ List<String> list = Arrays.asList(split);
+ List<Long> list1 = new ArrayList<>();
+ for (String str : list) {
+ list1.add(Long.valueOf(str));
+ }
+ List<IvrLibaExtemplatescript> ivrLibaExtemplatescripts = ivrLibaExtemplatescriptMapper.queryIvrLibaExtemplatescriptList(list1);
+ IvrLibaExtemplatescript les = null;
+ for (IvrLibaExtemplatescript ivrLibaExtemplatescript : ivrLibaExtemplatescripts) {
+ Matcher matcher = null;
+ if (StringUtils.isNotEmpty(ivrLibaExtemplatescript.getSelfRegex())) {
+ Pattern pattern = Pattern.compile(ivrLibaExtemplatescript.getSelfRegex());
+ matcher = pattern.matcher(phoneCallReqYQVO.getAsrtext());
+ }
+
+ Matcher matcher2 = null;
+ if (StringUtils.isNotEmpty(ivrLibaExtemplatescript.getSelfRegex2())) {
+ Pattern pattern2 = Pattern.compile(ivrLibaExtemplatescript.getSelfRegex2());
+ matcher2 = pattern2.matcher(phoneCallReqYQVO.getAsrtext());
+ }
+ if (StringUtils.isNotEmpty(ivrLibaExtemplatescript.getSelfRegex()) && matcher.matches() && StringUtils.isNotEmpty(ivrLibaExtemplatescript.getSelfRegex2()) && matcher2.matches() || StringUtils.isEmpty(ivrLibaExtemplatescript.getSelfRegex()) && StringUtils.isNotEmpty(ivrLibaExtemplatescript.getSelfRegex2()) && matcher2.matches() || StringUtils.isEmpty(ivrLibaExtemplatescript.getSelfRegex2()) && StringUtils.isNotEmpty(ivrLibaExtemplatescript.getSelfRegex()) && matcher.matches()) {
+ //灏嗛�氱敤搴撳尮閰嶇殑锛屾斁鍒拌繑鍥炲�间腑
+// phoneCallBackYQVO.setValue(phoneCallBackYQVO.getValue() + ivrLibaExtemplatescript.getSwitchText());
+ phoneCallBackYQVO.setCommonValue(ivrLibaExtemplatescript.getSwitchText());
+ les = ivrLibaExtemplatescript;
+ }
+ break;
+ }
+ if (ObjectUtils.isNotEmpty(les)) {
+ //瀵瑰尮閰嶇殑缁撴灉澶勭悊涓�涓�(鐪嬬湅鏄笉鏄渶瑕佹寕鏈�)
+ if (les.getIsEnd() != null && les.getIsEnd() == 1) {
+ //鍙互鎸傛満浜�
+ 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.setValue(phoneCallBackYQVO.getCommonValue() + serviceTask.getJsy());
+ return phoneCallBackYQVO;
+ }
+ }
}
//濡傛灉鏄枃鏈洖璋�
//鏍规嵁闂ID鑾峰彇璇ラ棶棰樼殑绫诲瀷
if (ivrTaskTemplateScriptVO.getScriptType().equals("1")) {
+ //鐢ㄦ潵鏍囪锛屾槸鍚︽湁鍖归厤涓婄殑
+ Integer flag = 0;
//鏄�夋嫨棰�
for (int j = 0; j < ivrTaskTemplateScriptVO.getIvrTaskScriptTargetoptionList().size(); j++) {
log.error("phoneCallReqYQVO.getAsrtext()鐨勫�间负锛歿}", phoneCallReqYQVO.getAsrtext());
@@ -800,6 +859,7 @@
serviceSubtaskDetailList.add(getServiceSubtaskDetail(phoneCallReqYQVO, ivrTaskTemplateScriptVO, serviceSubtask, ivrTaskTemplate));
serviceSubTaskDetailReq.setServiceSubtaskDetailList(serviceSubtaskDetailList);
saveQuestionAnswerPhone(serviceSubTaskDetailReq);
+ flag = 1;
//灏嗗綋鍓嶅墠鐨勬挱鎶ョ姸鎬佸垹闄わ紝缁欎笅涓�棰樿浣�
redisCache.deleteObject(phoneCallReqYQVO.getUuid() + "PlayEventCallbackPlaystop");
// //鑾峰彇涓嬩竴棰�
@@ -818,7 +878,7 @@
Object obj = redisCache.getCacheObject(phoneCallReqYQVO.getUuid() + "SCORE");
Double score = (obj == null ? new Double(0.00) : new Double(((Double) obj).doubleValue()));
score = BigDecimal.valueOf(score).add(ivrTaskTemplateScriptVO.getIvrTaskScriptTargetoptionList().get(j).getScore()).doubleValue();
- redisCache.setCacheObject(phoneCallReqYQVO.getUuid() + "SCORE", score,120,TimeUnit.MINUTES);
+ redisCache.setCacheObject(phoneCallReqYQVO.getUuid() + "SCORE", score, 120, TimeUnit.MINUTES);
}
for (IvrTaskTemplateScript script : ivrTaskTemplateScripts) {
@@ -827,38 +887,47 @@
phoneCallBackYQVO.setSilent_interval(ivrTaskTemplate.getSilencetime().intValue());
String scriptContent = script.getScriptContent();
log.error("涓嬩竴棰橀棶棰橈細{}", scriptContent);
- phoneCallBackYQVO.setValue(getObject(serviceSubtask, scriptContent));
+ phoneCallBackYQVO.setValue(phoneCallBackYQVO.getCommonValue() + getObject(serviceSubtask, scriptContent));
//灏嗚鎮h�呯殑Redis涓殑棰樼洰ID锛岃繘琛屼慨鏀�
redisCache.setCacheObject(phoneCallReqYQVO.getTaskid().trim() + "-" + phoneCallReqYQVO.getPhone().trim(), script.getId().toString(), 120, TimeUnit.MINUTES);
//鍒犻櫎鏃犲搷搴�
redisCache.deleteObject(phoneCallReqYQVO.getTaskid().trim() + "&&" + "mate" + "&&" + phoneCallReqYQVO.getUuid());
}
}
- } else if (ivrTaskTemplateScriptVO.getBranchFlag().equals("0")) {
- if (ivrTaskTemplateScriptVO.getNextScriptno() == null || ivrTaskTemplateScriptVO.getNextScriptno() == 0) {
- phoneCallBackYQVO.setType("text");
- phoneCallBackYQVO.setSilent_interval(ivrTaskTemplate.getSilencetime().intValue());
- //鏇存柊涓�涓嬪垎鏁�
- double score = redisCache.getCacheObject(phoneCallReqYQVO.getUuid() + "SCORE");
- serviceSubtask.setScore(BigDecimal.valueOf(score));
- serviceSubtask.setFinishtime(new Date());
- serviceSubtaskMapper.updateServiceSubtask(serviceSubtask);
- //璁剧疆缁撴潫璇�
- phoneCallBackYQVO.setValue(ivrTaskTemplate.getRevisitAfter());
- Long id = serviceSubtask.getId();
- Map<String, String> map = delRedisValue(null, id.toString());
- redisCache.setCacheObject(map.get("cacheName"), map.get("val"));
- redisCache.deleteObject(serviceSubtask.getId() + "-" + serviceSubtask.getPhone());
- redisCache.deleteObject(phoneCallReqYQVO.getTaskid().trim() + "&&" + "mate" + "&&" + phoneCallReqYQVO.getUuid());
- redisCache.deleteObject(phoneCallReqYQVO.getUuid() + "SCORE");
- redisCache.deleteObject(phoneCallReqYQVO.getUuid() + "PlayEventCallbackPlaystop");
- //鍦╮edis涓繚瀛樹竴涓嬬粨鏉熻锛屽湪璋冪敤鎸傜數璇濈殑鏂规硶鏃跺垹闄�
- redisCache.setCacheObject(phoneCallReqYQVO.getUuid() + "- jsy", ivrTaskTemplate.getRevisitAfter(), 120, TimeUnit.MINUTES);
+ } else if (ivrTaskTemplateScriptVO.getNextScriptno() == null || ivrTaskTemplateScriptVO.getNextScriptno() == 0) {
+ ServiceTask serviceTask1 = serviceTaskService.selectServiceTaskByTaskid(serviceSubtask.getTaskid());
+ phoneCallBackYQVO.setType("text");
+ phoneCallBackYQVO.setSilent_interval(ivrTaskTemplate.getSilencetime().intValue());
+ //鏇存柊涓�涓嬪垎鏁�
+ double score = redisCache.getCacheObject(phoneCallReqYQVO.getUuid() + "SCORE");
+ serviceSubtask.setScore(BigDecimal.valueOf(score));
+ serviceSubtask.setFinishtime(new Date());
+ serviceSubtaskMapper.updateServiceSubtask(serviceSubtask);
+ //璁剧疆缁撴潫璇�
+ phoneCallBackYQVO.setValue(phoneCallBackYQVO.getCommonValue() + serviceTask1.getJsy());
+ Long id = serviceSubtask.getId();
+ Map<String, String> map = delRedisValue(null, id.toString());
+ redisCache.setCacheObject(map.get("cacheName"), map.get("val"));
+ redisCache.deleteObject(serviceSubtask.getId() + "-" + serviceSubtask.getPhone());
+ redisCache.deleteObject(phoneCallReqYQVO.getTaskid().trim() + "&&" + "mate" + "&&" + phoneCallReqYQVO.getUuid());
+ redisCache.deleteObject(phoneCallReqYQVO.getUuid() + "SCORE");
+ redisCache.deleteObject(phoneCallReqYQVO.getUuid() + "PlayEventCallbackPlaystop");
+ //鍦╮edis涓繚瀛樹竴涓嬬粨鏉熻锛屽湪璋冪敤鎸傜數璇濈殑鏂规硶鏃跺垹闄�
+ ServiceTask serviceTask = serviceTaskService.selectServiceTaskByTaskid(serviceSubtask.getTaskid());
+ redisCache.setCacheObject(phoneCallReqYQVO.getUuid() + "- jsy", serviceTask.getJsy(), 120, TimeUnit.MINUTES);
// return phoneCallBackYQVO;
- }
+
}
} else {
- continue;
+ //flag=0,璇存槑娌� 鍖归厤涓婏紝涔熻鎶婃偅鑰呰鐨勮瘽璁板綍涓嬫潵
+ if (j == ivrTaskTemplateScriptVO.getIvrTaskScriptTargetoptionList().size() - 1 && flag == 0) {
+ ServiceSubTaskDetailReq serviceSubTaskDetailReq = new ServiceSubTaskDetailReq();
+ List<ServiceSubtaskDetail> serviceSubtaskDetailList = new ArrayList<>();
+ serviceSubtaskDetailList.add(getServiceSubtaskDetail(phoneCallReqYQVO, ivrTaskTemplateScriptVO, serviceSubtask, ivrTaskTemplate));
+ serviceSubTaskDetailReq.setServiceSubtaskDetailList(serviceSubtaskDetailList);
+ saveQuestionAnswerPhone(serviceSubTaskDetailReq);
+ continue;
+ }
}
}
//閮芥病鏈夊尮閰嶅埌
@@ -868,11 +937,12 @@
//濡傛灉count宸茬粡澶т簬鎴栫瓑浜庢病鏈夊尮閰嶆鏁�
if (ivrTaskTemplateScriptVO.getBranchFlag().equals("0") && ivrTaskTemplateScriptVO.getNextScriptno() == null || ivrTaskTemplateScriptVO.getBranchFlag().equals("0") && ivrTaskTemplateScriptVO.getNextScriptno() == 0 || ivrTaskTemplateScriptVO.getBranchFlag().equals("1") && ivrTaskTemplateScriptVO.getNextScriptno() == null || ivrTaskTemplateScriptVO.getBranchFlag().equals("1") && ivrTaskTemplateScriptVO.getNextScriptno() == 0) {
//濡傛灉鏄渶鍚庝竴閬撻锛屾垨鑰呮病鏈変笅涓�棰樹簡锛屽氨鐩存帴鎸傛満
+ ServiceTask serviceTask1 = serviceTaskService.selectServiceTaskByTaskid(serviceSubtask.getTaskid());
phoneCallBackYQVO.setType("text");
phoneCallBackYQVO.setSilent_interval(ivrTaskTemplate.getSilencetime().intValue());
if (StringUtils.isNotEmpty(phoneCallBackYQVO.getValue()))
- phoneCallBackYQVO.setValue(phoneCallBackYQVO.getValue() + ivrTaskTemplate.getRevisitAfter());
- else phoneCallBackYQVO.setValue(ivrTaskTemplate.getRevisitAfter());
+ phoneCallBackYQVO.setValue(phoneCallBackYQVO.getCommonValue() + phoneCallBackYQVO.getValue() + serviceTask1.getJsy());
+ else phoneCallBackYQVO.setValue(phoneCallBackYQVO.getCommonValue() + serviceTask1.getJsy());
//鏇存柊涓�涓嬪垎鏁�
double score = redisCache.getCacheObject(phoneCallReqYQVO.getUuid() + "SCORE");
@@ -881,7 +951,8 @@
serviceSubtaskMapper.updateServiceSubtask(serviceSubtask);
//鍦╮edis涓繚瀛樹竴涓嬬粨鏉熻锛屽湪璋冪敤鎸傜數璇濈殑鏂规硶鏃跺垹闄�
- redisCache.setCacheObject(phoneCallReqYQVO.getUuid() + "- jsy", ivrTaskTemplate.getRevisitAfter(), 120, TimeUnit.MINUTES);
+ ServiceTask serviceTask = serviceTaskService.selectServiceTaskByTaskid(serviceSubtask.getTaskid());
+ redisCache.setCacheObject(phoneCallReqYQVO.getUuid() + "- jsy", serviceTask.getJsy(), 120, TimeUnit.MINUTES);
//鍘籸edis涓紝鎶婅瀛愪换鍔D鍒犻櫎
Long id = serviceSubtask.getId();
Map<String, String> map = delRedisValue(null, id.toString());
@@ -896,7 +967,7 @@
phoneCallBackYQVO.setType("text");
phoneCallBackYQVO.setSilent_interval(ivrTaskTemplate.getSilencetime().intValue());
String scriptContent = script.getScriptContent();
- phoneCallBackYQVO.setValue(getObject(serviceSubtask, scriptContent));
+ phoneCallBackYQVO.setValue(phoneCallBackYQVO.getCommonValue() + getObject(serviceSubtask, scriptContent));
//灏嗚鎮h�呯殑Redis涓殑棰樼洰ID锛岃繘琛屼慨鏀�
redisCache.setCacheObject(phoneCallReqYQVO.getTaskid().trim() + "-" + phoneCallReqYQVO.getPhone().trim(), script.getId().toString(), 120, TimeUnit.MINUTES);
@@ -904,7 +975,7 @@
double score = redisCache.getCacheObject(phoneCallReqYQVO.getUuid() + "SCORE");
score = BigDecimal.valueOf(score).add(script.getScore()).doubleValue();
- redisCache.setCacheObject(phoneCallReqYQVO.getUuid() + "SCORE", score,120, TimeUnit.MINUTES);
+ redisCache.setCacheObject(phoneCallReqYQVO.getUuid() + "SCORE", score, 120, TimeUnit.MINUTES);
}
}
}
@@ -926,7 +997,7 @@
serviceSubtaskDetailList.add(getServiceSubtaskDetail(phoneCallReqYQVO, ivrTaskTemplateScriptVO, serviceSubtask, ivrTaskTemplate));
serviceSubTaskDetailReq.setServiceSubtaskDetailList(serviceSubtaskDetailList);
saveQuestionAnswerPhone(serviceSubTaskDetailReq);
-// String xh = idSort.split("-")[1];
+ // String xh = idSort.split("-")[1];
//濡傛灉閫夐」鍒嗘敮涓�1鐨勮瘽锛屽垯闇�瑕佹牴鎹棶棰樹笂鐨刵extScriptno杩涜璺宠浆
//闂瓟棰樻病鏈夎烦杞�
@@ -936,23 +1007,23 @@
phoneCallBackYQVO.setType("text");
phoneCallBackYQVO.setSilent_interval(ivrTaskTemplate.getSilencetime().intValue());
String scriptContent = ivrTaskTemplateScript1.getScriptContent();
- phoneCallBackYQVO.setValue(getObject(serviceSubtask, scriptContent));
+ phoneCallBackYQVO.setValue(phoneCallBackYQVO.getCommonValue() + getObject(serviceSubtask, scriptContent));
redisCache.deleteObject(phoneCallReqYQVO.getTaskid().trim() + "&&" + "mate" + "&&" + phoneCallReqYQVO.getUuid());
redisCache.setCacheObject(serviceSubtask.getId() + "-" + serviceSubtask.getPhone(), ivrTaskTemplateScript1.getId().toString());
//鏇存柊涓�涓嬪垎鏁�
double score = redisCache.getCacheObject(phoneCallReqYQVO.getUuid() + "SCORE");
score = BigDecimal.valueOf(score).add(ivrTaskTemplateScriptVO.getScore()).doubleValue();
- redisCache.setCacheObject(phoneCallReqYQVO.getUuid() + "SCORE", score,120, TimeUnit.MINUTES);
+ redisCache.setCacheObject(phoneCallReqYQVO.getUuid() + "SCORE", score, 120, TimeUnit.MINUTES);
-// return phoneCallBackYQVO;
}
}
} else if (ivrTaskTemplateScriptVO.getNextScriptno() == null || ivrTaskTemplateScriptVO.getNextScriptno() == 0) {
//娌℃湁涓嬩竴棰樹簡锛屽氨缁撴潫浜�
+ ServiceTask serviceTask1 = serviceTaskService.selectServiceTaskByTaskid(serviceSubtask.getTaskid());
phoneCallBackYQVO.setType("text");
phoneCallBackYQVO.setSilent_interval(ivrTaskTemplate.getSilencetime().intValue());
- phoneCallBackYQVO.setValue(ivrTaskTemplate.getRevisitAfter());
+ phoneCallBackYQVO.setValue(phoneCallBackYQVO.getCommonValue() + serviceTask1.getJsy());
//鏇存柊涓�涓嬪垎鏁�
double score = redisCache.getCacheObject(phoneCallReqYQVO.getUuid() + "SCORE");
@@ -965,42 +1036,13 @@
Map<String, String> map = delRedisValue(null, id.toString());
redisCache.setCacheObject(map.get("cacheName"), map.get("val"));
//鍦╮edis涓繚瀛樹竴涓嬬粨鏉熻锛屽湪璋冪敤鎸傜數璇濈殑鏂规硶鏃跺垹闄�
- redisCache.setCacheObject(phoneCallReqYQVO.getUuid() + "- jsy", ivrTaskTemplate.getRevisitAfter(), 120, TimeUnit.MINUTES);
+ redisCache.setCacheObject(phoneCallReqYQVO.getUuid() + "- jsy", serviceTask1.getJsy(), 120, TimeUnit.MINUTES);
redisCache.deleteObject(serviceSubtask.getId() + "-" + serviceSubtask.getPhone());
redisCache.deleteObject(phoneCallReqYQVO.getUuid() + "SCORE");
}
-
- //閫夐」鍖归厤瀹屾垚鍚庯紝闇�瑕佸啀鍘婚�氳繃搴撳啀杩涜鍖归厤涓�娆�
- String extemplateID = ivrTaskTemplate.getSubmoduleID();
- if (StringUtils.isNotEmpty(extemplateID)) {
- String[] split = extemplateID.split(",");
- List<String> list = Arrays.asList(split);
- List<Long> list1 = new ArrayList<>();
- for (String str : list) {
- list1.add(Long.valueOf(str));
- }
- List<IvrLibaExtemplatescript> ivrLibaExtemplatescripts = ivrLibaExtemplatescriptMapper.queryIvrLibaExtemplatescriptList(list1);
- for (IvrLibaExtemplatescript ivrLibaExtemplatescript : ivrLibaExtemplatescripts) {
- Matcher matcher = null;
- if (StringUtils.isNotEmpty(ivrLibaExtemplatescript.getSelfRegex())) {
- Pattern pattern = Pattern.compile(ivrLibaExtemplatescript.getSelfRegex());
- matcher = pattern.matcher(phoneCallReqYQVO.getAsrtext());
- }
-
- Matcher matcher2 = null;
- if (StringUtils.isNotEmpty(ivrLibaExtemplatescript.getSelfRegex2())) {
- Pattern pattern2 = Pattern.compile(ivrLibaExtemplatescript.getSelfRegex2());
- matcher2 = pattern2.matcher(phoneCallReqYQVO.getAsrtext());
- }
- if (StringUtils.isNotEmpty(ivrLibaExtemplatescript.getSelfRegex()) && matcher.matches() && StringUtils.isNotEmpty(ivrLibaExtemplatescript.getSelfRegex2()) && matcher2.matches() || StringUtils.isEmpty(ivrLibaExtemplatescript.getSelfRegex()) && StringUtils.isNotEmpty(ivrLibaExtemplatescript.getSelfRegex2()) && matcher2.matches() || StringUtils.isEmpty(ivrLibaExtemplatescript.getSelfRegex2()) && StringUtils.isNotEmpty(ivrLibaExtemplatescript.getSelfRegex()) && matcher.matches()) {
- //灏嗛�氱敤搴撳尮閰嶇殑锛屾斁鍒拌繑鍥炲�间腑
- phoneCallBackYQVO.setValue(phoneCallBackYQVO.getValue() + ivrLibaExtemplatescript.getSwitchText());
- }
- break;
- }
- }
}
}
+ log.error("phoneCallBackYQVO鐨勮繑鍥炲�兼槸锛歿}", phoneCallBackYQVO);
return phoneCallBackYQVO;
}
@@ -1129,7 +1171,9 @@
String subId = split[i].trim().replace(",", "");
ServiceSubtask serviceSubtask = serviceSubtaskMapper.selectServiceSubtaskById(Long.valueOf(subId));
+ ServiceTask serviceTask = serviceTaskService.selectServiceTaskByTaskid(serviceSubtask.getTaskid());
IvrTaskTemplate ivrTaskTemplate = ivrTaskTemplateService.selectIvrTaskTemplateByID(serviceSubtask.getTemplateid());
+ if (ObjectUtils.isEmpty(ivrTaskTemplate)) continue;
//閫氳繃浠诲姟妯℃澘涓殑"绗竴娆¢棶棰樼紪鍙�"鑾峰彇绗竴涓棶棰�;
IvrTaskTemplateScript ivrTaskTemplateScript = null;
IvrTaskTemplateScript ivrTaskTemplateScript1 = new IvrTaskTemplateScript();
@@ -1145,9 +1189,9 @@
//濡傛灉ivrTaskTemplateScript涓虹┖锛屼篃灏辨病鏈夊線涓嬫墽琛岀殑蹇呰浜�
if (ObjectUtils.isEmpty(ivrTaskTemplateScript)) return null;
//鑾峰彇閫氶厤绗﹀尮閰嶈繃鍚庣殑闂
-// String scrContent = getObject(serviceSubtask, ivrTaskTemplateScript.getScriptContent());
-// String kcb = ivrTaskTemplate.getRevisitBefore() + "," + scrContent;
- String kcb = ivrTaskTemplate.getRevisitBefore();
+ String scrContent = getObject(serviceSubtask, ivrTaskTemplateScript.getScriptContent());
+ String kcb = serviceTask.getKcb() + "," + scrContent;
+// String kcb = ivrTaskTemplate.getRevisitBefore();
//灏佽杩斿洖鏁版嵁
//taskId = 瀛愪换鍔D + 闂ID +闂搴忓彿
@@ -1159,7 +1203,7 @@
pullTaskVO.setDisplayNo("85129866");
pullTaskVOList.add(pullTaskVO);
redisCache.setCacheObject(subId.trim() + "-" + serviceSubtask.getPhone().trim(), ivrTaskTemplateScript.getId().toString());
- redisCache.setCacheObject(subId.trim() + "-" + serviceSubtask.getPhone().trim() + "-firstSort", 1, 120, TimeUnit.MINUTES);
+// redisCache.setCacheObject(subId.trim() + "-" + serviceSubtask.getPhone().trim() + "-firstSort", 1, 120, TimeUnit.MINUTES);
} else {
if (StringUtils.isEmpty(newValue0)) {
newValue0 = "," + split[i].trim() + ",";
--
Gitblit v1.9.3