Browse Source

Merge pull request #6500 in DEC/decision-webui-dcm from final/11.0 to persist/11.0

* commit 'b0dfc4d8afc6c56995f5bc2f2a82423a09eda33f':
  REPORT-85200 fix:修复「初始化连接数」错误提示显示问题
  REPORT-85619 feat: 拓展下数据连接配置功能
  REPORT-85441 fix:clickhouse连接url添加database
  BI-116671 fix:数据连接管理-新建数据连接界面在IE浏览器下有问题,最右侧取消和保存部分不显示
persist/11.0
superman 2 years ago
parent
commit
d57ad793ae
  1. 28
      src/modules/app.provider.ts
  2. 2
      src/modules/constants/constant.ts
  3. 3
      src/modules/pages/maintain/forms/components/form.jdbc.ts
  4. 1
      src/modules/title/title.ts

28
src/modules/app.provider.ts

@ -1,10 +1,11 @@
import { CONSTANT_PLUGIN_TYPES } from './app.constant';
import { DATA_BASE_TYPES } from '@constants/constant';
BI.provider('dec.connection.provider.datebase', function() {
BI.provider('dec.connection.provider.datebase', function () {
this.resolves = {};
// 原service中resolveUrlInfo方法
function jdbcResolve (url: string) {
function jdbcResolve(url: string) {
if (BI.isNull(url)) return {};
const oracleUlr = url.match(/^jdbc:(oracle):(thin:([0-9a-zA-Z/]*)?@|thin:([0-9a-zA-Z/]*)?@\/\/|\/\/|)([0-9a-zA-Z_\\.-]+)(:([0-9|port]+))?(:|\/)([^]+)(.*)/i);
if (oracleUlr) {
@ -68,14 +69,35 @@ BI.provider('dec.connection.provider.datebase', function() {
};
}
function coverBaseDatabase(config) {
const baseDataBase = DATA_BASE_TYPES.find(item => item.text === config.text);
if (BI.isNotNull(baseDataBase)) {
// 覆盖基础配置
Object.assign(baseDataBase, config);
return true;
}
return false;
}
this.registerDatabaseType = (config: any) => {
if (coverBaseDatabase(config)) return;
BI.config(CONSTANT_PLUGIN_TYPES, connections => BI.concat(connections, config));
};
this.registerJdbcDatabase = (config: any, resolve?: Function) => {
BI.config(CONSTANT_PLUGIN_TYPES, connections => BI.concat(connections, { ...config, type: 'jdbc' }));
config = {
...config,
type: 'jdbc',
};
BI.isFunction(resolve) && (this.resolves[config.databaseType] = resolve);
if (coverBaseDatabase(config)) return;
BI.config(CONSTANT_PLUGIN_TYPES, connections => BI.concat(connections, config));
};
this.$get = () => BI.inherit(BI.OB, {

2
src/modules/constants/constant.ts

@ -279,7 +279,7 @@ export const DATA_BASE_TYPES = [
text: 'ClickHouse',
databaseType: 'clickhouse',
driver: 'ru.yandex.clickhouse.ClickHouseDriver',
url: 'jdbc:clickhouse://hostname:port',
url: 'jdbc:clickhouse://hostname:port/database',
commonly: false,
internal: true,
type: 'jdbc',

3
src/modules/pages/maintain/forms/components/form.jdbc.ts

@ -1001,7 +1001,8 @@ export class FormJdbc extends BI.Widget {
{
el: {
type: BI.VerticalLayout.xtype,
bgap: vgap,
vgap: vgap,
top: -15,
invisible: true,
ref: (_ref: VerticalLayout) => {
this.advancedSet = _ref;

1
src/modules/title/title.ts

@ -78,6 +78,7 @@ export class Title extends BI.Widget {
type: BI.Tab.xtype,
height: 40,
showIndex: this.model.pageIndex,
width:200,
ref: (_ref: Tab) => {
this.tab = _ref;
},

Loading…
Cancel
Save