6969 </a-form-item >
7070 <a-row :gutter =" 12" >
7171 <a-col :md =" 12" :lg =" 12" >
72- <a-form-item name =" provider " ref =" provider " >
72+ <a-form-item name =" fornsx " ref =" fornsx " >
7373 <template #label >
74- <tooltip-label :title =" $t('label.provider ')" :tooltip =" apiParams.provider .description" />
74+ <tooltip-label :title =" $t('label.nsx ')" :tooltip =" apiParams.fornsx .description" />
7575 </template >
76- <a-select
77- v-model:value =" form.provider"
78- v-focus =" true"
79- @change =" val => handleProviderChange(val)"
80- showSearch
81- optionFilterProp =" label"
82- :filterOption =" (input, option) => {
83- return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0
84- }"
85- :placeholder =" apiParams.provider.description" >
86- <a-select-option :value =" 'NSX'" :label =" $t('label.nsx')" > {{ $t('label.nsx') }} </a-select-option >
87- <a-select-option :value =" 'Netris'" :label =" $t('label.netris')" > {{ $t('label.netris') }} </a-select-option >
88- </a-select >
76+ <a-switch v-model:checked =" form.fornsx" @change =" val => { handleForNsxChange(val) }" />
8977 </a-form-item >
9078 </a-col >
91- <a-col :md =" 12" :lg =" 12" v-if =" form.provider === 'NSX' " >
79+ <a-col :md =" 12" :lg =" 12" v-if =" forNsx " >
9280 <a-form-item name =" nsxsupportlb" ref =" nsxsupportlb" >
9381 <template #label >
9482 <tooltip-label :title =" $t('label.nsx.supports.lb')" :tooltip =" apiParams.nsxsupportlb.description" />
9785 </a-form-item >
9886 </a-col >
9987 </a-row >
100- <a-row :gutter =" 12" v-if =" routingMode === 'dynamic' && form.provider === 'NSX' " >
88+ <a-row :gutter =" 12" v-if =" routingMode === 'dynamic' && forNsx " >
10189 <a-col :md =" 12" :lg =" 12" >
10290 <a-form-item name =" specifyasnumber" ref =" specifyasnumber" >
10391 <template #label >
151139 <CheckBoxSelectPair
152140 :resourceKey =" item.name"
153141 :checkBoxLabel =" item.description"
154- :forExternalNetProvider = " form.provider === 'NSX' || form.provider === 'Netris' "
155- :defaultCheckBoxValue =" form.provider === 'NSX' || form.provider === 'Netris' "
142+ :forNsx = " forNsx "
143+ :defaultCheckBoxValue =" forNsx "
156144 :selectOptions =" item.provider"
157145 @handle-checkselectpair-change =" handleSupportedServiceChange" />
158146 </a-list-item >
179167 <tooltip-label :title =" $t('label.serviceofferingid')" :tooltip =" apiParams.serviceofferingid.description" />
180168 </template >
181169 <a-select
182- :getPopupContainer =" (trigger) => trigger.parentNode"
183170 showSearch
184171 optionFilterProp =" label"
185172 v-model:value =" form.serviceofferingid"
202189 </template >
203190 <a-select
204191 mode =" multiple"
205- :getPopupContainer =" (trigger) => trigger.parentNode"
206192 v-model:value =" form.domainid"
207193 showSearch
208194 optionFilterProp =" label"
227213 <a-select
228214 id =" zone-selection"
229215 mode =" multiple"
230- :getPopupContainer =" (trigger) => trigger.parentNode"
231216 v-model:value =" form.zoneid"
232217 showSearch
233218 optionFilterProp =" label"
262247
263248<script >
264249import { ref , reactive , toRaw } from ' vue'
265- import { getAPI , postAPI } from ' @/api'
250+ import { api } from ' @/api'
266251import { isAdmin } from ' @/role'
267252import { mixinForm } from ' @/utils/mixin'
268253import CheckBoxSelectPair from ' @/components/CheckBoxSelectPair'
@@ -288,7 +273,6 @@ export default {
288273 zones: [],
289274 zoneLoading: false ,
290275 forNsx: false ,
291- provider: ' ' ,
292276 loading: false ,
293277 supportedServices: [],
294278 supportedServiceLoading: false ,
@@ -322,11 +306,6 @@ export default {
322306 description: ' Nsx' ,
323307 enabled: true
324308 },
325- Netris: {
326- name: ' Netris' ,
327- description: ' Netris' ,
328- enabled: true
329- },
330309 nsxSupportedServicesMap: {}
331310 }
332311 },
@@ -381,15 +360,15 @@ export default {
381360 fetchIpv6NetworkOfferingConfiguration () {
382361 this .ipv6NetworkOfferingEnabled = false
383362 var params = { name: ' ipv6.offering.enabled' }
384- getAPI (' listConfigurations' , params).then (json => {
363+ api (' listConfigurations' , params).then (json => {
385364 var value = json? .listconfigurationsresponse ? .configuration ? .[0 ].value || null
386365 this .ipv6NetworkOfferingEnabled = value === ' true'
387366 })
388367 },
389368 fetchRoutedNetworkConfiguration () {
390369 this .routedNetworkEnabled = false
391370 var params = { name: ' routed.network.vpc.enabled' }
392- getAPI (' listConfigurations' , params).then (json => {
371+ api (' listConfigurations' , params).then (json => {
393372 var value = json? .listconfigurationsresponse ? .configuration ? .[0 ].value || null
394373 this .routedNetworkEnabled = value === ' true'
395374 if (! this .routedNetworkEnabled ) {
@@ -403,7 +382,7 @@ export default {
403382 params .showicon = true
404383 params .details = ' min'
405384 this .domainLoading = true
406- getAPI (' listDomains' , params).then (json => {
385+ api (' listDomains' , params).then (json => {
407386 const listDomains = json .listdomainsresponse .domain
408387 this .domains = this .domains .concat (listDomains)
409388 }).finally (() => {
@@ -414,7 +393,7 @@ export default {
414393 const params = {}
415394 params .showicon = true
416395 this .zoneLoading = true
417- getAPI (' listZones' , params).then (json => {
396+ api (' listZones' , params).then (json => {
418397 const listZones = json .listzonesresponse .zone
419398 this .zones = this .zones .concat (listZones)
420399 }).finally (() => {
@@ -423,7 +402,7 @@ export default {
423402 },
424403 fetchSupportedServiceData () {
425404 var services = []
426- if (this .provider === ' NSX ' ) {
405+ if (this .forNsx ) {
427406 services .push ({
428407 name: ' Dhcp' ,
429408 enabled: true ,
@@ -466,49 +445,6 @@ export default {
466445 enabled: true ,
467446 provider: [{ name: ' VpcVirtualRouter' }]
468447 })
469- } else if (this .provider === ' Netris' ) {
470- services .push ({
471- name: ' Dhcp' ,
472- enabled: true ,
473- provider: [
474- { name: ' VpcVirtualRouter' }
475- ]
476- })
477- services .push ({
478- name: ' Dns' ,
479- enabled: true ,
480- provider: [{ name: ' VpcVirtualRouter' }]
481- })
482- services .push ({
483- name: ' Lb' ,
484- enabled: true ,
485- provider: [{ name: ' Netris' }]
486- })
487- services .push ({
488- name: ' StaticNat' ,
489- enabled: true ,
490- provider: [{ name: ' Netris' }]
491- })
492- services .push ({
493- name: ' SourceNat' ,
494- enabled: true ,
495- provider: [{ name: ' Netris' }]
496- })
497- services .push ({
498- name: ' NetworkACL' ,
499- enabled: true ,
500- provider: [{ name: ' Netris' }]
501- })
502- services .push ({
503- name: ' PortForwarding' ,
504- enabled: true ,
505- provider: [{ name: ' Netris' }]
506- })
507- services .push ({
508- name: ' UserData' ,
509- enabled: true ,
510- provider: [{ name: ' VpcVirtualRouter' }]
511- })
512448 } else {
513449 services .push ({
514450 name: ' Dhcp' ,
@@ -592,13 +528,6 @@ export default {
592528 services = services .filter (service => {
593529 return ! [' SourceNat' , ' StaticNat' , ' Lb' , ' PortForwarding' , ' Vpn' ].includes (service .name )
594530 })
595- if ([' NSX' , ' Netris' ].includes (this .provider )) {
596- services .push ({
597- name: ' Gateway' ,
598- enabled: true ,
599- provider: [{ name: this .provider }]
600- })
601- }
602531 }
603532 for (var i in services) {
604533 services[i].description = services[i].name
@@ -609,16 +538,15 @@ export default {
609538 self .supportedServiceLoading = false
610539 }, 50 )
611540 },
612- async handleProviderChange ( value ) {
613- this .provider = value
614- if (this . provider === ' NSX ' ) {
541+ async handleForNsxChange ( forNsx ) {
542+ this .forNsx = forNsx
543+ if (forNsx ) {
615544 this .form .nsxsupportlb = true
616545 this .handleNsxLbService (true )
617546 }
618547 this .fetchSupportedServiceData ()
619548 },
620549 handleNsxLbService (supportLb ) {
621- console .log (supportLb)
622550 if (! supportLb) {
623551 this .supportedServices = this .supportedServices .filter (svc => svc .name !== ' Lb' )
624552 }
@@ -663,7 +591,7 @@ export default {
663591 params .issystem = true
664592 params .systemvmtype = ' domainrouter'
665593 this .serviceOfferingLoading = true
666- getAPI (' listServiceOfferings' , params).then (json => {
594+ api (' listServiceOfferings' , params).then (json => {
667595 const listServiceOfferings = json .listserviceofferingsresponse .serviceoffering
668596 this .serviceOfferings = this .serviceOfferings .concat (listServiceOfferings)
669597 }).finally (() => {
@@ -708,15 +636,10 @@ export default {
708636 if (values .internetprotocol ) {
709637 params .internetprotocol = values .internetprotocol
710638 }
711- const forNsx = values .provider === ' NSX'
712- if (forNsx) {
713- params .provider = ' NSX'
639+ if (values .fornsx === true ) {
640+ params .fornsx = true
714641 params .nsxsupportlb = values .nsxsupportlb
715642 }
716- const forNetris = values .provider === ' Netris'
717- if (forNetris) {
718- params .provider = ' Netris'
719- }
720643 params .networkmode = values .networkmode
721644 if (! values .forVpc ) {
722645 params .specifyasnumber = values .specifyasnumber
@@ -767,7 +690,7 @@ export default {
767690 if (values .enable ) {
768691 params .enable = values .enable
769692 }
770- postAPI (' createVPCOffering' , params).then (json => {
693+ api (' createVPCOffering' , params).then (json => {
771694 this .$message .success (` ${ this .$t (' message.create.vpc.offering' )} : ` + values .name )
772695 this .$emit (' refresh-data' )
773696 this .closeAction ()
0 commit comments