| | |
| | | if (key.contains("-WJscriptCache")) { |
| | | List<SvyTaskTemplateScriptVO> cacheList = redisCache.getCacheList(key); |
| | | cacheList.sort(Comparator.comparingLong(SvyTaskTemplateScriptVO::getSort)); |
| | | log.info("问卷回答结果:{}", cacheList); |
| | | log.info("问卷回答结果:{}", CollectionUtils.isEmpty(cacheList) ? null : cacheList.size()); |
| | | for (int i = 0; i < cacheList.size(); i++) { |
| | | if (i == 0) { |
| | | //这个时间要找到第一题 |
| | |
| | | } else { |
| | | SvyTaskTemplateScriptVO svyTaskTemplateScriptVO = cacheList.get(i); |
| | | log.info("svyTaskTemplateScriptVO的信息为:{},i的值为:{}", svyTaskTemplateScriptVO.getScriptno(), i); |
| | | // SvyTaskTemplateScriptVO svyTaskTemplateScriptVO = DtoConversionUtils.sourceToTarget(cacheList.get(i), SvyTaskTemplateScriptVO.class); |
| | | List<SvyTaskTemplateTargetoption> svyTaskTemplateTargetoptions = cacheList.get(i).getSvyTaskTemplateTargetoptions(); |
| | | // List<SvyTaskTemplateTargetoption> svyTaskTemplateTargetoptions = DtoConversionUtils.sourceToTarget(cacheList.get(i).getSvyTaskTemplateTargetoptions(), SvyTaskTemplateTargetoption.class); |
| | | svyTaskTemplateScriptVO.setSvyTaskTemplateTargetoptions(svyTaskTemplateTargetoptions); |
| | | |
| | | 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]), Objects.isNull(split[2]) ? null : Long.valueOf(split[2])); |
| | | log.error("nextScriptNo的信息为:{}", map.get("nextScriptNo")); |
| | | if (!Objects.isNull(map.get("nextScriptNo"))) |
| | |
| | | } else if (key.contains("-SFscriptCache")) { |
| | | List<IvrTaskTemplateScriptVO> cacheList = redisCache.getCacheList(key); |
| | | cacheList.sort(Comparator.comparingLong(IvrTaskTemplateScriptVO::getSort)); |
| | | log.error("电话随访问卷回答结果:{}", cacheList.size()); |
| | | log.error("电话随访问卷回答结果:{}", CollectionUtils.isEmpty(cacheList) ? null : cacheList.size()); |
| | | for (int i = 0; i < cacheList.size(); i++) { |
| | | if (i == 0) { |
| | | //这个时间要找到第一题 |
| | | for (IvrTaskTemplateScriptVO ivrTaskTemplateScriptVO : cacheList) { |
| | | if (ivrTaskTemplateScriptVO.getSort() == 1L) { |
| | | //说明是第一题 |
| | | // IvrTaskTemplateScriptVO ivrTaskTemplateScriptVO = DtoConversionUtils.sourceToTarget(cacheList.get(0), IvrTaskTemplateScriptVO.class); |
| | | List<IvrTaskTemplateTargetoption> ivrTaskTemplateTargetoptions = cacheList.get(0).getIvrTaskScriptTargetoptionList(); |
| | | // List<IvrTaskTemplateTargetoption> ivrTaskTemplateTargetoptions = DtoConversionUtils.sourceToTarget(ivrLibaTemplateTargetoptions, IvrTaskTemplateTargetoption.class); |
| | | ivrTaskTemplateScriptVO.setIvrTaskScriptTargetoptionList(ivrTaskTemplateTargetoptions); |
| | | Map<String, String> map = setSFInfo(ivrTaskTemplateScriptVO, tid, pid, subid); |
| | | if (!Objects.isNull(map.get("nextScriptNo"))) |
| | |
| | | if (serviceSubTaskCacheReq.getType() == 2) { |
| | | List<SvyTaskTemplateScriptVO> cacheList = serviceSubTaskCacheReq.getSvyTaskTemplateScriptVOS(); |
| | | cacheList.sort(Comparator.comparingLong(SvyTaskTemplateScriptVO::getSort)); |
| | | log.info("问卷回答结果:{}", cacheList); |
| | | log.info("问卷回答结果:{}", CollectionUtils.isEmpty(cacheList) ? null : cacheList.size()); |
| | | // 预查询循环中不变的数据,避免每题重复查数据库 |
| | | ServiceSubtaskEntity preSubtaskVO = new ServiceSubtaskEntity(); |
| | | preSubtaskVO.setTaskid(tid); |
| | |
| | | } else if (serviceSubTaskCacheReq.getType() == 1) { |
| | | List<IvrTaskTemplateScriptVO> cacheList = serviceSubTaskCacheReq.getIvrTaskTemplateScriptVOList(); |
| | | cacheList.sort(Comparator.comparingLong(vo -> Optional.ofNullable(vo.getSort()).orElse(0))); |
| | | log.error("电话随访问卷回答结果:{}", cacheList.size()); |
| | | log.error("电话随访问卷回答结果:{}", CollectionUtils.isEmpty(cacheList) ? null : cacheList.size()); |
| | | for (int i = 0; i < cacheList.size(); i++) { |
| | | if (i == 0) { |
| | | //这个时间要找到第一题 |
| | |
| | | return true; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 将问题保存到缓存中 |
| | | * |
| | |
| | | map.put("templateName", serviceSubtask.getTemplatename()); |
| | | 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(),serviceSubTaskQueryReq.getSubId()); |
| | | Map<String, Object> scriptInfoByCondition2 = serviceTaskService.getScriptInfoByCondition(serviceSubTaskQueryReq.getTaskid(), serviceSubTaskQueryReq.getPatid(), serviceSubTaskQueryReq.getIsFinish(), serviceSubTaskQueryReq.getPatfrom(), serviceSubTaskQueryReq.getSubId()); |
| | | Map<String, Object> map1 = getMap(scriptInfoByCondition2, Long.valueOf(serviceSubtask.getUpid()), serviceSubTaskQueryReq.getPatid()); |
| | | if (!map1.isEmpty()) { |
| | | map.put("upScriptResult", map1.get("scriptResult")); |
| | |
| | | return map; |
| | | } |
| | | |
| | | private Map<String, String> setWJInfo(SvyTaskTemplateScriptVO svyTaskTemplateScriptVO, Long taskid, Long patid, Long subid, |
| | | List<ServiceSubtask> selectServiceSubtaskList, ServiceTask serviceTask, |
| | | Map<Long, Long> existingDetailIdMap, Map<Long, Long> existingTraceIdMap) { |
| | | private Map<String, String> setWJInfo(SvyTaskTemplateScriptVO svyTaskTemplateScriptVO, Long taskid, Long patid, Long subid, List<ServiceSubtask> selectServiceSubtaskList, ServiceTask serviceTask, Map<Long, Long> existingDetailIdMap, Map<Long, Long> existingTraceIdMap) { |
| | | log.error("-----svyTaskTemplateScriptVO的值为:{}", svyTaskTemplateScriptVO); |
| | | String score = "0"; |
| | | //下题跳转 |
| | |
| | | serviceSubtaskDetailVO.setAsrtext(StringUtils.isEmpty(svyTaskTemplateScriptVO.getScriptResult()) ? "" : svyTaskTemplateScriptVO.getScriptResult().replaceAll("^\"|\"$", "")); |
| | | serviceSubtaskDetailVO.setMatchedtext(StringUtils.isEmpty(svyTaskTemplateScriptVO.getScriptResult()) ? "" : svyTaskTemplateScriptVO.getScriptResult().replaceAll("^\"|\"$", "")); |
| | | serviceSubtaskDetailVO.setScore(svyTaskTemplateScriptVO.getScore() != null ? svyTaskTemplateScriptVO.getScore().toString() : "0"); |
| | | serviceSubtaskDetailVO.setAnswerps(svyTaskTemplateScriptVO.getAnswerps()); |
| | | } else { |
| | | //非单多选 |
| | | if (StringUtils.isNotEmpty(svyTaskTemplateScriptVO.getScriptResult())) { |