| | |
| | | return; |
| | | } |
| | | //封装serviceSubtask |
| | | ServiceSubtask serviceSubtask = boxedServiceSubtaskForOp(serviceTask, patMedOperation, patArchive, config); |
| | | ServiceSubtask serviceSubtask = boxedServiceSubtaskForOp(serviceTask, patMedOperation, patMedOperationItem, patArchive, config); |
| | | if (ObjectUtils.isEmpty(serviceSubtask)) { |
| | | return; |
| | | } |
| | |
| | | } |
| | | |
| | | //封装serviceSubtask |
| | | private ServiceSubtask boxedServiceSubtaskForOp(ServiceTask serviceTask, PatMedOperation patMedOperation, PatArchive patArchive, String config) { |
| | | private ServiceSubtask boxedServiceSubtaskForOp(ServiceTask serviceTask, PatMedOperation patMedOperation, PatMedOperationItem patMedOperationItem, PatArchive patArchive, String config) { |
| | | ServiceSubtask serviceSubtask = DtoConversionUtils.sourceToTarget(serviceTask, ServiceSubtask.class); |
| | | serviceSubtask.setTaskid(serviceTask.getTaskid()); |
| | | if (StringUtils.isNotEmpty(serviceTask.getLibtemplateid())) |
| | |
| | | serviceSubtask.setCreateBy(patMedOperation.getNurseName()); |
| | | // serviceSubtask.setLeavehospitaldistrictcode(patArchive.getLeavehospitaldistrictcode()); |
| | | // serviceSubtask.setLeavehospitaldistrictname(patArchive.getLeavehospitaldistrictname()); |
| | | serviceSubtask.setOperationItemId(patMedOperationItem.getId()); |
| | | serviceSubtask.setUpdateBy(serviceTask.getUpdateBy()); |
| | | serviceSubtask.setUpdateTime(new Date()); |
| | | //设置发送时间 |
| | |
| | | //不是长期任务,不处理 |
| | | continue; |
| | | } |
| | | if (serviceSubtask1.getEndtime().before(patMedInhosp1.getStarttime())) { |
| | | //如果当前循环的子任务的出院时间在“准备新增的子任务”的出院时间之前,则将循环的子任务停掉 |
| | | // log.error("患者再入院的serviceSubtask1为:{}", serviceSubtask1); |
| | | serviceSubtask1.setSendstate(4L); |
| | | serviceSubtask1.setRemark("患者再入院"); |
| | | serviceSubtask1.setResult("error"); |
| | | // serviceSubtask1.setFinishtime(new Date()); |
| | | serviceSubtaskMapper.updateServiceSubtask(serviceSubtask1); |
| | | //景宁 出院首次(7天)随访一定要做 |
| | | boolean firstVisit = false; |
| | | if (serviceSubtask1.getOrgid().equals("47255004333112711A1001") |
| | | && serviceSubtask1.getVisitCount() != null && serviceSubtask1.getVisitCount() == 1) { |
| | | firstVisit = true; |
| | | } |
| | | if (!firstVisit) { |
| | | if (serviceSubtask1.getEndtime().before(patMedInhosp1.getStarttime())) { |
| | | //如果当前循环的子任务的出院时间在“准备新增的子任务”的出院时间之前,则将循环的子任务停掉 |
| | | // log.error("患者再入院的serviceSubtask1为:{}", serviceSubtask1); |
| | | serviceSubtask1.setSendstate(4L); |
| | | serviceSubtask1.setRemark("患者再入院"); |
| | | serviceSubtask1.setResult("error"); |
| | | // serviceSubtask1.setFinishtime(new Date()); |
| | | serviceSubtaskMapper.updateServiceSubtask(serviceSubtask1); |
| | | } |
| | | } |
| | | |
| | | } |
| | | } |
| | | //将患入的入院数据设置为已处理 |