From 8145865d8f7c5c49f707012d47edf4524b3ff874 Mon Sep 17 00:00:00 2001 From: xusongfu Date: Fri, 29 Jul 2022 16:02:21 +0800 Subject: [PATCH] fix: fix getColumns and searchFilters in trove instance fix it to get better extensions Change-Id: I3fbe27ca79af3fae93f85782e2edf3dffa64d612 --- .../database/containers/Instances/index.jsx | 108 ++++++++++-------- 1 file changed, 60 insertions(+), 48 deletions(-) diff --git a/src/pages/database/containers/Instances/index.jsx b/src/pages/database/containers/Instances/index.jsx index 0c545df5..12d573ed 100644 --- a/src/pages/database/containers/Instances/index.jsx +++ b/src/pages/database/containers/Instances/index.jsx @@ -17,6 +17,7 @@ import { observer, inject } from 'mobx-react'; import Base from 'containers/List'; import globalInstancesStore from 'stores/trove/instances'; import { InstanceStatus } from 'resources/trove/database'; +import { getOptions } from 'utils/index'; import actions from './actions'; export class Instances extends Base { @@ -49,58 +50,69 @@ export class Instances extends Base { label: t('Name'), name: 'name', }, + { + label: t('Version'), + name: 'version', + }, + { + label: t('Status'), + name: 'status', + options: getOptions(InstanceStatus), + }, ]; } - getColumns = () => [ - { - title: t('ID/Name'), - dataIndex: 'name', - routeName: this.getRouteName('databaseInstanceDetail'), - }, - { - title: t('Project ID/Name'), - dataIndex: 'project_name', - isHideable: true, - hidden: !this.isAdminPage, - }, - { - title: t('Datastore'), - dataIndex: 'type', - }, - { - title: t('Datastore Version'), - dataIndex: 'version', - isHideable: true, - }, - { - title: t('Host'), - dataIndex: 'ip', - render: (value) => { - return value && value.length ? ( - <> - {value.map((it) => ( -
{it}
- ))} - - ) : ( - '-' - ); + getColumns() { + return [ + { + title: t('ID/Name'), + dataIndex: 'name', + routeName: this.getRouteName('databaseInstanceDetail'), }, - isHideable: true, - }, - { - title: t('Volume Size'), - dataIndex: 'size', - isHideable: true, - render: (value) => (value ? `${value}GiB` : '-'), - }, - { - title: t('Status'), - dataIndex: 'status', - render: (value) => InstanceStatus[value] || value, - }, - ]; + { + title: t('Project ID/Name'), + dataIndex: 'project_name', + isHideable: true, + hidden: !this.isAdminPage, + }, + { + title: t('Datastore'), + dataIndex: 'type', + }, + { + title: t('Datastore Version'), + dataIndex: 'version', + isHideable: true, + }, + { + title: t('Host'), + dataIndex: 'ip', + render: (value) => { + return value && value.length ? ( + <> + {value.map((it) => ( +
{it}
+ ))} + + ) : ( + '-' + ); + }, + isHideable: true, + }, + { + title: t('Volume Size'), + dataIndex: 'size', + isHideable: true, + render: (value) => (value ? `${value}GiB` : '-'), + }, + { + title: t('Status'), + dataIndex: 'status', + render: (value) => InstanceStatus[value] || value, + }, + ]; + } } export default inject('rootStore')(observer(Instances));