From bd6c66c1a161e9f0fe94b94bed7935b2bde541f2 Mon Sep 17 00:00:00 2001 From: liusheng <337615773@qq.com> Date: 星期三, 14 五月 2025 18:14:32 +0800 Subject: [PATCH] 代码提交 --- smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java | 58 +++++++++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 47 insertions(+), 11 deletions(-) diff --git a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java index 445cf2a..bf54388 100644 --- a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java +++ b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java @@ -151,8 +151,18 @@ } Long nextScriptno = null; + aa: for (String key : allKeys) { String[] split = key.split("-"); + //鍏堝垽鏂紝鏄笉鏄綋鍓嶆彁浜や汉鐨勶紝涓嶆槸褰撳墠鎻愪氦浜虹殑锛岃烦杩� + try { + if (ObjectUtils.isNotEmpty(split[0]) && ObjectUtils.isNotEmpty(split[1]) && !Long.valueOf(split[0]).equals(pid) && !Long.valueOf(split[1]).equals(tid)) { + continue; + } + } catch (Exception e) { + //杩欓噷涔嬫墍浠ヨ澶勭悊寮傚父锛屾槸鍥犱负鏈夌殑KEY灏变笉鏄垜浠鐨凨EY,娌℃湁鍘绘埅鍙栵紱鏈夊紓甯镐笉澶勭悊锛岀洿鎺ヤ笅涓�涓� + continue; + } if (key.contains("-WJscriptCache")) { List<SvyLibTemplateScriptVO> cacheList = redisCache.getCacheList(key); cacheList.sort(Comparator.comparingLong(SvyLibTemplateScriptVO::getSort)); @@ -168,6 +178,7 @@ List<SvyTaskTemplateTargetoption> svyTaskTemplateTargetoptions = DtoConversionUtils.sourceToTarget(svyLibTemplateTargetoptions, SvyTaskTemplateTargetoption.class); svyTaskTemplateScriptVO.setSvyTaskTemplateTargetoptions(svyTaskTemplateTargetoptions); Map<String, String> map = setWJInfo(svyTaskTemplateScriptVO, tid, pid); + if (map == null) continue aa; nextScriptno = Long.valueOf(map.get("nextScriptNo")); if (score == null) { score = Double.valueOf(map.get("score")); @@ -182,7 +193,7 @@ List<SvyTaskTemplateTargetoption> svyTaskTemplateTargetoptions = DtoConversionUtils.sourceToTarget(cacheList.get(i).getSvyLibTemplateTargetoptions(), SvyTaskTemplateTargetoption.class); svyTaskTemplateScriptVO.setSvyTaskTemplateTargetoptions(svyTaskTemplateTargetoptions); - if (svyTaskTemplateScriptVO.getSort() != null && svyTaskTemplateScriptVO.getSort() == nextScriptno) { + if (svyTaskTemplateScriptVO.getSort() != null && svyTaskTemplateScriptVO.getSort().equals(nextScriptno)) { log.error("svyTaskTemplateScriptVO鐨勫�间负锛歿}", svyTaskTemplateScriptVO); Map<String, String> map = setWJInfo(svyTaskTemplateScriptVO, Long.valueOf(split[1]), Long.valueOf(split[0])); log.error("map鐨勪俊鎭负锛歿}", map); @@ -224,7 +235,7 @@ List<IvrTaskTemplateTargetoption> ivrTaskTemplateTargetoptions = DtoConversionUtils.sourceToTarget(cacheList.get(i).getIvrLibaScriptTargetoptionList(), IvrTaskTemplateTargetoption.class); ivrTaskTemplateScriptVO.setIvrTaskScriptTargetoptionList(ivrTaskTemplateTargetoptions); - if (ivrTaskTemplateScriptVO.getSort() != null && Long.valueOf(ivrTaskTemplateScriptVO.getSort()) == nextScriptno) { + if (ivrTaskTemplateScriptVO.getSort() != null && Long.valueOf(ivrTaskTemplateScriptVO.getSort()).equals(nextScriptno)) { Map<String, String> map = setSFInfo(ivrTaskTemplateScriptVO, Long.valueOf(split[1]), Long.valueOf(split[0])); log.error("map鐨勪俊鎭负锛歿}", map); nextScriptno = Long.valueOf(map.get("nextScriptNo")); @@ -347,13 +358,35 @@ log.error("selectPatQuesTionResult鐨勫叆鍙備负锛歿}", serviceSubTaskQueryReq); Map<String, Object> map = new HashMap<>(); + //鑾峰彇鏈鐨勯棶绛旂粨鏋� Map<String, Object> scriptInfoByCondition = serviceTaskService.getScriptInfoByCondition(serviceSubTaskQueryReq.getTaskid(), serviceSubTaskQueryReq.getPatid(), serviceSubTaskQueryReq.getIsFinish(), serviceSubTaskQueryReq.getPatfrom()); + map = getMap(scriptInfoByCondition, serviceSubTaskQueryReq.getSubId(), serviceSubTaskQueryReq.getPatid()); + + //鑾峰彇涓婃鐨勯棶绛旂粨鏋� + ServiceSubtask serviceSubtask = serviceSubtaskMapper.selectServiceSubtaskById(serviceSubTaskQueryReq.getSubId()); + map.put("upScriptResult", null); + map.put("upTaskName", null); + if (ObjectUtils.isNotEmpty(serviceSubtask) && serviceSubtask.getUpid() != null) { + Map<String, Object> scriptInfoByCondition2 = serviceTaskService.getScriptInfoByCondition(serviceSubTaskQueryReq.getTaskid(), serviceSubTaskQueryReq.getPatid(), serviceSubTaskQueryReq.getIsFinish(), serviceSubTaskQueryReq.getPatfrom()); + Map<String, Object> map1 = getMap(scriptInfoByCondition2, Long.valueOf(serviceSubtask.getUpid()), serviceSubTaskQueryReq.getPatid()); + if (!map1.isEmpty()) { + map.put("upScriptResult", map1.get("scriptResult")); + map.put("upTaskName", map1.get("taskName")); + } + } + + return map; + } + + + private Map<String, Object> getMap(Map<String, Object> scriptInfoByCondition, Long subid, Long patid) { + Map<String, Object> map = new HashMap<>(); if (ObjectUtils.isNotEmpty(scriptInfoByCondition) && ObjectUtils.isNotEmpty(scriptInfoByCondition.get("script"))) { - log.error("-----------scriptInfoByCondition鐨勫�间负锛歿}", scriptInfoByCondition); +// log.error("-----------scriptInfoByCondition鐨勫�间负锛歿}", scriptInfoByCondition); if (scriptInfoByCondition.get("type").equals("1")) { List<IvrLibaTemplateScriptVO> ivrLibaTemplateScriptVOList = (List) scriptInfoByCondition.get("script"); for (IvrLibaTemplateScriptVO ivrLibaTemplateScriptVO : ivrLibaTemplateScriptVOList) { - Map<String, String> scriptResult = getScriptResult(serviceSubTaskQueryReq.getSubId(), serviceSubTaskQueryReq.getPatid(), ivrLibaTemplateScriptVO.getId()); + Map<String, String> scriptResult = getScriptResult(subid, patid, ivrLibaTemplateScriptVO.getId()); if (ObjectUtils.isNotEmpty(scriptResult)) { ivrLibaTemplateScriptVO.setScriptResult(scriptResult.get("asrtext")); ivrLibaTemplateScriptVO.setScriptResultId(scriptResult.get("asrtextId")); @@ -361,30 +394,28 @@ } map.put("scriptResult", ivrLibaTemplateScriptVOList); map.put("taskName", scriptInfoByCondition.get("taskName")); - return map; } else if (scriptInfoByCondition.get("type").equals("2")) { List<SvyLibTemplateScriptVO> svyLibTemplateScriptVOList = (List) scriptInfoByCondition.get("script"); for (SvyLibTemplateScriptVO svyLibTemplateScriptVO : svyLibTemplateScriptVOList) { - Map<String, String> scriptResult = getScriptResult(serviceSubTaskQueryReq.getSubId(), serviceSubTaskQueryReq.getPatid(), svyLibTemplateScriptVO.getId()); + Map<String, String> scriptResult = getScriptResult(subid, patid, svyLibTemplateScriptVO.getId()); if (ObjectUtils.isNotEmpty(scriptResult)) { if (StringUtils.isNotEmpty(scriptResult.get("asrtext"))) svyLibTemplateScriptVO.setScriptResult(StringUtils.isNotEmpty(scriptResult.get("asrtext")) ? scriptResult.get("asrtext").replaceAll("^(\"|')(.*)\\1$", "$2") : ""); svyLibTemplateScriptVO.setScriptResultId(scriptResult.get("asrtextId")); } } - map.put("scriptResult", scriptInfoByCondition); + map.put("scriptResult", svyLibTemplateScriptVOList); map.put("taskName", scriptInfoByCondition.get("taskName")); - return map; } else if (scriptInfoByCondition.get("type").equals("3")) { //瀹f暀涓嶉渶瑕佹煡鐪� List<HeLibrary> heLibraryList = (List) scriptInfoByCondition.get("script"); map.put("scriptResult", heLibraryList); map.put("taskName", scriptInfoByCondition.get("taskName")); - return map; } } return map; } + private Map<String, String> getScriptResult(Long subid, Long pid, Long sid) { Map<String, String> map = new HashMap<>(); @@ -447,7 +478,8 @@ if (svyTaskTemplateScriptVO.getScore() != null) { score = String.valueOf(svyTaskTemplateScriptVO.getScore()); } - serviceSubtaskDetailVO.setAsrtext(svyTaskTemplateScriptVO.getScriptResult()); + serviceSubtaskDetailVO.setAsrtext(svyTaskTemplateScriptVO.getScriptResult().replaceAll("^\"|\"$", "")); + serviceSubtaskDetailVO.setMatchedtext(svyTaskTemplateScriptVO.getScriptResult().replaceAll("^\"|\"$", "")); // if (StringUtils.isEmpty(serviceSubtaskDetailVO.getAsrtext())) { // nextScriptNo = svyTaskTemplateScriptVO.getNextScriptno().toString(); // } @@ -465,8 +497,10 @@ ServiceTask serviceTask = serviceTaskService.selectServiceTaskByTaskid(taskid); serviceSubtaskDetailVO.setQuestiontext(svyTaskTemplateScriptVO.getScriptContent()); serviceSubtaskDetailVO.setTaskid(Long.valueOf(taskid)); + serviceSubtaskDetailVO.setTargetid(svyTaskTemplateScriptVO.getTargetid() != null ? svyTaskTemplateScriptVO.getTargetid().intValue() : null); serviceSubtaskDetailVO.setPatid(Long.valueOf(patid)); serviceSubtaskDetailVO.setScriptid(svyTaskTemplateScriptVO.getId()); + serviceSubtaskDetailVO.setTemplatequestionnum(StringUtils.isNotEmpty(svyTaskTemplateScriptVO.getScriptno()) ? Long.valueOf(svyTaskTemplateScriptVO.getScriptno()) : null); serviceSubtaskDetailVO.setValueType(svyTaskTemplateScriptVO.getScriptType()); serviceSubtaskDetailVO.setComment(null); serviceSubtaskDetailVO.setCreateTime(new Date()); @@ -527,10 +561,12 @@ } } } + serviceSubtaskDetailVO.setTargetid(ivrTaskTemplateScriptVO.getTargetid() != null ? ivrTaskTemplateScriptVO.getTargetid().intValue() : null); serviceSubtaskDetailVO.setQuestiontext(ivrTaskTemplateScriptVO.getScriptContent()); serviceSubtaskDetailVO.setTaskid(Long.valueOf(taskid)); serviceSubtaskDetailVO.setPatid(Long.valueOf(patid)); - serviceSubtaskDetailVO.setScriptid(ivrTaskTemplateScriptVO.getId()); + serviceSubtaskDetailVO.setScriptid(ivrTaskTemplateScriptVO.getScriptID()); + serviceSubtaskDetailVO.setTemplatequestionnum(ivrTaskTemplateScriptVO.getId()); serviceSubtaskDetailVO.setValueType(ivrTaskTemplateScriptVO.getScriptType()); serviceSubtaskDetailVO.setComment(null); serviceSubtaskDetailVO.setCreateTime(new Date()); -- Gitblit v1.9.3