diff --git a/src/config/section/network.js b/src/config/section/network.js index 0efcdebd6..301cdf777 100644 --- a/src/config/section/network.js +++ b/src/config/section/network.js @@ -285,7 +285,13 @@ export default { icon: 'plus', label: 'label.add.private.gateway', listView: true, - args: ['physicalnetworkid', 'vlan', 'ipaddress', 'gateway', 'netmask', 'sourcenatsupported', 'aclid'], + args: (record, store) => { + var fields = ['vpcid', 'physicalnetworkid', 'vlan', 'ipaddress', 'gateway', 'netmask', 'sourcenatsupported', 'aclid'] + if (store.apis.createPrivateGateway.params.filter(x => x.name === 'bypassvlanoverlapcheck').length > 0) { + fields.push('bypassvlanoverlapcheck') + } + return fields + }, mapping: { aclid: { api: 'listNetworkACLLists' diff --git a/src/views/network/VpcTab.vue b/src/views/network/VpcTab.vue index cb80bf5b9..d66105bef 100644 --- a/src/views/network/VpcTab.vue +++ b/src/views/network/VpcTab.vue @@ -130,6 +130,13 @@ v-decorator="['vlan', {rules: [{ required: true, message: `${this.$t('label.required')}` }]}]" > + + + { + } + if (data.bypassvlanoverlapcheck) { + params.bypassvlanoverlapcheck = data.bypassvlanoverlapcheck + } + + api('createPrivateGateway', params).then(response => { this.$store.dispatch('AddAsyncJob', { title: `Successfully added Private Gateway`, jobid: response.createprivategatewayresponse.jobid,