diff --git a/src/pages/identity/containers/Project/Detail/Quota.jsx b/src/pages/identity/containers/Project/Detail/Quota.jsx index ca2e2314..ee9895b0 100644 --- a/src/pages/identity/containers/Project/Detail/Quota.jsx +++ b/src/pages/identity/containers/Project/Detail/Quota.jsx @@ -19,14 +19,10 @@ import globalProjectStore from 'stores/keystone/project'; import { Card, Col, Row, List } from 'antd'; import Progress from 'components/ProjectProgress'; import classnames from 'classnames'; -import globalVolumeTypeStore from 'stores/cinder/volume-type'; +import { VolumeTypeStore } from 'stores/cinder/volume-type'; import styles from './index.less'; -// const { Panel } = Collapse; - -@inject('rootStore') -@observer -export default class Quota extends React.Component { +export class Quota extends React.Component { constructor(props) { super(props); this.state = {}; @@ -42,7 +38,7 @@ export default class Quota extends React.Component { await this.store.fetchProjectQuota({ project_id, }); - await globalVolumeTypeStore.fetchList(); + await this.volumeTypeStore.fetchProjectVolumeTypes(project_id); }; getItemInfo = (i) => { @@ -53,6 +49,7 @@ export default class Quota extends React.Component { init() { this.store = globalProjectStore; + this.volumeTypeStore = new VolumeTypeStore(); } renderVolumeTypes = (listData) => ( @@ -80,7 +77,7 @@ export default class Quota extends React.Component { render() { const { quota } = this.store; const volumeTypes = []; - globalVolumeTypeStore.list.data.forEach((item, index) => { + this.volumeTypeStore.projectVolumeTypes.forEach((item, index) => { volumeTypes.push({ index, value: [ @@ -193,3 +190,5 @@ export default class Quota extends React.Component { ); } } + +export default inject('rootStore')(observer(Quota)); diff --git a/src/pages/identity/containers/Project/actions/QuotaManager.jsx b/src/pages/identity/containers/Project/actions/QuotaManager.jsx index d524cf2a..93e4b018 100644 --- a/src/pages/identity/containers/Project/actions/QuotaManager.jsx +++ b/src/pages/identity/containers/Project/actions/QuotaManager.jsx @@ -16,7 +16,7 @@ import { inject, observer } from 'mobx-react'; import globalProjectStore from 'stores/keystone/project'; import React from 'react'; import { ModalAction } from 'containers/Action'; -import globalVolumeTypeStore from 'stores/cinder/volume-type'; +import { VolumeTypeStore } from 'stores/cinder/volume-type'; export class QuotaManager extends ModalAction { static id = 'quota-management'; @@ -25,6 +25,7 @@ export class QuotaManager extends ModalAction { init() { this.store = globalProjectStore; + this.volumeTypeStore = new VolumeTypeStore(); // this.getQuota(); } @@ -41,7 +42,7 @@ export class QuotaManager extends ModalAction { await this.store.fetchProjectQuota({ project_id, }); - await globalVolumeTypeStore.fetchList(); + await this.volumeTypeStore.fetchProjectVolumeTypes(project_id); }; get tips() { @@ -63,9 +64,7 @@ export class QuotaManager extends ModalAction { get volumeTypesData() { const volumeTypes = []; - const { - list: { data }, - } = globalVolumeTypeStore; + const { projectVolumeTypes: data = [] } = this.volumeTypeStore; if (data[0] && this.formRef.current) { data.forEach((item) => { volumeTypes.push.apply(volumeTypes, [ @@ -365,7 +364,7 @@ export class QuotaManager extends ModalAction { const { id: project_id } = this.item; const { more, cinder, networks, cinder_types, nova, security, ...others } = values; - const results = globalProjectStore.updateProjectQuota({ + const results = this.store.updateProjectQuota({ project_id, data: others, }); diff --git a/src/pages/network/containers/Network/AdminNetwork.jsx b/src/pages/network/containers/Network/AdminNetwork.jsx index e19e4ecf..d6c9dc90 100644 --- a/src/pages/network/containers/Network/AdminNetwork.jsx +++ b/src/pages/network/containers/Network/AdminNetwork.jsx @@ -19,9 +19,7 @@ import { NetworkStore } from 'stores/neutron/network'; import { yesNoOptions } from 'utils/constants'; import actionConfigs from './actions'; -@inject('rootStore') -@observer -export default class Networks extends Base { +export class Networks extends Base { init() { this.store = new NetworkStore(); this.downloadStore = new NetworkStore(); @@ -97,3 +95,5 @@ export default class Networks extends Base { ]; } } + +export default inject('rootStore')(observer(Networks)); diff --git a/src/pages/network/containers/Network/Detail/index.jsx b/src/pages/network/containers/Network/Detail/index.jsx index 9a246353..a8da05a2 100644 --- a/src/pages/network/containers/Network/Detail/index.jsx +++ b/src/pages/network/containers/Network/Detail/index.jsx @@ -22,9 +22,7 @@ import Subnets from './Subnets'; import Detail from './Detail'; import actionConfigs from '../actions'; -@inject('rootStore') -@observer -export default class NetworkDetail extends Base { +export class NetworkDetail extends Base { get name() { return t('network'); } @@ -157,3 +155,5 @@ export default class NetworkDetail extends Base { this.store = new NetworkStore(); } } + +export default inject('rootStore')(observer(NetworkDetail)); diff --git a/src/pages/network/containers/Network/ExtNetwork.jsx b/src/pages/network/containers/Network/ExtNetwork.jsx index 3d15d2fa..0d847563 100644 --- a/src/pages/network/containers/Network/ExtNetwork.jsx +++ b/src/pages/network/containers/Network/ExtNetwork.jsx @@ -19,9 +19,7 @@ import { NetworkStore } from 'stores/neutron/network'; import { yesNoOptions } from 'utils/constants'; import actionConfigs from './actions'; -@inject('rootStore') -@observer -export default class ExtNetwork extends Base { +export class ExtNetwork extends Base { init() { this.store = new NetworkStore(); this.downloadStore = new NetworkStore(); @@ -88,3 +86,5 @@ export default class ExtNetwork extends Base { return filters; } } + +export default inject('rootStore')(observer(ExtNetwork)); diff --git a/src/pages/network/containers/Network/ProjectNetwork.jsx b/src/pages/network/containers/Network/ProjectNetwork.jsx index 59a903e0..7efd8a90 100644 --- a/src/pages/network/containers/Network/ProjectNetwork.jsx +++ b/src/pages/network/containers/Network/ProjectNetwork.jsx @@ -19,9 +19,7 @@ import { NetworkStore } from 'stores/neutron/network'; import { yesNoOptions } from 'utils/constants'; import actionConfigs from './actions'; -@inject('rootStore') -@observer -export default class ProjectNetwork extends Base { +export class ProjectNetwork extends Base { init() { this.store = new NetworkStore(); this.downloadStore = new NetworkStore(); @@ -85,3 +83,5 @@ export default class ProjectNetwork extends Base { return filters; } } + +export default inject('rootStore')(observer(ProjectNetwork)); diff --git a/src/pages/network/containers/Network/SharedNetwork.jsx b/src/pages/network/containers/Network/SharedNetwork.jsx index 48a6e17d..25683d9b 100644 --- a/src/pages/network/containers/Network/SharedNetwork.jsx +++ b/src/pages/network/containers/Network/SharedNetwork.jsx @@ -19,9 +19,7 @@ import { NetworkStore } from 'stores/neutron/network'; import { yesNoOptions } from 'utils/constants'; import actionConfigs from './actions'; -@inject('rootStore') -@observer -export default class SharedNetwork extends Base { +export class SharedNetwork extends Base { init() { this.store = new NetworkStore(); this.downloadStore = new NetworkStore(); @@ -88,3 +86,5 @@ export default class SharedNetwork extends Base { return filters; } } + +export default inject('rootStore')(observer(SharedNetwork)); diff --git a/src/pages/network/containers/Network/actions/CreateNetwork.jsx b/src/pages/network/containers/Network/actions/CreateNetwork.jsx index fa19dca9..9ca26d81 100644 --- a/src/pages/network/containers/Network/actions/CreateNetwork.jsx +++ b/src/pages/network/containers/Network/actions/CreateNetwork.jsx @@ -40,9 +40,7 @@ const { isIpCidr, isIPv6Cidr, isIpv6 } = ipValidate; const { nameValidateWithoutChinese } = nameTypeValidate; -@inject('rootStore') -@observer -export default class CreateNetwork extends ModalAction { +export class CreateNetwork extends ModalAction { static id = 'create-network'; static title = t('Create Network'); @@ -566,3 +564,5 @@ export default class CreateNetwork extends ModalAction { ]; } } + +export default inject('rootStore')(observer(CreateNetwork)); diff --git a/src/pages/network/containers/VirtualAdapter/actions/Edit.jsx b/src/pages/network/containers/VirtualAdapter/actions/Edit.jsx index 6d9a96c6..b0ce6580 100644 --- a/src/pages/network/containers/VirtualAdapter/actions/Edit.jsx +++ b/src/pages/network/containers/VirtualAdapter/actions/Edit.jsx @@ -24,9 +24,7 @@ const portTypeItems = portTypes.split(',').map((item) => ({ value: item, })); -@inject('rootStore') -@observer -export default class Edit extends ModalAction { +export class Edit extends ModalAction { static id = 'edit-virtual-adapter'; static title = t('Edit'); @@ -112,3 +110,5 @@ export default class Edit extends ModalAction { ]; } } + +export default inject('rootStore')(observer(Edit));