| | |
| | | serviceSubtask.setVisitDeptCode(patMedOuthosp.getDeptcode()); |
| | | serviceSubtask.setVisitDeptName(patMedOuthosp.getDeptname()); |
| | | serviceSubtask.setUpdateTime(new Date()); |
| | | serviceSubtask.setAdmindate(patMedOuthosp.getAdmitdate()); |
| | | //设置发送时间 |
| | | if (serviceTask.getSendDay() == null) serviceTask.setSendDay(1L); |
| | | Date newDate = addDays(patMedOuthosp.getAdmitdate(), serviceTask.getSendDay().intValue()); |
| | |
| | | /** |
| | | * |
| | | * @param patMedOuthosp |
| | | * @param visitTimeNum |
| | | * @return |
| | | */ |
| | | @Override |
| | | public Integer followUpAgainByPatMedOuthosp(PatMedOuthosp patMedOuthosp, Date adminDate, Integer visitTimeNum) { |
| | | int hoursToAdd = visitTimeNum * 24; |
| | | Calendar calendar = Calendar.getInstance(); |
| | | calendar.setTime(adminDate); |
| | | calendar.add(Calendar.HOUR_OF_DAY, hoursToAdd); |
| | | Date newDate = calendar.getTime(); |
| | | public Integer dealPatMedOuthosp(PatMedOuthosp patMedOuthosp, Integer visitTimeNum){ |
| | | Integer num = 0; |
| | | ServiceSubtaskEntity serviceSubtask = new ServiceSubtaskEntity(); |
| | | serviceSubtask.setInhospid(patMedOuthosp.getId()); |
| | | serviceSubtask.setServiceType("3"); |
| | | serviceSubtask.setVisitCount(1); |
| | | List<ServiceSubtask> serviceSubtasks = serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtask); |
| | | if(CollectionUtils.isEmpty(serviceSubtasks)){ |
| | | num = followUpByPatMedOuthosp(patMedOuthosp, visitTimeNum); |
| | | }else { |
| | | num = followUpAgainByPatMedOuthosp(patMedOuthosp, visitTimeNum); |
| | | } |
| | | return num; |
| | | } |
| | | |
| | | /** |
| | | * 门诊首次随访 |
| | | * @param patMedOuthosp |
| | | * @return |
| | | */ |
| | | @Override |
| | | public Integer followUpByPatMedOuthosp(PatMedOuthosp patMedOuthosp, Integer visitTimeNum) { |
| | | // if(ObjectUtils.isEmpty(patMedOuthosp.getFudate())){ |
| | | Date adminDate = patMedOuthosp.getAdmitdate(); |
| | | Date fuDate = addDays(adminDate, visitTimeNum); |
| | | patMedOuthosp.setFudate(fuDate); |
| | | // } |
| | | |
| | | PatArchive patArchive = patArchiveMapper.selectPatArchiveByPatid(patMedOuthosp.getPatid()); |
| | | |
| | | //根据患者科室,获取该疾病的长期任务 |
| | | ServiceTaskdept serviceTaskdept = new ServiceTaskdept(); |
| | | serviceTaskdept.setLongtask(1L); |
| | | serviceTaskdept.setDeptCode(patMedOuthosp.getDeptcode()); |
| | | serviceTaskdept.setServiceType("3"); |
| | | List<ServiceTaskdept> serviceTaskdeptList = serviceTaskdeptMapper.selectServiceTaskdeptList(serviceTaskdept); |
| | | if (CollectionUtils.isEmpty(serviceTaskdeptList) || serviceTaskdeptList.size() == 0) { |
| | | patMedOuthosp.setDeptcheckFlag("2"); |
| | | patMedOuthosp.setRemark("通过部门,没有找到门诊随访任务ID"); |
| | | updatePatMedOuthosp(patMedOuthosp); |
| | | } else { |
| | | for (ServiceTaskdept serviceTaskdept1 : serviceTaskdeptList) { |
| | | writeInSubTask(serviceTaskdept1.getTaskId(), true, patMedOuthosp, patArchive, 1); |
| | | } |
| | | } |
| | | |
| | | // 根据患者的疾病,获取该疾病的长期任务 |
| | | // ServiceTaskdiag serviceTaskdiag = new ServiceTaskdiag(); |
| | | // serviceTaskdiag.setLongtask(1L); |
| | | // serviceTaskdiag.setIcd10code(patMedOuthosp.getIcd10code()); |
| | | // List<ServiceTaskdiag> serviceTaskdiags = serviceTaskdiagMapper.selectServiceTaskdiagList(serviceTaskdiag); |
| | | // //如果部门模板为空(将deptIsNull设置为true) |
| | | // if (org.apache.commons.collections4.CollectionUtils.isEmpty(serviceTaskdiags) || serviceTaskdiags.size() == 0) { |
| | | // patMedOuthosp.setDiagcheckFlag("2"); |
| | | // patMedOuthosp.setRemark("通过icd10,没有找到门诊随访任务ID"); |
| | | // updatePatMedOuthosp(patMedOuthosp); |
| | | // } else { |
| | | // for (ServiceTaskdiag serviceTaskdept1 : serviceTaskdiags) { |
| | | // writeInSubTask(serviceTaskdept1.getTaskId(), true, patMedOuthosp, patArchive, 2); |
| | | // } |
| | | // } |
| | | return 1; |
| | | } |
| | | /** |
| | | * 门诊再次随访 |
| | | * @param patMedOuthosp |
| | | * @return |
| | | */ |
| | | @Override |
| | | public Integer followUpAgainByPatMedOuthosp(PatMedOuthosp patMedOuthosp, Integer visitTimeNum) { |
| | | Date adminDate = patMedOuthosp.getAdmitdate(); |
| | | Date newDate = addDays(adminDate, visitTimeNum); |
| | | |
| | | Integer i = 0; |
| | | String deptcode = patMedOuthosp.getDeptcode(); |
| | |
| | | serviceSubtask0.setFinishtime(adminDate); |
| | | serviceSubtaskMapper.updateServiceSubtask(serviceSubtask0); |
| | | |
| | | ServiceSubtask serviceSubtask1 = serviceSubtaskList0.get(0); |
| | | ServiceSubtask serviceSubtask1 = DtoConversionUtils.sourceToTarget(serviceSubtask0, ServiceSubtask.class); |
| | | serviceSubtask1.setId(null); |
| | | serviceSubtask1.setSendstate(2L); |
| | | serviceSubtask1.setUpid(serviceSubtask0.getId().intValue()); |
| | | serviceSubtask1.setVisitCount(serviceSubtask0.getVisitCount() + 1); |
| | | serviceSubtask1.setVisitType(serviceSubtask0.getVisitType()); |
| | | serviceSubtask1.setVisitDeptCode(serviceSubtask0.getVisitDeptCode()); |
| | | serviceSubtask1.setVisitDeptName(serviceSubtask0.getVisitDeptName()); |
| | | serviceSubtask1.setCreateTime(new Date()); |
| | | serviceSubtask1.setUpdateTime(new Date()); |
| | | serviceSubtask1.setFinishtime(null); |
| | | serviceSubtask1.setAdmindate(adminDate); |
| | | |
| | | serviceSubtask1.setVisitTime(newDate); |
| | | serviceSubtask1.setLongSendTime(newDate); |