Browse Source

Merge pull request #67 in DEC/decision-webui-dcm from ~ALAN/decision-webui-dcm:feature/10.0 to feature/10.0

* commit '3727ee4b944be58af6f0fec7a52fd6ffc21b020b':
  fix: 去掉无用的类型定义
  fix: DEC-9989 && DEC-10011 默认选中第一个数据连接,无数据连接时显示为空
qufenxi
alan 5 years ago
parent
commit
ba2ea2b7d4
  1. 21
      src/modules/pages/connection/list/list.model.ts
  2. 4
      src/modules/pages/connection/list/list.ts

21
src/modules/pages/connection/list/list.model.ts

@ -1,24 +1,29 @@
import { model, Model } from '@core/core'; import { model, Model } from '@core/core';
import { ConnectionModel } from '../connection.model'; import { ApiFactory } from '../../..//crud/apiFactory';
import { ApiFactory } from 'src/modules/crud/apiFactory'; import { AppModel } from '../../../app.model';
const api = new ApiFactory().create(); const api = new ApiFactory().create();
export const ConnectionListModelXtype = 'dec.dcm.model.connection.list'; export const ConnectionListModelXtype = 'dec.dcm.model.connection.list';
@model(ConnectionListModelXtype) @model(ConnectionListModelXtype)
export class ConnectionListModel extends Model<{ export class ConnectionListModel extends Model<{
context : { context : {
connections: ConnectionModel['$$childContext']['connections']; connections: AppModel['$$childContext']['connections'];
connectionSelected: ConnectionModel['$$childContext']['connectionSelected']; connectionSelected: AppModel['$$childContext']['connectionSelected'];
} }
}> { }> {
context = ['connections', 'connectionSelected']; context = ['connections', 'connectionSelected'];
actions = { actions = {
setConnections: ():Promise<void> => api.getConnectionlist().then(data => { setConnections: ():Promise<void> => api.getConnectionlist().then(data => {
this.model.connections = data.data; if (BI.size(data.data) > 0) {
this.model.connections.forEach(item => { this.model.connections = data.data;
this.model.connections.forEach(item => {
// 后端传过来的是字符串,转为对象 // 后端传过来的是字符串,转为对象
item.connectionData = JSON.parse(item.connectionData); item.connectionData = JSON.parse(item.connectionData as string);
}); });
this.model.connectionSelected = data.data[0].connectionName;
} else {
this.model.connectionSelected = '';
}
return new Promise(resolve => { return new Promise(resolve => {
resolve(); resolve();

4
src/modules/pages/connection/list/list.ts

@ -2,7 +2,6 @@ import { shortcut, store } from '@core/core';
import { CenterAdapt, Label, Layout, Vtape, Loader } from 'ui'; import { CenterAdapt, Label, Layout, Vtape, Loader } from 'ui';
import { ListItemXtype } from './list_item/list_item'; import { ListItemXtype } from './list_item/list_item';
import { ConnectionListModel, ConnectionListModelXtype } from './list.model'; import { ConnectionListModel, ConnectionListModelXtype } from './list.model';
import { Connection } from '../../../crud/crud.typings';
import { getCreator, getDatabaseType } from './list.service'; import { getCreator, getDatabaseType } from './list.service';
export const ConnectionListXtype = 'dec.dcm.connection.list'; export const ConnectionListXtype = 'dec.dcm.connection.list';
@shortcut(ConnectionListXtype) @shortcut(ConnectionListXtype)
@ -68,13 +67,14 @@ export class ConnectionList extends BI.LoadingPane {
} }
private renderList(start = 0, end = 0) { private renderList(start = 0, end = 0) {
return this.model.connections.slice(start, end).map((item: Connection) => { return this.model.connections.slice(start, end).map((item, index) => {
return { return {
type: ListItemXtype, type: ListItemXtype,
name: item.connectionName, name: item.connectionName,
value: item.connectionName, value: item.connectionName,
creator: getCreator(item), creator: getCreator(item),
databaseType: getDatabaseType(item), databaseType: getDatabaseType(item),
selected: this.model.connectionSelected ? this.model.connectionSelected === item.connectionName : index === 0,
}; };
}); });
} }

Loading…
Cancel
Save