提交 685d5740 编写于 作者: zhouweidong's avatar zhouweidong

初始化主数据源

上级 20664b92
package cn.ibizlab.core.lite.extensions.service;
import cn.ibizlab.core.lite.domain.MetaEntity;
import cn.ibizlab.core.lite.domain.MetaField;
import cn.ibizlab.core.lite.domain.MetaModule;
import cn.ibizlab.core.lite.domain.MetaRelationship;
import cn.ibizlab.core.lite.domain.*;
import cn.ibizlab.core.lite.extensions.domain.MetaEntityModel;
import cn.ibizlab.core.lite.extensions.domain.SysModel;
import cn.ibizlab.core.lite.extensions.mapping.MetaEntityMapping;
import cn.ibizlab.core.lite.service.IMetaEntityService;
import cn.ibizlab.core.lite.service.IMetaFieldService;
import cn.ibizlab.core.lite.service.IMetaModuleService;
import cn.ibizlab.core.lite.service.IMetaRelationshipService;
import cn.ibizlab.core.lite.service.*;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import lombok.extern.slf4j.Slf4j;
......@@ -50,6 +44,10 @@ public class LiteCoreService {
@Lazy
IMetaModuleService moduleService;
@Autowired
@Lazy
IDstDataSourceService dataSourceService;
@Transactional
public boolean syncSysModel(SysModel sysModel) {
proxyService.asyncSysModel(sysModel);
......@@ -64,10 +62,22 @@ public class LiteCoreService {
syncDE(sysModel);
syncDEField(sysModel);
syncDERelation(sysModel);
syncDataSource(sysModel);
long end = System.currentTimeMillis();
log.info("完成[{}]系统同步模型任务,总耗时[{}]秒",sysModel.getSystemid(),(end-start)/1000);
}
/**
* 初始化master datasource
* @param sysModel
*/
private void syncDataSource(SysModel sysModel) {
DstDataSource dataSource= new DstDataSource();
dataSource.setDsId(String.format("%s-master",sysModel.getSystemid()));
dataSource.setDsName(String.format("[%s]主数据源",sysModel.getSystemname()));
dataSourceService.save(dataSource);
}
/**
* 同步实体
* @param sysModel
......@@ -76,7 +86,7 @@ public class LiteCoreService {
Map<String,Integer> delDE = new HashMap<>();
Map<String,Integer> delModule = new HashMap<>();
entityService.list(new QueryWrapper<MetaEntity>().select("entityid").eq("systemid",sysModel.getSystemid())).forEach(entity -> delDE.put(entity.getEntityId(),1));
moduleService.list(new QueryWrapper<MetaModule>().select("moduleid").eq("systemid",sysModel.getSystemid())).forEach(module -> delModule.put(module.getId(),1));
moduleService.list(new QueryWrapper<MetaModule>().select("codename").eq("systemid",sysModel.getSystemid())).forEach(module -> delModule.put(module.getCodeName(),1));
List<MetaEntityModel> metaEntityModels = sysModel.getEntities();
Set<MetaEntity> entities=new HashSet<>();
Set<MetaModule> modules=new HashSet<>();
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册