liusheng
2025-11-06 afb3216a7809c452e0f50555eb52aa9bc985f66b
smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java
@@ -643,6 +643,7 @@
    }
    private Map<String, String> setWJInfo(SvyTaskTemplateScriptVO svyTaskTemplateScriptVO, Long taskid, Long patid) {
        log.error("-----svyTaskTemplateScriptVO的值为:{}", svyTaskTemplateScriptVO);
        ServiceSubtaskVO serviceSubtaskVO = new ServiceSubtaskVO();
        serviceSubtaskVO.setTaskid(taskid);
        serviceSubtaskVO.setPatid(patid);
@@ -700,6 +701,7 @@
        serviceSubtaskDetailMapper.insertServiceSubtaskDetail(serviceSubtaskDetail);
        //如何这需要服务补偿的服务ID不为空的话,则进行立即发送
        log.error("------svyTaskTemplateScriptVO.getSendTaskids()的值为:{},selectServiceSubtaskList的值为:{}", svyTaskTemplateScriptVO.getSendTaskids(), selectServiceSubtaskList.size());
        if (CollectionUtils.isNotEmpty(svyTaskTemplateScriptVO.getSendTaskids()) && CollectionUtils.isNotEmpty(selectServiceSubtaskList)) {
            sendTaskIds(svyTaskTemplateScriptVO.getSendTaskids(), selectServiceSubtaskList.get(0));
        }
@@ -715,6 +717,13 @@
        for (Integer taskId : sendTaskids) {
            ServiceTask serviceTask = serviceTaskService.selectServiceTaskByTaskid(Long.valueOf(taskId));
            String content = sendMQContent(serviceTask, null);
            //先查询一下,该患者在该service_task中,是否已经存在,如果已经存在,则不用再保存了
            ServiceSubtask ss = new ServiceSubtask();
            ss.setTaskid(Long.valueOf(taskId));
            ss.setPatid(serviceSubtask.getPatid());
            List<Integer> list = serviceSubtaskMapper.selectSendstateByCondition(ss);
            if (CollectionUtils.isNotEmpty(list)) return true;
            //先修改状态
            insertServiceSubtask(serviceTask, new Date(), serviceSubtask);
            //立即发送
@@ -722,7 +731,7 @@
            serviceTask.setStopState(null);
            log.info("消息发送成功");
        }
        return null;
        return true;
    }
@@ -734,6 +743,7 @@
        serviceSubtask.setTemplatename(serviceTask.getTemplatename());
        serviceSubtask.setTemplateid(serviceTask.getTemplateid());
        serviceSubtask.setSendstate(2L);
        serviceSubtask.setCurrentPreachform(null);
        serviceSubtask.setVisitTime(date);
        serviceSubtask.setId(null);
        serviceSubtaskMapper.insertServiceSubtask(serviceSubtask);