Index: ssts-datasync-default-impl/src/main/java/com/forgon/disinfectsystem/datasynchronization/service/DataSynchronizationManagerImpl.java =================================================================== diff -u -r20452 -r20503 --- ssts-datasync-default-impl/src/main/java/com/forgon/disinfectsystem/datasynchronization/service/DataSynchronizationManagerImpl.java (.../DataSynchronizationManagerImpl.java) (revision 20452) +++ ssts-datasync-default-impl/src/main/java/com/forgon/disinfectsystem/datasynchronization/service/DataSynchronizationManagerImpl.java (.../DataSynchronizationManagerImpl.java) (revision 20503) @@ -310,9 +310,11 @@ //his系统的(mybatis xml实现或 webservice实现类) OrgUnitVo[] allVos = syncOrgUnitAndUserDao.getAllOrgUnit(); + logger.debug("allOrgUnitVos="+JSONArray.fromObject(allVos)); //多个数据源处理(一般的医院基本上都只提供一个数据源,所以此变量大多时候为空) if(syncOrgUnitAndUserSource2Dao != null){ OrgUnitVo[] vos = syncOrgUnitAndUserSource2Dao.getAllOrgUnit(); + logger.debug("allOrgUnitVos2="+JSONArray.fromObject(vos)); int sr1 = allVos.length; int sr2 = vos.length; if (vos != null && sr2 > 0) { @@ -330,6 +332,24 @@ long count = 0; //循环his接口的科室数据集 for(OrgUnitVo vo : allVos){ + //如果科室编码为空,则写入日志提示科室编码不能为空 + if(StringUtils.isBlank(vo.getCoding())){ + appLogManager.saveLog(AcegiHelper.getLoginUser(), Log.MODEL_SYNC, Log.TYPE_QUERY, + "发现有同步科室编码为空的数据,名称=" + vo.getName()); + continue; + } + //如果科室编码为0,则写入日志提示科室编码不能为0 + if(StringUtils.equals(vo.getCoding() , "0")){ + appLogManager.saveLog(AcegiHelper.getLoginUser(), Log.MODEL_SYNC, Log.TYPE_QUERY, + "发现有同步科室编码为0的数据,名称=" + vo.getName()); + continue; + } + //如果科室名称为空,则写入日志提示科室名称不能为空 + if(StringUtils.isBlank(vo.getName())){ + appLogManager.saveLog(AcegiHelper.getLoginUser(), Log.MODEL_SYNC, Log.TYPE_QUERY, + "发现有同步科室名称为空的数据,编码=" + vo.getCoding()); + continue; + } OrgUnit orgUnit = (OrgUnit) orgUnitManager.getOrgUnitByCode(vo.coding); if(orgUnit != null && !更新交集数据) continue; //不是交集并且用户不希望更新交集 @@ -462,6 +482,7 @@ //多个数据源处理 if(syncOrgUnitAndUserSource2Dao != null){ UserVo[] vos = syncOrgUnitAndUserSource2Dao.getAllUser(); + logger.debug("allUserVos2="+JSONArray.fromObject(vos)); if (vos != null && vos.length > 0) { List list = new ArrayList(); for (final UserVo userVo : vos) {