106
106
</a-select >
107
107
<p class =" modal-form__label" >{{ $t('label.publicip') }}:</p >
108
108
<a-input v-model:value =" addNetworkData.ip" ></a-input >
109
+ <br >
110
+ <a-checkbox v-model:checked =" addNetworkData.makedefault" >
111
+ {{ $t('label.make.default') }}
112
+ </a-checkbox >
113
+ <br >
109
114
</div >
110
115
111
116
<div :span =" 24" class =" action-button" >
@@ -248,13 +253,15 @@ export default {
248
253
data () {
249
254
return {
250
255
vm: {},
256
+ nic: {},
251
257
showAddNetworkModal: false ,
252
258
showUpdateIpModal: false ,
253
259
showSecondaryIpModal: false ,
254
260
addNetworkData: {
255
261
allNetworks: [],
256
262
network: ' ' ,
257
- ip: ' '
263
+ ip: ' ' ,
264
+ makedefault: false
258
265
},
259
266
loadingNic: false ,
260
267
editIpAddressNic: ' ' ,
@@ -332,6 +339,7 @@ export default {
332
339
this .showSecondaryIpModal = false
333
340
this .addNetworkData .network = ' '
334
341
this .addNetworkData .ip = ' '
342
+ this .addNetworkData .makedefault = false
335
343
this .editIpAddressValue = ' '
336
344
this .newSecondaryIp = ' '
337
345
},
@@ -368,7 +376,19 @@ export default {
368
376
this .$pollJob ({
369
377
jobId: response .addnictovirtualmachineresponse .jobid ,
370
378
successMessage: this .$t (' message.success.add.network' ),
371
- successMethod : () => {
379
+ successMethod: async () => {
380
+ if (this .addNetworkData .makedefault ) {
381
+ try {
382
+ this .nic = await this .getNic (params .networkid , params .virtualmachineid )
383
+ if (this .nic ) {
384
+ this .setAsDefault (this .nic )
385
+ } else {
386
+ this .$notifyError (' NIC data not found.' )
387
+ }
388
+ } catch (error) {
389
+ this .$notifyError (' Failed to fetch NIC data.' )
390
+ }
391
+ }
372
392
this .loadingNic = false
373
393
this .closeModals ()
374
394
},
@@ -390,6 +410,14 @@ export default {
390
410
this .loadingNic = false
391
411
})
392
412
},
413
+ getNic (networkid , virtualmachineid ) {
414
+ const params = {}
415
+ params .virtualmachineid = virtualmachineid
416
+ params .networkid = networkid
417
+ return api (' listNics' , params).then (response => {
418
+ return response .listnicsresponse .nic [0 ]
419
+ })
420
+ },
393
421
setAsDefault (item ) {
394
422
this .loadingNic = true
395
423
api (' updateDefaultNicForVirtualMachine' , {
0 commit comments