fix: network payload

Signed-off-by: Andy Lee <andy.lee@suse.com>
This commit is contained in:
Andy Lee 2026-03-19 12:40:36 +08:00
parent b61296ae65
commit c62f636594
No known key found for this signature in database
GPG Key ID: 39DC4436AE3564D5

View File

@ -12,6 +12,7 @@ import { NETWORK_TYPE } from '../../config/types';
const { L2VLAN, UNTAGGED } = NETWORK_TYPE; const { L2VLAN, UNTAGGED } = NETWORK_TYPE;
const SHARE_STORAGE_NETWORK = 'share-storage-network'; const SHARE_STORAGE_NETWORK = 'share-storage-network';
const NETWORK = 'network';
const DEFAULT_DEDICATED_NETWORK = { const DEFAULT_DEDICATED_NETWORK = {
vlan: '', vlan: '',
@ -68,17 +69,18 @@ export default {
try { try {
const parsedValue = JSON.parse(this.value.value || this.value.default || '{}'); const parsedValue = JSON.parse(this.value.value || this.value.default || '{}');
const parsedNetwork = parsedValue?.[NETWORK] || parsedValue || {};
if (parsedValue && typeof parsedValue === 'object') { if (parsedValue && typeof parsedValue === 'object') {
shareStorageNetwork = !!parsedValue[SHARE_STORAGE_NETWORK]; shareStorageNetwork = !!parsedValue[SHARE_STORAGE_NETWORK];
networkType = 'vlan' in parsedValue ? L2VLAN : UNTAGGED; networkType = 'vlan' in parsedNetwork ? L2VLAN : UNTAGGED;
dedicatedNetwork = { dedicatedNetwork = {
vlan: parsedValue.vlan || '', vlan: parsedNetwork.vlan || '',
clusterNetwork: parsedValue.clusterNetwork || '', clusterNetwork: parsedNetwork.clusterNetwork || '',
range: parsedValue.range || '', range: parsedNetwork.range || '',
}; };
exclude = parsedValue?.exclude?.toString().split(',') || []; exclude = parsedNetwork?.exclude?.toString().split(',') || [];
enabled = shareStorageNetwork || !!(parsedValue.vlan || parsedValue.clusterNetwork || parsedValue.range); enabled = shareStorageNetwork || !!(parsedNetwork.vlan || parsedNetwork.clusterNetwork || parsedNetwork.range);
} }
} catch (error) { } catch (error) {
enabled = false; enabled = false;
@ -198,17 +200,19 @@ export default {
} }
if (this.showDedicatedNetworkConfig) { if (this.showDedicatedNetworkConfig) {
value[NETWORK] = {};
if (this.showVlan) { if (this.showVlan) {
value.vlan = this.dedicatedNetwork.vlan; value[NETWORK].vlan = this.dedicatedNetwork.vlan;
} }
value.clusterNetwork = this.dedicatedNetwork.clusterNetwork; value[NETWORK].clusterNetwork = this.dedicatedNetwork.clusterNetwork;
value.range = this.dedicatedNetwork.range; value[NETWORK].range = this.dedicatedNetwork.range;
const excludeList = this.exclude.filter((ip) => ip); const excludeList = this.exclude.filter((ip) => ip);
if (Array.isArray(excludeList) && excludeList.length > 0) { if (Array.isArray(excludeList) && excludeList.length > 0) {
value.exclude = excludeList; value[NETWORK].exclude = excludeList;
} }
} }