Browse Source

DEC-19762 feat: 【FR配合】部分数据连接支持fetchsize

feature/10.0
dailer 3 years ago
parent
commit
a8bba76fe9
  1. 40
      src/modules/pages/connection/list/list_item/list_item.model.ts
  2. 1
      src/modules/pages/maintain/forms/components/form.jdbc.ts
  3. 12
      src/modules/pages/maintain/forms/form.model.ts

40
src/modules/pages/connection/list/list_item/list_item.model.ts

@ -4,6 +4,8 @@ import { ApiFactory } from '../../../../crud/apiFactory';
import { ResultType } from '../../../../crud/crud.typings';
import { getChartLength } from '../../../../app.service';
import { NAME_MAX_LENGTH } from '../../../../app.constant';
import { PAGE_INDEX } from '@constants/constant';
const api = new ApiFactory().create();
@model()
@ -21,7 +23,7 @@ export class ListItemModel extends Model<{
}> {
static xtype = 'dec.dcm.model.connection.list_item';
context = <const>['connectionSelected', 'connections', 'pageIndex', 'datebaseTypeSelectedOne', 'connectionSelectedOne', 'datebaseTypeSelected', 'isCopy'];
context = <const>['connectionSelected', 'connections', 'pageIndex', 'datebaseTypeSelectedOne', 'connectionSelectedOne', 'datebaseTypeSelected', 'isCopy', 'connectionLicInfo'];
state() {
return {
@ -52,10 +54,12 @@ export class ListItemModel extends Model<{
},
setIsEdit: (isEdit: boolean, name: string) => {
if (isEdit) {
api.getConnectionStatus(name).then(re => {
api.getConnectionStatus(name)
.then(re => {
this.model.isEdit = true;
})
.catch(() => {});
.catch(() => {
});
} else {
api.shutdownConnectionStatus(name);
this.model.isEdit = false;
@ -69,7 +73,10 @@ export class ListItemModel extends Model<{
}
if (getChartLength(newName) > NAME_MAX_LENGTH) {
return new Promise(resolve => {
resolve({ errorCode: '1', errorMsg: BI.i18nText('Dec-Dcm_Connection_Cannot_Too_Lang', NAME_MAX_LENGTH) });
resolve({
errorCode: '1',
errorMsg: BI.i18nText('Dec-Dcm_Connection_Cannot_Too_Lang', NAME_MAX_LENGTH),
});
});
}
const hasNamed = this.model.connections.some(item => item.connectionName === newName);
@ -83,7 +90,8 @@ export class ListItemModel extends Model<{
connection.connectionName = newName;
return api.updateConnection(connection).then(re => {
return api.updateConnection(connection)
.then(re => {
if (!re.errorCode) {
this.model.connections = this.model.connections.map(item => {
return {
@ -100,13 +108,31 @@ export class ListItemModel extends Model<{
return re;
});
},
copyConnection(connectionName) {
if (this.model.connectionLicInfo.currentConnectionNum >= this.model.connectionLicInfo.maxConnectionNum) {
BI.Services.getService('dec.service.component.icon_text.msg').alert({
text: BI.i18nText('Dec-Connection_Lic_Limit_Approach_Prevent_Tip', this.model.connectionLicInfo.maxConnectionNum),
});
return;
}
this.setConnectionSelected(connectionName);
this.setIsCopy(true);
this.setPageIndex(PAGE_INDEX.MAINTAIN);
},
setIsCopy: (isCopy: boolean) => {
this.model.isCopy = isCopy;
},
isDriverError: (errorCode: string) => api.isDriverError(errorCode),
}
};
removeConnection(name: string) {
api.deleteConnection(name).then(re => api.getConnectionList())
api.deleteConnection(name)
.then(re => {
this.model.connectionLicInfo.currentConnectionNum -= 1;
return api.getConnectionList();
})
.then(connections => {
this.model.connections = connections.data;
this.model.connections.forEach(item => {

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

@ -849,6 +849,7 @@ export class FormJdbc extends BI.Widget {
creator: Dec ? Dec.personal.username : '',
principal: this.form.principal.getValue(),
keyPath: this.form.keyPath.getValue(),
fetchSize: this.form.fetchSize.getValue(),
connectionPoolAttr: {
initialSize: this.form.initialSize.getValue(),
maxActive: this.form.maxActive.getValue(),

12
src/modules/pages/maintain/forms/form.model.ts

@ -4,7 +4,6 @@ import { Connection } from 'src/modules/crud/crud.typings';
import { ApiFactory } from 'src/modules/crud/apiFactory';
import { PAGE_INDEX } from '@constants/constant';
import { testConnection } from './form.server';
const api = new ApiFactory().create();
@model()
@ -32,17 +31,10 @@ export class MaintainFormModel extends Model<{
'testEvent',
'connections',
'isCopy',
'connectionLicInfo',
];
actions = {
addConnection: (data: Connection) => api.addConnection(data).then(result => {
if (!result.errorCode) {
this.model.connectionLicInfo.currentConnectionNum += 1;
}
return result;
}),
addConnection: (data: Connection) => api.addConnection(data),
updateConnection: (name: string, data: Connection) => {
data.connectionId = name;
@ -59,5 +51,5 @@ export class MaintainFormModel extends Model<{
goFirstPage() {
this.model.pageIndex = PAGE_INDEX.CONNECTION;
},
};
}
}

Loading…
Cancel
Save