diff --git a/src/modules/app.provider.ts b/src/modules/app.provider.ts index 97f6753..af2db61 100644 --- a/src/modules/app.provider.ts +++ b/src/modules/app.provider.ts @@ -60,14 +60,15 @@ BI.provider('dec.connection.provider.datebase', function() { this.registerDatabaseType = (config: any) => { 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' })); - + BI.isFunction(resolve) && (this.resolves[config.databaseType] = resolve); }; this.$get = () => BI.inherit(BI.OB, { getJdbcResolveByType: (type: string) => this.resolves[type] || jdbcResolve, + customDatabaseType: BI.Constants.getConstant(CONSTANT_PLUGIN_TYPES), }); }); diff --git a/src/modules/app.service.ts b/src/modules/app.service.ts index d8a0a2c..145b807 100644 --- a/src/modules/app.service.ts +++ b/src/modules/app.service.ts @@ -1,11 +1,10 @@ import { DATA_BASE_TYPES, DATA_BASE_TYPES_OTHER, DESIGN_DRIVER_TYPE, OTHER_JDBC } from '@constants/constant'; -import { CONSTANT_PLUGIN_TYPES } from './app.constant'; import { DatabaseType } from './app.typings'; import { Connection } from './crud/crud.typings'; export function getAllDatabaseTypes():DatabaseType[] { return [ ...DATA_BASE_TYPES, - ...BI.Constants.getConstant(CONSTANT_PLUGIN_TYPES).map(item => { + ...BI.Providers.getProvider('dec.connection.provider.datebase').customDatabaseType.map(item => { return { ...item, internal: false, @@ -15,7 +14,7 @@ export function getAllDatabaseTypes():DatabaseType[] { ]; } function getPlugin(type: string) { - return BI.Constants.getConstant(CONSTANT_PLUGIN_TYPES).find(item => item.databaseType === type); + return BI.Providers.getProvider('dec.connection.provider.datebase').customDatabaseType.find(item => item.databaseType === type); } export function getPluginWidgetShow(plugin: string) { return BI.get(getPlugin(plugin), 'show'); diff --git a/src/modules/constants/constant.ts b/src/modules/constants/constant.ts index 0c7549f..7ec892d 100644 --- a/src/modules/constants/constant.ts +++ b/src/modules/constants/constant.ts @@ -1,5 +1,3 @@ -import { CONSTANT_PLUGIN_TYPES } from '../app.constant'; - export const PAGE_INDEX = { CONNECTION: 'connection', DATEBASE: 'datebase', @@ -121,6 +119,10 @@ export const DATA_BASE_DRIVER_LINK = DecCst && DecCst.Hyperlink ? [ databaseType: 'kingbase', link: DecCst.Hyperlink.Database.KINGBASE, }, + { + databaseType: 'kyligence', + link: DecCst.Hyperlink.Database.KYLIGENCE, + }, { databaseType: 'sql-server', link: DecCst.Hyperlink.Database.SQLSERVER, @@ -448,6 +450,16 @@ export const DATA_BASE_TYPES = [ type: 'jdbc', hasSchema: true, kerberos: false, + }, { + text: 'Kyligence', + databaseType: 'kyligence', + driver: 'org.apache.kylin.jdbc.Driver', + url: 'jdbc:kylin://hostname:port/database', + commonly: false, + internal: true, + type: 'jdbc', + hasSchema: true, + kerberos: false, }, { text: 'Microsoft SQL Server', databaseType: 'sql-server', @@ -475,7 +487,7 @@ export const DATA_BASE_TYPES = [ }, }, { - text: 'ODPS', + text: 'MaxCompute', databaseType: 'odps', driver: 'com.aliyun.odps.jdbc.OdpsDriver', url: 'jdbc:odps:?project=', @@ -619,13 +631,6 @@ export const DATA_BASE_TYPES = [ 'org.sqlite.JDBC': 'jdbc:sqlite:[PATH_TO_DB_FILES]', }, }, - ...BI.Constants.getConstant(CONSTANT_PLUGIN_TYPES).map(item => { - return { - ...item, - internal: false, - commonly: false, - }; - }), ]; diff --git a/src/modules/pages/maintain/forms/components/form.jdbc.ts b/src/modules/pages/maintain/forms/components/form.jdbc.ts index f3f8043..e111ed2 100644 --- a/src/modules/pages/maintain/forms/components/form.jdbc.ts +++ b/src/modules/pages/maintain/forms/components/form.jdbc.ts @@ -260,6 +260,7 @@ export class FormJdbc extends BI.Widget { allowBlank: true, value: password, inputType: 'password', + autocomplete: 'new-password', watermark: BI.i18nText('Dec-Dcm_Connection_Form_Password'), ref: (_ref: any) => { this.form.password = _ref;