forked from github/dataease
fix:【系统设置】支持引擎设置
This commit is contained in:
parent
f9e2a0293c
commit
412b2776a7
@ -650,10 +650,14 @@ public class DatasourceServer implements DatasourceApi {
|
||||
}
|
||||
|
||||
private DatasourceDTO validate(CoreDatasource coreDatasource) {
|
||||
String lastStatus = coreDatasource.getStatus();
|
||||
DatasourceDTO datasourceDTO = new DatasourceDTO();
|
||||
BeanUtils.copyBean(datasourceDTO, coreDatasource);
|
||||
try {
|
||||
checkDatasourceStatus(coreDatasource);
|
||||
if(StringUtils.isNotEmpty(lastStatus) && StringUtils.isNotEmpty(coreDatasource.getStatus()) && lastStatus.equalsIgnoreCase("Error") && coreDatasource.getStatus().equalsIgnoreCase("Success")){
|
||||
calciteProvider.update(datasourceDTO);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
coreDatasource.setStatus("Error");
|
||||
DEException.throwException(e.getMessage());
|
||||
|
@ -5,6 +5,7 @@ import io.dataease.api.ds.EngineApi;
|
||||
import io.dataease.datasource.dao.auto.entity.CoreDeEngine;
|
||||
import io.dataease.datasource.dao.auto.mapper.CoreDeEngineMapper;
|
||||
import io.dataease.datasource.manage.EngineManage;
|
||||
import io.dataease.datasource.provider.CalciteProvider;
|
||||
import io.dataease.utils.BeanUtils;
|
||||
import io.dataease.utils.IDUtils;
|
||||
import jakarta.annotation.Resource;
|
||||
@ -24,7 +25,8 @@ public class EngineServer implements EngineApi {
|
||||
private CoreDeEngineMapper deEngineMapper;
|
||||
@Resource
|
||||
private EngineManage engineManage;
|
||||
|
||||
@Resource
|
||||
private CalciteProvider calciteProvider;
|
||||
|
||||
@Override
|
||||
public DatasourceDTO getEngine() {
|
||||
@ -41,15 +43,16 @@ public class EngineServer implements EngineApi {
|
||||
if (StringUtils.isNotEmpty(datasourceDTO.getConfiguration())) {
|
||||
datasourceDTO.setConfiguration(new String(Base64.getDecoder().decode(datasourceDTO.getConfiguration())));
|
||||
}
|
||||
|
||||
CoreDeEngine coreDeEngine = new CoreDeEngine();
|
||||
BeanUtils.copyBean(coreDeEngine, datasourceDTO);
|
||||
if(coreDeEngine.getId() == null){
|
||||
coreDeEngine.setId(IDUtils.snowID());
|
||||
datasourceDTO.setId(coreDeEngine.getId());
|
||||
deEngineMapper.insert(coreDeEngine);
|
||||
}else {
|
||||
deEngineMapper.updateById(coreDeEngine);
|
||||
}
|
||||
calciteProvider.update(datasourceDTO);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
Loading…
Reference in New Issue
Block a user