zhs
7 小时以前 66a52b9c8b6d0668ff3d7c431e9e17f2c365e3e6
smartor/src/main/java/com/smartor/service/impl/PatMedInhospServiceImpl.java
@@ -51,8 +51,9 @@
    @Autowired
    private ServiceSubtaskPreachformMapper serviceSubtaskPreachformMapper;
    @Value("${visitHosp}")
    private Integer visitHosp;
    @Value("${spring.profiles.active}")
    private String active;
    /**
     * 查询患者住院记录
@@ -260,8 +261,7 @@
        }
        //根据患者所在病区,获取该病区的长期任务,新华医院可以先不用根据病区和疾病来做
        if (visitHosp != 1) {
        if (active.equals("xh")) {
            PatMedInhosp pmbq = new PatMedInhosp();
            //获取需要出院部门随访,未处理的数据
            pmbq.setWardcheckFlag("0");
@@ -561,6 +561,10 @@
            return;
        }
        ServiceTask serviceTask = serviceTasks.get(0);
        if (Objects.isNull(patMedInhosp1.getEndtime())) {
            return;
        }
        //封装serviceSubtask
        ServiceSubtask serviceSubtask = boxedServiceSubtask(serviceTask, patMedInhosp1, patArchive);
        if (type != 2) {
@@ -627,8 +631,22 @@
                    }
                }
            } else {
                if (StringUtils.isEmpty(serviceSubtask.getPhone())) {
                    serviceSubtask.setRemark("手机号为空");
                    serviceSubtask.setSendstate(4L);
                    serviceSubtask.setResult("error");
                }
                serviceSubtask.setCreateBy(serviceTask.getCreateBy());
                serviceSubtask.setCreateTime(new Date());
                i = serviceSubtaskMapper.insertServiceSubtask(serviceSubtask);
            }
        } else {
            if (StringUtils.isEmpty(serviceSubtask.getPhone())) {
                serviceSubtask.setRemark("手机号为空");
                serviceSubtask.setSendstate(4L);
                serviceSubtask.setResult("error");
            }
            serviceSubtask.setCreateBy(serviceTask.getCreateBy());
            serviceSubtask.setCreateTime(new Date());
            i = serviceSubtaskMapper.insertServiceSubtask(serviceSubtask);
@@ -727,7 +745,13 @@
        serviceSubtask.setUpdateTime(new Date());
        //设置发送时间
        if (serviceTask.getSendDay() == null) serviceTask.setSendDay(1L);
        Date newDate = addDays(patMedInhosp1.getEndtime(), serviceTask.getSendDay().intValue());
        Date newDate = null;
        if (!Objects.isNull(patMedInhosp1.getEndtime())) {
            newDate = addDays(patMedInhosp1.getEndtime(), serviceTask.getSendDay().intValue());
        } else {
            //如果出院时间为空,则返回一个新对象
            return new ServiceSubtask();
        }
        serviceSubtask.setLongSendTime(newDate);
        serviceSubtask.setVisitTime(newDate);
        //如果是通知的话,需要提前几天将通过短信发出去(具体几天,这个可以配置在sys_conf表中)