liusheng
2025-02-27 e00ef99886b9ab84f39c81432f8c7640e93026f9
smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java
@@ -253,7 +253,6 @@
    }
    /**
     * 将问题保存到缓存中
     *
@@ -276,7 +275,7 @@
            if (serviceSubTaskCacheReq.getType() != null && serviceSubTaskCacheReq.getType() == 2) {
                //问卷
                redisCache.deleteObject(pid + "-" + tid + "-WJscriptCache");
                redisCache.setCacheList(pid + "-" + tid + "-WJscriptCache", serviceSubTaskCacheReq.getSvyLibTemplateScriptVOS());
                redisCache.setCacheListRight(pid + "-" + tid + "-WJscriptCache", serviceSubTaskCacheReq.getSvyLibTemplateScriptVOS());
                //设置过期时间 3天
                Long tims = Long.valueOf(3 * 24 * 3600);
                boolean expire = redisCache.expire(pid + "-" + tid + "-WJscriptCache", tims);
@@ -284,7 +283,7 @@
            } else if (serviceSubTaskCacheReq.getType() != null && serviceSubTaskCacheReq.getType() == 1) {
                //问卷
                redisCache.deleteObject(pid + "-" + tid + "-SFscriptCache");
                redisCache.setCacheList(pid + "-" + tid + "-SFscriptCache", serviceSubTaskCacheReq.getIvrLibaTemplateScriptVOList());
                redisCache.setCacheListRight(pid + "-" + tid + "-SFscriptCache", serviceSubTaskCacheReq.getIvrLibaTemplateScriptVOList());
                //设置过期时间 3天
                Long tims = Long.valueOf(3 * 24 * 3600);
                redisCache.expire(pid + "-" + tid + "-SFscriptCache", tims);
@@ -297,6 +296,7 @@
        }
        return 0;
    }
    @Override
    public Map<String, Object> getQuestionCache(ServiceSubTaskCacheReq serviceSubTaskCacheReq, Long flag) {
        Map<String, Object> map = new HashMap<>();
@@ -341,39 +341,41 @@
        Map<String, Object> map = new HashMap<>();
        Map<String, Object> scriptInfoByCondition = serviceTaskService.getScriptInfoByCondition(serviceSubTaskQueryReq.getTaskid(), serviceSubTaskQueryReq.getPatid(), serviceSubTaskQueryReq.getIsFinish(), serviceSubTaskQueryReq.getPatfrom());
        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());
                if (ObjectUtils.isNotEmpty(scriptResult)) {
                    ivrLibaTemplateScriptVO.setScriptResult(scriptResult.get("asrtext"));
                    ivrLibaTemplateScriptVO.setScriptResultId(scriptResult.get("asrtextId"));
        if (ObjectUtils.isNotEmpty(scriptInfoByCondition) && ObjectUtils.isNotEmpty(scriptInfoByCondition.get("script"))) {
            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());
                    if (ObjectUtils.isNotEmpty(scriptResult)) {
                        ivrLibaTemplateScriptVO.setScriptResult(scriptResult.get("asrtext"));
                        ivrLibaTemplateScriptVO.setScriptResultId(scriptResult.get("asrtextId"));
                    }
                }
            }
            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());
                if (ObjectUtils.isNotEmpty(scriptResult)) {
                    svyLibTemplateScriptVO.setScriptResult(scriptResult.get("asrtext"));
                    svyLibTemplateScriptVO.setScriptResultId(scriptResult.get("asrtextId"));
                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());
                    if (ObjectUtils.isNotEmpty(scriptResult)) {
                        svyLibTemplateScriptVO.setScriptResult(scriptResult.get("asrtext"));
                        svyLibTemplateScriptVO.setScriptResultId(scriptResult.get("asrtextId"));
                    }
                }
                map.put("scriptResult", scriptInfoByCondition);
                map.put("taskName", scriptInfoByCondition.get("taskName"));
                return map;
            } else if (scriptInfoByCondition.get("type").equals("3")) {
                //宣教不需要查看
                List<HeLibrary> heLibraryList = (List) scriptInfoByCondition.get("script");
                map.put("scriptResult", heLibraryList);
                map.put("taskName", scriptInfoByCondition.get("taskName"));
                return map;
            }
            map.put("scriptResult", scriptInfoByCondition);
            map.put("taskName", scriptInfoByCondition.get("taskName"));
            return map;
        } else if (scriptInfoByCondition.get("type").equals("3")) {
            //宣教不需要查看
            List<HeLibrary> heLibraryList = (List) scriptInfoByCondition.get("script");
            map.put("scriptResult", heLibraryList);
            map.put("taskName", scriptInfoByCondition.get("taskName"));
            return map;
        }
        return null;
        return map;
    }
    private Map<String, String> getScriptResult(Long subid, Long pid, Long sid) {