sinake
2025-09-29 07e3dfe61e3bbe7bc02e45e96247d4d922dca380
ruoyi-quartz/src/main/java/com/ruoyi/quartz/service/impl/CollectHISServiceImpl.java
@@ -169,6 +169,8 @@
        List<PatMedInhosp> patMedInhospList = chMapper.selectPatMedInhospList(patMedInhosp);
        log.info("可同步出入院数量" + patMedInhospList.size());
        for (PatMedInhosp pm : patMedInhospList) {
            List<PatArchive> patArchives1=new ArrayList<>();
            try {
                //患者基本信息
                if(ObjectUtils.isNotEmpty(pm.getPatno())) {
@@ -179,7 +181,7 @@
                    if (patArchives.size() > 0) {
                        PatArchive pa1 = new PatArchive();
                        pa1.setPatientno(pm.getPatno());
                        List<PatArchive> patArchives1 = patArchiveMapper.selectPatArchiveList(pa1);
                        patArchives1 = patArchiveMapper.selectPatArchiveList(pa1);
                        if (CollectionUtils.isNotEmpty(patArchives1)) {
                            patArchives.get(0).setId(patArchives1.get(0).getId());
                            patArchives.get(0).setUpdateTime(new Date());
@@ -187,6 +189,7 @@
                        } else {
                            patArchives.get(0).setCreateTime(new Date());
                            count += patArchiveMapper.insertPatArchiveSingle(patArchives.get(0));
                            patArchives1 = patArchiveMapper.selectPatArchiveList(pa1);
                        }
                    }
                }
@@ -195,6 +198,9 @@
            }
            try {
                if(patArchives1.size()>0) {
                    pm.setPatid(patArchives1.get(0).getId());
                }
                //同步出入院
                PatMedInhosp pmi = new PatMedInhosp();
                pmi.setSerialnum(pm.getSerialnum());
@@ -452,10 +458,20 @@
    @Override
    public Integer selectDeptList(SysDept dept) {
        int count=0;
        List<SysDept> sysDepts = chMapper.selectDeptList(dept);
        log.info("selectDeptList的采集到的数量为:{}", sysDepts.size());
        int i = sysDept2Mapper.batchDept(sysDepts);
        return i;
       // count = sysDept2Mapper.batchDept(sysDepts);
        for(SysDept row : sysDepts){
            SysDept sysDeptTemp= sysDept2Mapper.selectDeptByCode(row.getDeptCode());
            if(sysDeptTemp!=null&&sysDeptTemp.getDeptName()!=null){
                row.setDeptId(sysDeptTemp.getDeptId());
                count+=sysDept2Mapper.updateDept(row);
            }else{
                count+=sysDept2Mapper.insertDept(row);
            }
        }
        return count;
    }
}