| | |
| | | */ |
| | | @Override |
| | | public List<PatMedInhosp> selectPatMedInhospList(PatMedInhosp patMedInhosp) { |
| | | return patMedInhospMapper.selectPatMedInhospList(patMedInhosp); |
| | | List<PatMedInhosp> patMedInhospList = patMedInhospMapper.selectPatMedInhospList(patMedInhosp); |
| | | for (PatMedInhosp patMedInhosp1 : patMedInhospList) { |
| | | String tagname = patMedInhospMapper.getTagnameBypatid(patMedInhosp1.getPatid()); |
| | | patMedInhosp1.setTagname(tagname); |
| | | } |
| | | return patMedInhospList; |
| | | } |
| | | |
| | | /** |
| | |
| | | //获取需要出院随访,未处理的数据 |
| | | patMedInhosp.setCheckFlag("0"); |
| | | patMedInhosp.setInhospstate("1"); |
| | | patMedInhosp.setFuflag("1"); |
| | | List<PatMedInhosp> patMedInhosps = patMedInhospMapper.selectPatMedInhospList(patMedInhosp); |
| | | log.error("dealOutHospInfo需要处理的出院患者信息:{}", patMedInhosps); |
| | | for (PatMedInhosp patMedInhosp1 : patMedInhosps) { |
| | | String tagname = patMedInhospMapper.getTagnameBypatid(patMedInhosp1.getPatid()); |
| | | patMedInhosp1.setTagname(tagname); |
| | | } |
| | | |
| | | for (PatMedInhosp patMedInhosp1 : patMedInhosps) { |
| | | //先根据科室去service_check查询check_visit_flag是根据“科室”随访,还是根据“第一诊断”随访 |
| | |
| | | List<ServiceCheck> serviceChecks = serviceCheckMapper.selectServiceCheckList(serviceCheck); |
| | | //获取患者信息 |
| | | PatArchive patArchive = patArchiveMapper.selectPatArchiveByPatid(patMedInhosp1.getPatid()); |
| | | if (Objects.isNull(patArchive)) { |
| | | patMedInhosp1.setCheckFlag("2"); |
| | | patMedInhosp1.setLongTaskReason("患者基本信息为空"); |
| | | patMedInhospMapper.updatePatMedInhosp(patMedInhosp1); |
| | | continue; |
| | | } |
| | | try { |
| | | if (CollectionUtils.isEmpty(serviceChecks) || serviceChecks != null && serviceChecks.get(0).getCheckVisitFlag() == 1 || serviceChecks != null && serviceChecks.get(0).getCheckVisitFlag() == 3) { |
| | | //根据患者所在科室,获取该科室的长期任务 |
| | |
| | | patMedInhosp.setCheckFlag("0"); |
| | | patMedInhosp.setInhospstate("0"); |
| | | List<PatMedInhosp> patMedInhospList = patMedInhospMapper.selectPatMedInhospList(patMedInhosp); |
| | | for (PatMedInhosp patMedInhosp1 : patMedInhosps) { |
| | | String tagname = patMedInhospMapper.getTagnameBypatid(patMedInhosp1.getPatid()); |
| | | patMedInhosp1.setTagname(tagname); |
| | | } |
| | | if (CollectionUtils.isNotEmpty(patMedInhospList) && patMedInhospList.size() > 0) { |
| | | dealInHospInfo(patMedInhospList); |
| | | } |
| | |
| | | @Override |
| | | public List<PatMedInhosp> getDocAndPat(PatMedInhosp patMedInhosp) { |
| | | List<PatMedInhosp> patMedInhospList = patMedInhospMapper.selectPatMedInhospList(patMedInhosp); |
| | | for (PatMedInhosp patMedInhosp1 : patMedInhospList) { |
| | | String tagname = patMedInhospMapper.getTagnameBypatid(patMedInhosp1.getPatid()); |
| | | patMedInhosp1.setTagname(tagname); |
| | | } |
| | | if (StringUtils.isNotEmpty(patMedInhosp.getPatname()) || StringUtils.isNotEmpty(patMedInhosp.getNurseName()) || StringUtils.isNotEmpty(patMedInhosp.getDrname())) { |
| | | //获取外部导入信息,并将外部患者放到patMedInhospList中 |
| | | PatArchiveImport patArchiveImport = new PatArchiveImport(); |
| | |
| | | serviceSubtask1.setRemark("患者再入院"); |
| | | serviceSubtask1.setResult("error"); |
| | | serviceSubtask1.setFinishtime(new Date()); |
| | | serviceSubtask1.setUpdateBy(serviceTask.getUpdateBy()); |
| | | serviceSubtask1.setUpdateTime(new Date()); |
| | | Boolean aBoolean = serviceSubtaskMapper.updateServiceSubtask(serviceSubtask1); |
| | | if (aBoolean) i = 1; |
| | | } else { |
| | |
| | | serviceSubtask.setFinishtime(new Date()); |
| | | serviceSubtask.setSendstate(4L); |
| | | serviceSubtask.setRemark("当前患者出院时间后有待执行的出院随访长期任务"); |
| | | 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.setFinishtime(new Date()); |
| | | } |
| | | 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.setFinishtime(new Date()); |
| | | |
| | | } |
| | | serviceSubtask.setCreateBy(serviceTask.getCreateBy()); |
| | | serviceSubtask.setCreateTime(new Date()); |
| | | i = serviceSubtaskMapper.insertServiceSubtask(serviceSubtask); |
| | | } |
| | | if (i == 1) { |
| | |
| | | serviceSubtask.setCreateBy(patMedInhosp1.getNurseName()); |
| | | serviceSubtask.setLeavehospitaldistrictcode(patMedInhosp1.getLeavehospitaldistrictcode()); |
| | | serviceSubtask.setLeavehospitaldistrictname(patMedInhosp1.getLeavehospitaldistrictname()); |
| | | serviceSubtask.setUpdateBy(serviceTask.getUpdateBy()); |
| | | serviceSubtask.setUpdateTime(new Date()); |
| | | //设置发送时间 |
| | | if (serviceTask.getSendDay() == null) serviceTask.setSendDay(1L); |
| | | Date newDate = addDays(patMedInhosp1.getEndtime(), serviceTask.getSendDay().intValue()); |