From 03eac54abd73198c274f3f5132c9b447ccece5d2 Mon Sep 17 00:00:00 2001 From: zsmj1994 Date: Thu, 8 Apr 2021 16:59:56 +0800 Subject: [PATCH] =?UTF-8?q?DEC-17971=20feat:=20redis=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E9=9B=86=E5=8A=A0=E5=AF=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/web/src/modules/app.dataset.ts | 29 +++++++++++++------------ src/web/src/modules/app.program.ts | 35 ++++++++++++++++++------------ 2 files changed, 36 insertions(+), 28 deletions(-) diff --git a/src/web/src/modules/app.dataset.ts b/src/web/src/modules/app.dataset.ts index f722420..b0af00a 100644 --- a/src/web/src/modules/app.dataset.ts +++ b/src/web/src/modules/app.dataset.ts @@ -1,11 +1,11 @@ -import { shortcut, store } from '@core/core'; -import { TableList } from './table_list/table_list'; +import {shortcut, store} from '@core/core'; +import {TableList} from './table_list/table_list'; import '../less/index.less'; -import { DatabaseIndex } from './components/database_index/database_index'; -import { RedisModel, ParameterType } from './app.model'; -import { Preview } from './components/preview/preview'; +import {DatabaseIndex} from './components/database_index/database_index'; +import {RedisModel, ParameterType} from './app.model'; +import {Preview} from './components/preview/preview'; import './app.less'; -import { redisField } from './app.constant'; +import {redisField} from './app.constant'; @shortcut() @store(RedisModel) @@ -43,11 +43,12 @@ export class RedisDataset extends BI.Widget { } render() { - const { database = '', orderValue = 0, query = '', parameters = [] } = this.options.value.datasetData || {}; + const {database = '', orderValue = 0, query = '', parameters = []} = this.options.value.datasetData || {}; this.store.setParameters(parameters); - this.store.setAbleSave(!!query); + const plainQuery = BI.Providers.getProvider("dec.provider.cipher").getPlain(query); + this.store.setAbleSave(!!plainQuery); const inputType = typeof orderValue === 'string' ? 'formula' : 'int'; - + return { type: BI.HTapeLayout.xtype, tgap: 15, @@ -130,7 +131,7 @@ export class RedisDataset extends BI.Widget { cls: 'bi-border', height: 200, allowBlank: true, - value: query, + value: plainQuery, ref: (_ref: any) => { this.queryCondition = _ref; }, @@ -185,7 +186,7 @@ export class RedisDataset extends BI.Widget { columnSize: [300, 300, ''], items: this.renderItems(), header: [this.model.paramHeader], - ref: (_ref: any) => { + ref: (_ref: any) => { this.parameterEditor = _ref; }, }], @@ -195,7 +196,7 @@ export class RedisDataset extends BI.Widget { private renderItems() { const self = this; - + return this.model.parameters.map((item, index) => [{ type: BI.Label.xtype, text: item.name, @@ -210,7 +211,7 @@ export class RedisDataset extends BI.Widget { value: item.type, listeners: [{ eventName: BI.IconTextValueCombo.EVENT_CHANGE, - action () { + action() { self.store.setParamType(index, this.getValue()[0]); }, }], @@ -227,7 +228,7 @@ export class RedisDataset extends BI.Widget { return { database: this.tableList.getSelectedDatabase(), orderValue: this.databaseIndex.getValue(), - query: this.queryCondition.getValue(), + query: BI.Providers.getProvider("dec.provider.cipher").getCipher(this.queryCondition.getValue()), parameters: this.model.parameters, }; } diff --git a/src/web/src/modules/app.program.ts b/src/web/src/modules/app.program.ts index 127fb3b..1e8156c 100644 --- a/src/web/src/modules/app.program.ts +++ b/src/web/src/modules/app.program.ts @@ -1,11 +1,11 @@ -import { shortcut, store } from '@core/core'; -import { TableList } from './table_list/table_list'; +import {shortcut, store} from '@core/core'; +import {TableList} from './table_list/table_list'; import '../less/index.less'; -import { DatabaseIndex } from './components/database_index/database_index'; -import { RedisModel, ParameterType } from './app.model'; +import {DatabaseIndex} from './components/database_index/database_index'; +import {RedisModel, ParameterType} from './app.model'; import './app.less'; -import { redisField } from './app.constant'; -import { Preview } from './components/preview/preview'; +import {redisField} from './app.constant'; +import {Preview} from './components/preview/preview'; @shortcut() @store(RedisModel) @@ -46,10 +46,17 @@ export class RedisProgram extends BI.Widget { } render() { - const { database = '', orderValue = 0, script = '', parameters = [], engineType = 0 } = this.options.value.datasetData || {}; + const { + database = '', + orderValue = 0, + script = '', + parameters = [], + engineType = 0 + } = this.options.value.datasetData || {}; this.store.setParameters(parameters); const inputType = typeof orderValue === 'string' ? 'formula' : 'int'; - + const plainScript = BI.Providers.getProvider("dec.provider.cipher").getPlain(script); + return { type: BI.HTapeLayout.xtype, tgap: 15, @@ -157,7 +164,7 @@ export class RedisProgram extends BI.Widget { cls: 'bi-border', height: 200, allowBlank: true, - value: script, + value: plainScript, ref: (_ref: any) => { this.queryCondition = _ref; }, @@ -212,7 +219,7 @@ export class RedisProgram extends BI.Widget { columnSize: [300, 300, ''], items: this.renderItems(), header: [this.model.paramHeader], - ref: (_ref: any) => { + ref: (_ref: any) => { this.parameterEditor = _ref; }, }], @@ -222,7 +229,7 @@ export class RedisProgram extends BI.Widget { private renderItems() { const self = this; - + return this.model.parameters.map((item, index) => [{ type: BI.Label.xtype, text: item.name, @@ -237,7 +244,7 @@ export class RedisProgram extends BI.Widget { value: item.type, listeners: [{ eventName: BI.IconTextValueCombo.EVENT_CHANGE, - action () { + action() { self.store.setParamType(index, this.getValue()[0]); }, }], @@ -251,7 +258,7 @@ export class RedisProgram extends BI.Widget { self.store.setParamValue(index, value); })]); } - + private createParameterValueItem(param: ParameterType, cb: Function) { return BI.Services.getService('dec.service.data.set').createParameterValueItem(param, cb); } @@ -260,7 +267,7 @@ export class RedisProgram extends BI.Widget { return { database: this.tableList.getSelectedDatabase(), orderValue: this.databaseIndex.getValue(), - script: this.queryCondition.getValue(), + script: BI.Providers.getProvider("dec.provider.cipher").getCipher(this.queryCondition.getValue()), engineType: this.engineTypeSelect.getValue()[0], parameters: this.model.parameters, };