| | |
| | | import com.ruoyi.quartz.service.ICollectHISService; |
| | | import com.smartor.domain.*; |
| | | import com.smartor.mapper.*; |
| | | import com.smartor.service.IPatMedOuthospService; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.apache.commons.collections4.CollectionUtils; |
| | | import org.apache.commons.lang3.ArrayUtils; |
| | |
| | | private SysUser2Mapper sysUser2Mapper; |
| | | |
| | | @Autowired |
| | | private SysUserRole2Mapper sysUserRoleMapper; |
| | | private IPatMedOuthospService patMedOuthospService; |
| | | |
| | | @Autowired |
| | | private SysDept2Mapper sysDept2Mapper; |
| | |
| | | |
| | | @Value("${spring.profiles.active}") |
| | | private String active; |
| | | @Autowired |
| | | private PatMedOperationMapper patMedOperationMapper; |
| | | |
| | | @Autowired |
| | | private PatMedOperationItemMapper patMedOperationItemMapper; |
| | | |
| | | @Override |
| | | public List<PatArchive> selectPatArchiveList(PatArchive patArchive) { |
| | |
| | | //同步住院病人信息 |
| | | List<Map<String, Object>> syncTemp = syncList.stream().filter(row -> row.get("syncName").equals("pat_med_inhosp")).collect(Collectors.toList()); |
| | | if (syncTemp.size() > 0) { |
| | | log.info("startTime:" + syncTemp.get(0).get("startTime") + ", endTime: ", endTime); |
| | | count += syncMedInhosp(syncTemp.get(0).get("startTime") + "", endTime); |
| | | utilsMapper.updateSql("update sys_sync_time set startTime='" + endTime + "' where syncName='pat_med_inhosp' "); |
| | | } |
| | |
| | | utilsMapper.updateSql("update sys_sync_time set startTime='" + endTime + "' where syncName='pat_med_outhosp' "); |
| | | } |
| | | |
| | | //同步手术信息 |
| | | syncTemp = syncList.stream().filter(row -> row.get("syncName").equals("pat_med_operation")).collect(Collectors.toList()); |
| | | if (syncTemp.size() > 0) { |
| | | count += syncOper(syncTemp.get(0).get("startTime") + "", endTime); |
| | | utilsMapper.updateSql("update sys_sync_time set startTime='" + endTime + "' where syncName='pat_med_operation' "); |
| | | } |
| | | |
| | | } else { |
| | | log.info("同步任务时间sys_sync_time表中没有需要同步的任务"); |
| | |
| | | * @param |
| | | * @return |
| | | */ |
| | | private Integer syncMedInhosp(String startTime, String endTime) { |
| | | @Override |
| | | public Integer syncMedInhosp(String startTime, String endTime) { |
| | | Integer count = 0; |
| | | PatMedInhosp patMedInhosp = new PatMedInhosp(); |
| | | patMedInhosp.setLastStartTime(startTime); |
| | |
| | | patMedOuthosp1.setCampusid(patMedOuthosp1.getOrgid()); |
| | | patMedOuthosp1.setOrgid("1"); |
| | | } |
| | | count += patMedOuthospMapper.updatePatMedOuthosp(patMedOuthosp1); |
| | | count += patMedOuthospService.updatePatMedOuthosp(patMedOuthosp1); |
| | | } else { |
| | | patMedOuthosp1.setCreateTime(new Date()); |
| | | //市一 院区id对应orgid,机构id为默认的1 |
| | |
| | | patMedOuthosp1.setCampusid(patMedOuthosp1.getOrgid()); |
| | | patMedOuthosp1.setOrgid("1"); |
| | | } |
| | | count += patMedOuthospMapper.insertPatMedOuthosp(patMedOuthosp1); |
| | | count += patMedOuthospService.insertPatMedOuthosp(patMedOuthosp1); |
| | | } |
| | | } catch (Exception ex) { |
| | | log.info("同步出入院:" + ex.getMessage()); |
| | |
| | | return count; |
| | | } |
| | | |
| | | /** |
| | | * 同步手术信息 |
| | | * |
| | | * @param |
| | | * @return |
| | | */ |
| | | @Override |
| | | public Integer syncOper(String startTime, String endTime) { |
| | | Integer count = 0; |
| | | PatMedOperation patMedOperation = new PatMedOperation(); |
| | | patMedOperation.setLastStartTime(startTime); |
| | | patMedOperation.setLastEndTime(endTime); |
| | | List<PatMedOperation> patMedOperations = chMapper.selectOperList(patMedOperation); |
| | | log.info("同步手术信息数量" + patMedOperations.size()); |
| | | for (PatMedOperation operation : patMedOperations) { |
| | | try { |
| | | PatMedOperation oper = new PatMedOperation(); |
| | | oper.setOpid(operation.getOpid()); |
| | | List<PatMedOperation> patMedOperations1 = patMedOperationMapper.selectPatMedOperationList(oper); |
| | | if (CollectionUtils.isNotEmpty(patMedOperations1)) { |
| | | operation.setId(patMedOperations1.get(0).getId()); |
| | | operation.setUpdateTime(new Date()); |
| | | count += patMedOperationMapper.updatePatMedOperation(patMedOperations1.get(0)); |
| | | syncOperItem(operation); |
| | | } else { |
| | | operation.setCreateTime(new Date()); |
| | | count += patMedOperationMapper.insertPatMedOperation(operation); |
| | | syncOperItem(operation); |
| | | } |
| | | } catch (Exception ex) { |
| | | log.info("同步手术信息:" + ex.getMessage()); |
| | | } |
| | | } |
| | | return count; |
| | | } |
| | | |
| | | /** |
| | | * 同步手术信息 |
| | | * |
| | | * @param |
| | | * @return |
| | | */ |
| | | private Integer syncOperItem(PatMedOperation operation) { |
| | | Integer count = 0; |
| | | PatMedOperationItem patMedOperationItem = new PatMedOperationItem(); |
| | | patMedOperationItem.setOrgid(operation.getOrgid()); |
| | | if(StringUtils.isNotEmpty(operation.getOpid())){ |
| | | patMedOperationItem.setOpid(Long.valueOf(operation.getOpid())); |
| | | List<PatMedOperationItem> patMedOperationItems = chMapper.selectOperItemList(patMedOperationItem); |
| | | log.info("同步手术详情信息数量" + patMedOperationItems.size()); |
| | | for (PatMedOperationItem operationItem : patMedOperationItems) { |
| | | try { |
| | | PatMedOperationItem operItem = new PatMedOperationItem(); |
| | | operItem.setOpid(operationItem.getOpid()); |
| | | operItem.setOperationid(operationItem.getOperationid()); |
| | | List<PatMedOperationItem> patMedOperationItems1 = patMedOperationItemMapper.selectPatMedOperationItemList(operItem); |
| | | if (CollectionUtils.isNotEmpty(patMedOperationItems1)) { |
| | | operationItem.setId(patMedOperationItems1.get(0).getId()); |
| | | operationItem.setUpdateTime(new Date()); |
| | | count += patMedOperationItemMapper.updatePatMedOperationItem(operationItem); |
| | | } else { |
| | | operation.setCreateTime(new Date()); |
| | | count += patMedOperationItemMapper.insertPatMedOperationItem(operationItem); |
| | | } |
| | | } catch (Exception ex) { |
| | | log.info("同步手术详情信息:" + ex.getMessage()); |
| | | } |
| | | } |
| | | } |
| | | return count; |
| | | } |
| | | @Override |
| | | public Integer selectPatMedInhospList(PatMedInhosp patMedInhosp) { |
| | | List<PatMedInhosp> patMedInhospList = chMapper.selectPatMedInhospList(patMedInhosp); |
| | |
| | | patArchiveMapper.insertPatArchiveSingle(patArchives.get(0)); |
| | | patMedOuthosp1.setPatid(patArchives.get(0).getId()); |
| | | } |
| | | i = patMedOuthospMapper.insertPatMedOuthosp(patMedOuthosp1); |
| | | i = patMedOuthospService.insertPatMedOuthosp(patMedOuthosp1); |
| | | } |
| | | |
| | | return i; |