liusheng
2 天以前 e6456d2196b3e57bd06be0fbc74dd3e0fc28fdeb
smartor/src/main/java/com/smartor/service/impl/HNGatherPatArchiveServiceImpl.java
@@ -62,6 +62,9 @@
    @Autowired
    private PatMedInhospMapper patMedInhospMapper;
    @Autowired
    private PatArchiveMapper patArchiveMapper;
    @Override
    public List<PatArchive> selectPatArchiveList(PatArchive patArchive) {
@@ -77,6 +80,25 @@
            patMedInhosp.setPs(1000);
            patMedInhosp.setPn(1000 * i);
            List<PatMedInhosp> patMedInhospList = hnGatherPatArchiveMapper.selectPatMedInhospList(patMedInhosp);
            for (PatMedInhosp pm : patMedInhospList) {
                String patno = pm.getPatno();
                PatArchive patArchive = new PatArchive();
                //先去我们自己的表里通过patno查询该患者是否存在
                patArchive.setPatientno(patno);
                List<PatArchive> patArchives = patArchiveMapper.selectPatArchiveList(patArchive);
                if (CollectionUtils.isEmpty(patArchives)) {
                    //不存在,则通过patno去HIS表hzjbxx查询
                    List<PatArchive> patArchives1 = hnGatherPatArchiveMapper.selectPatArchiveList(patArchive);
                    //把查询出来的数据存到pat_archive表
                    PatArchive pa = patArchives1.get(0);
                    pa.setId(null);
                    patArchiveMapper.insertPatArchiveSingle(pa);
                    pm.setPatid(pa.getId());
                } else {
                    //直接将patid放到出入院表中
                    pm.setPatid(patArchives.get(0).getId());
                }
            }
            if (patMedInhospList != null && !patMedInhospList.isEmpty()) {
                patMedInhospMapper.insertPatMedInhospBatch(patMedInhospList);
            }