liusheng
2024-09-04 9526971c403417c1c007804f24884c443b9e6cd7
smartor/src/main/java/com/smartor/service/impl/ServiceTaskServiceImpl.java
@@ -40,6 +40,9 @@
    private SvyLibTemplateScriptMapper svyLibTemplateScriptMapper;
    @Autowired
    private SvyTaskTemplateMapper svyTaskTemplateMapper;
    @Autowired
    private PatArchiveMapper patArchiveMapper;
    @Autowired
@@ -87,6 +90,7 @@
    @Override
    public int insertServiceTask(ServiceTask serviceTask) {
        serviceTask.setCreateTime(DateUtils.getNowDate());
        serviceTask.setUpdateTime(DateUtils.getNowDate());
        return serviceTaskMapper.insertServiceTask(serviceTask);
    }
@@ -135,7 +139,7 @@
    }
    @Override
    public List getScriptInfoByCondition(Long taskid, Long patid) {
    public Map<String, Object> getScriptInfoByCondition(Long taskid, Long patid) {
        //通过任务ID获取模板ID
        ServiceTask serviceTask = selectServiceTaskByTaskid(taskid);
        List info = new ArrayList();
@@ -147,7 +151,7 @@
            info = wjInfo(serviceTask, patid);
        } else {
            //宣教
            info = xjInfo(serviceTask.getTemplateid());
            info = xjInfo(Long.valueOf(serviceTask.getLibtemplateid()));
        }
        //只要打开了页面,就算成功
@@ -157,8 +161,14 @@
        ServiceTaskSingle.setResult("success");
        ServiceTaskSingle.setFinishtime(new Date());
        serviceSubtaskMapper.updateServiceSubtaskByCondition(ServiceTaskSingle);
        SvyTaskTemplate svyTaskTemplate = svyTaskTemplateMapper.selectSvyTaskTemplateBySvyid(serviceTask.getTemplateid());
        Map<String, Object> map = new HashMap<>();
        map.put("script", info);
        map.put("revisitAfter", svyTaskTemplate.getConclusion());
        map.put("type", serviceTask.getType());
        map.put("taskName",serviceTask.getTaskName());
        return info;
        return map;
    }
    /**
@@ -171,7 +181,7 @@
    public List sfInfo(ServiceTask serviceTask, Long patid) {
        //通过模板ID获取问题信息
        IvrLibaTemplateScript ivrLibaTemplateScript = new IvrLibaTemplateScript();
        ivrLibaTemplateScript.setTemplateID(serviceTask.getTemplateid());
        ivrLibaTemplateScript.setTemplateid(Long.valueOf(serviceTask.getLibtemplateid()));
        ivrLibaTemplateScript.setDelFlag("0");
        List<IvrLibaTemplateScript> ivrLibaTemplateScripts = ivrLibaTemplateScriptMapper.selectIvrLibaTemplateScriptList(ivrLibaTemplateScript);
        if (CollectionUtils.isEmpty(ivrLibaTemplateScripts) || ivrLibaTemplateScripts.size() == 0) {
@@ -199,21 +209,21 @@
        //将模板问题话术里的通配符替换
        for (IvrLibaTemplateScriptVO ivrLibaTemplateScriptVO : ivrLibaTemplateScriptVOS) {
            if (StringUtils.isNotEmpty(ivrLibaTemplateScriptVO.getQuestionText())) {
            if (StringUtils.isNotEmpty(ivrLibaTemplateScriptVO.getScriptContent())) {
                for (Map<String, String> map : mapList) {
                    for (String key : map.keySet()) {
                        ivrLibaTemplateScriptVO.setQuestionText(ivrLibaTemplateScriptVO.getQuestionText().replace(key, StringUtils.isNotEmpty(map.get(key)) ? map.get(key) : ""));
                        ivrLibaTemplateScriptVO.setScriptContent(ivrLibaTemplateScriptVO.getScriptContent().replace(key, StringUtils.isNotEmpty(map.get(key)) ? map.get(key) : ""));
                    }
                }
                //替换患者个人信息数据
                ivrLibaTemplateScriptVO.setQuestionText(ivrLibaTemplateScriptVO.getQuestionText().replace("${name}", StringUtils.isNotEmpty(patArchive.getName()) ? patArchive.getName() : ""));
                ivrLibaTemplateScriptVO.setQuestionText(ivrLibaTemplateScriptVO.getQuestionText().replace("${dzz}", StringUtils.isNotEmpty(patArchive.getPlaceOfResidence()) ? patArchive.getPlaceOfResidence() : ""));
                ivrLibaTemplateScriptVO.setQuestionText(ivrLibaTemplateScriptVO.getQuestionText().replace("${dhh}", StringUtils.isNotEmpty(patArchive.getTelcode()) ? patArchive.getTelcode() : ""));
                ivrLibaTemplateScriptVO.setScriptContent(ivrLibaTemplateScriptVO.getScriptContent().replace("${name}", StringUtils.isNotEmpty(patArchive.getName()) ? patArchive.getName() : ""));
                ivrLibaTemplateScriptVO.setScriptContent(ivrLibaTemplateScriptVO.getScriptContent().replace("${dzz}", StringUtils.isNotEmpty(patArchive.getPlaceOfResidence()) ? patArchive.getPlaceOfResidence() : ""));
                ivrLibaTemplateScriptVO.setScriptContent(ivrLibaTemplateScriptVO.getScriptContent().replace("${dhh}", StringUtils.isNotEmpty(patArchive.getTelcode()) ? patArchive.getTelcode() : ""));
                //获取问题选项
                IvrLibaTemplateTargetoption ivrLibaTemplateTargetoption = new IvrLibaTemplateTargetoption();
                ivrLibaTemplateTargetoption.setScriptid(ivrLibaTemplateScriptVO.getID());
                ivrLibaTemplateTargetoption.setScriptid(ivrLibaTemplateScriptVO.getId());
                List<IvrLibaTemplateTargetoption> ivrLibaTemplateTargetoptions = ivrLibaTemplateTargetOptionMapper.selectIvrLibaTemplateTargetoptionList(ivrLibaTemplateTargetoption);
                ivrLibaTemplateScriptVO.setIvrLibaScriptTargetoptionList(ivrLibaTemplateTargetoptions);
            }
@@ -231,7 +241,7 @@
    private List wjInfo(ServiceTask serviceTask, Long patid) {
        //通过模板ID获取问题信息
        SvyLibTemplateScript svyLibTemplateScript = new SvyLibTemplateScript();
        svyLibTemplateScript.setSvyid(Long.valueOf(serviceTask.getTemplateid()));
        svyLibTemplateScript.setSvyid(Long.valueOf(serviceTask.getLibtemplateid()));
        svyLibTemplateScript.setDelFlag("0");
        List<SvyLibTemplateScript> svyLibTemplateScripts = svyLibTemplateScriptMapper.selectSvyLibTemplateScriptList(svyLibTemplateScript);
        if (CollectionUtils.isEmpty(svyLibTemplateScripts) || svyLibTemplateScripts.size() == 0) {