feat: 网元公共参数配置数据名称调整

This commit is contained in:
TsMask
2024-05-09 15:54:48 +08:00
parent fa4be253f7
commit b5f6a5d24a

View File

@@ -32,51 +32,42 @@ let state: StateType = reactive({
syncNe: [], syncNe: [],
syncMsg: '', syncMsg: '',
from: { from: {
SIPIP: '192.168.5.60', basic: {
N2IP: '192.168.5.60', plmnId: {
mcc: '001',
OMCIP: '172.60.5.100', mnc: '01',
IMSIP: '172.60.5.110', },
AMFIP: '172.60.5.120', tac: '4388',
AUSFIP: '172.60.5.130', snssai: {
UDMIP: '172.60.5.140', sst: '1',
ADBIP: '172.60.5.140', sd: '000001',
SMFIP: '172.60.5.150', },
PCFIP: '172.60.5.160', dnn_data: 'internet',
NSSFIP: '172.60.5.170', dnn_ims: 'ims',
NRFIP: '172.60.5.180', },
UPFIP: '172.60.5.190', external: {
N3IWFIP: '172.60.5.230', amfn2_ip: '192.168.5.60',
upfn3_ip: '192.168.8.190/24',
S1_MMEIP: '192.168.5.60', upfn3_gw: '192.168.1.1',
S20_MMEIP: '172.60.5.220', upfn6_ip: '192.168.8.191/24',
S21_MMEIP: '172.60.5.221', upfn6_gw: '192.168.1.1',
ue_pool: '10.2.1.0/24',
LTETAC: '88', },
MCC: '460', sbi: {
MNC: '01', omc_ip: '172.60.5.100',
SST: '1', ims_ip: '172.60.5.110',
SD: '010204', amf_ip: '172.60.5.120',
DNN: 'cmnet', ausf_ip: '172.60.5.130',
udm_ip: '172.60.5.140',
NRTAC: '88', adb_ip: '172.60.5.140',
KPI_TIMER: '60', // KPI上报周期秒 smf_ip: '172.60.5.150',
pcf_ip: '172.60.5.160',
UPFType: 'Light', // UPF类型 Standard标准版 Light轻量版 nssf_ip: '172.60.5.170',
UEIP: '10.10.40.0', nrf_ip: '172.60.5.180',
UEIPMask: '255.255.255.0', upf_ip: '172.60.5.190',
mme_ip: '172.60.5.220',
N3IP: '192.168.5.191', n3iwf_ip: '172.60.5.230',
N3Mask: '255.255.240.0', },
N3GW: '192.168.1.1',
N3PCI: '0000:13:00.0',
N3MAC: '00:0c:29:10:ac:d7',
N6IP: '192.168.5.191',
N6Mask: '255.255.240.0',
N6GW: '192.168.1.1',
N6PCI: '0000:1b:00.0',
N6MAC: '00:0c:29:10:ac:e1',
}, },
confirmLoading: false, confirmLoading: false,
}); });
@@ -126,7 +117,7 @@ function fnGetData() {
]).then(resArr => { ]).then(resArr => {
// 已保存的配置 // 已保存的配置
if (resArr[0].code === RESULT_CODE_SUCCESS) { if (resArr[0].code === RESULT_CODE_SUCCESS) {
state.from = resArr[0].data; Object.assign(state.from, resArr[0].data);
} }
// 填充固定网元类型的ip // 填充固定网元类型的ip
if ( if (
@@ -136,35 +127,35 @@ function fnGetData() {
for (const item of resArr[1].rows) { for (const item of resArr[1].rows) {
switch (item.neType) { switch (item.neType) {
case 'IMS': case 'IMS':
state.from.IMSIP = item.ip; state.from.sbi.ims_ip = item.ip;
break; break;
case 'AMF': case 'AMF':
state.from.AMFIP = item.ip; state.from.sbi.amf_ip = item.ip;
break; break;
case 'AUSF': case 'AUSF':
state.from.AUSFIP = item.ip; state.from.sbi.ausf_ip = item.ip;
break; break;
case 'UDM': case 'UDM':
state.from.UDMIP = item.ip; state.from.sbi.udm_ip = item.ip;
state.from.ADBIP = item.ip; state.from.sbi.adb_ip = item.ip;
break; break;
case 'SMF': case 'SMF':
state.from.SMFIP = item.ip; state.from.sbi.smf_ip = item.ip;
break; break;
case 'PCF': case 'PCF':
state.from.PCFIP = item.ip; state.from.sbi.pcf_ip = item.ip;
break; break;
case 'NSSF': case 'NSSF':
state.from.NSSFIP = item.ip; state.from.sbi.nssf_ip = item.ip;
break; break;
case 'NRF': case 'NRF':
state.from.NRFIP = item.ip; state.from.sbi.nrf_ip = item.ip;
break; break;
case 'UPF': case 'UPF':
state.from.UPFIP = item.ip; state.from.sbi.upf_ip = item.ip;
break; break;
case 'N3IWF': case 'N3IWF':
state.from.N3IWFIP = item.ip; state.from.sbi.n3iwf_ip = item.ip;
break; break;
} }
} }
@@ -202,7 +193,19 @@ onMounted(() => {
<PageContainer> <PageContainer>
<a-card :bordered="false"> <a-card :bordered="false">
<!-- 插槽-卡片左侧侧 --> <!-- 插槽-卡片左侧侧 -->
<template #title> </template> <template #title>
<a-form layout="inline" :label-col="{ span: 6 }" :label-wrap="true">
<a-form-item label="OMC" name="OMC">
<a-input
v-model:value="state.from.sbi.omc_ip"
allow-clear
:placeholder="t('common.inputPlease')"
:maxlength="50"
>
</a-input>
</a-form-item>
</a-form>
</template>
<!-- 插槽-卡片右侧 --> <!-- 插槽-卡片右侧 -->
<template #extra> <template #extra>
@@ -235,18 +238,9 @@ onMounted(() => {
<a-divider orientation="left">Basic</a-divider> <a-divider orientation="left">Basic</a-divider>
<a-row :gutter="16"> <a-row :gutter="16">
<a-col :lg="12" :md="12" :xs="24"> <a-col :lg="12" :md="12" :xs="24">
<a-form-item label="N2IP" name="N2IP"> <a-form-item label="DNN DATA" name="basic.dnn_data">
<a-input <a-input
v-model:value="state.from.N2IP" v-model:value="state.from.basic.dnn_data"
allow-clear
:placeholder="t('common.inputPlease')"
:maxlength="50"
>
</a-input>
</a-form-item>
<a-form-item label="SIPIP" name="SIPIP">
<a-input
v-model:value="state.from.SIPIP"
allow-clear allow-clear
:placeholder="t('common.inputPlease')" :placeholder="t('common.inputPlease')"
:maxlength="50" :maxlength="50"
@@ -255,18 +249,9 @@ onMounted(() => {
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :lg="12" :md="12" :xs="24"> <a-col :lg="12" :md="12" :xs="24">
<a-form-item label="NRTAC" name="NRTAC"> <a-form-item label="DNN IMS" name="basic.dnn_ims">
<a-input <a-input
v-model:value="state.from.NRTAC" v-model:value="state.from.basic.dnn_ims"
allow-clear
:placeholder="t('common.inputPlease')"
:maxlength="50"
>
</a-input>
</a-form-item>
<a-form-item label="DNN" name="DNN">
<a-input
v-model:value="state.from.DNN"
allow-clear allow-clear
:placeholder="t('common.inputPlease')" :placeholder="t('common.inputPlease')"
:maxlength="50" :maxlength="50"
@@ -277,20 +262,20 @@ onMounted(() => {
<a-col :lg="6" :md="6" :xs="24"> <a-col :lg="6" :md="6" :xs="24">
<a-form-item <a-form-item
label="MCC" label="MCC"
name="MCC" name="basic.plmnId.mcc"
:label-col="{ span: 13 }" :label-col="{ span: 13 }"
:label-wrap="true" :label-wrap="true"
> >
<a-input <a-input
v-model:value="state.from.MCC" v-model:value="state.from.basic.plmnId.mcc"
placeholder="1-65535" placeholder="1-65535"
></a-input> ></a-input>
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :lg="6" :md="6" :xs="24"> <a-col :lg="6" :md="6" :xs="24">
<a-form-item label="MNC" name="MNC"> <a-form-item label="MNC" name="basic.plmnId.mnc">
<a-input <a-input
v-model:value="state.from.MNC" v-model:value="state.from.basic.plmnId.mnc"
placeholder="1-65535" placeholder="1-65535"
></a-input> ></a-input>
</a-form-item> </a-form-item>
@@ -298,12 +283,12 @@ onMounted(() => {
<a-col :lg="6" :md="6" :xs="24"> <a-col :lg="6" :md="6" :xs="24">
<a-form-item <a-form-item
label="SST" label="SST"
name="SST" name="basic.snssai.sst"
:label-col="{ span: 13 }" :label-col="{ span: 13 }"
:label-wrap="true" :label-wrap="true"
> >
<a-input-number <a-input-number
v-model:value="state.from.SST" v-model:value="state.from.basic.snssai.sst"
:min="1" :min="1"
:max="3" :max="3"
placeholder="1-3" placeholder="1-3"
@@ -311,21 +296,29 @@ onMounted(() => {
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :lg="6" :md="6" :xs="24"> <a-col :lg="6" :md="6" :xs="24">
<a-form-item label="SD" name="SD"> <a-form-item label="SD" name="basic.snssai.sd">
<a-input <a-input
v-model:value="state.from.SD" v-model:value="state.from.basic.snssai.sd"
placeholder="1-65535"
></a-input>
</a-form-item>
</a-col>
<a-col :lg="12" :md="12" :xs="24">
<a-form-item label="TAC" name="basic.tac">
<a-input
v-model:value="state.from.basic.tac"
placeholder="1-65535" placeholder="1-65535"
></a-input> ></a-input>
</a-form-item> </a-form-item>
</a-col> </a-col>
</a-row> </a-row>
<a-divider orientation="left">OMC</a-divider> <a-divider orientation="left">External</a-divider>
<a-row :gutter="16"> <a-row :gutter="16">
<a-col :lg="12" :md="12" :xs="24"> <a-col :lg="12" :md="12" :xs="24">
<a-form-item label="OMCIP" name="OMCIP"> <a-form-item label="N2_IP" name="external.amfn2_ip">
<a-input <a-input
v-model:value="state.from.OMCIP" v-model:value="state.from.external.amfn2_ip"
allow-clear allow-clear
:placeholder="t('common.inputPlease')" :placeholder="t('common.inputPlease')"
:maxlength="50" :maxlength="50"
@@ -334,49 +327,50 @@ onMounted(() => {
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :lg="12" :md="12" :xs="24"> <a-col :lg="12" :md="12" :xs="24">
<a-form-item label="KPI_TIMER" name="KPI_TIMER"> <a-form-item label="UE_POOL" name="external.ue_pool">
<a-input-number <a-input
v-model:value="state.from.KPI_TIMER" v-model:value="state.from.external.ue_pool"
:min="1" allow-clear
:max="65535" :placeholder="t('common.inputPlease')"
placeholder="1-65535" :maxlength="50"
></a-input-number> >
</a-input>
</a-form-item> </a-form-item>
</a-col> </a-col>
</a-row>
<a-divider orientation="left">MME</a-divider>
<a-row :gutter="16">
<a-col :lg="12" :md="12" :xs="24"> <a-col :lg="12" :md="12" :xs="24">
<a-form-item label="S1_MMEIP" name="S1_MMEIP"> <a-form-item label="N6_IP" name="external.upfn6_ip">
<a-input <a-input
v-model:value="state.from.S1_MMEIP" v-model:value="state.from.external.upfn6_ip"
allow-clear allow-clear
:placeholder="t('common.inputPlease')" :placeholder="t('common.inputPlease')"
:maxlength="50" :maxlength="50"
> >
</a-input> </a-input>
</a-form-item> </a-form-item>
<a-form-item label="LTETAC" name="LTETAC"> <a-form-item label="N6_GW" name="external.upfn6_gw">
<a-input <a-input
v-model:value="state.from.LTETAC" v-model:value="state.from.external.upfn6_gw"
placeholder="1-65535" allow-clear
></a-input> :placeholder="t('common.inputPlease')"
:maxlength="50"
>
</a-input>
</a-form-item> </a-form-item>
</a-col> </a-col>
<a-col :lg="12" :md="12" :xs="24"> <a-col :lg="12" :md="12" :xs="24">
<a-form-item label="S20_MMEIP" name="S20_MMEIP"> <a-form-item label="N3_IP" name="external.upfn3_ip">
<a-input <a-input
v-model:value="state.from.S20_MMEIP" v-model:value="state.from.external.upfn3_ip"
allow-clear allow-clear
:placeholder="t('common.inputPlease')" :placeholder="t('common.inputPlease')"
:maxlength="50" :maxlength="50"
> >
</a-input> </a-input>
</a-form-item> </a-form-item>
<a-form-item label="S21_MMEIP" name="S21_MMEIP"> <a-form-item label="N3_GW" name="external.upfn3_gw">
<a-input <a-input
v-model:value="state.from.S21_MMEIP" v-model:value="state.from.external.upfn3_gw"
allow-clear allow-clear
:placeholder="t('common.inputPlease')" :placeholder="t('common.inputPlease')"
:maxlength="50" :maxlength="50"
@@ -385,172 +379,6 @@ onMounted(() => {
</a-form-item> </a-form-item>
</a-col> </a-col>
</a-row> </a-row>
<a-divider orientation="left">UPF</a-divider>
<a-row :gutter="16">
<a-col :lg="24" :md="24" :xs="24">
<a-form-item
label="UPFType"
name="UPFType"
:label-col="{ span: 3 }"
:label-wrap="true"
>
<a-select
v-model:value="state.from.UPFType"
:placeholder="t('common.selectPlease')"
>
<a-select-option value="Standard" key="Standard">
Standard
</a-select-option>
<a-select-option value="Light" key="Light">
Light
</a-select-option>
</a-select>
</a-form-item>
</a-col>
<!-- UPF轻量 -->
<template v-if="state.from.UPFType === 'Light'">
<a-col :lg="12" :md="12" :xs="24">
<a-form-item label="N3IP" name="N3IP">
<a-input
v-model:value="state.from.N3IP"
allow-clear
:placeholder="t('common.inputPlease')"
:maxlength="50"
>
</a-input>
</a-form-item>
<a-form-item label="N3Mask" name="N3Mask">
<a-input
v-model:value="state.from.N3Mask"
allow-clear
:placeholder="t('common.inputPlease')"
:maxlength="50"
>
</a-input>
</a-form-item>
</a-col>
<a-col :lg="12" :md="12" :xs="24">
<a-form-item label="UEIP" name="UEIP">
<a-input
v-model:value="state.from.UEIP"
allow-clear
:placeholder="t('common.inputPlease')"
:maxlength="50"
>
</a-input>
</a-form-item>
<a-form-item label="UEIPMask" name="UEIPMask">
<a-input
v-model:value="state.from.UEIPMask"
allow-clear
:placeholder="t('common.inputPlease')"
:maxlength="50"
>
</a-input>
</a-form-item>
</a-col>
</template>
<!-- UPF标准 -->
<template v-if="state.from.UPFType === 'Standard'">
<!-- N3 -->
<a-col :lg="12" :md="12" :xs="24">
<a-form-item label="N3IP" name="N3IP">
<a-input
v-model:value="state.from.N3IP"
allow-clear
:placeholder="t('common.inputPlease')"
:maxlength="50"
>
</a-input>
</a-form-item>
<a-form-item label="N3Mask" name="N3Mask">
<a-input
v-model:value="state.from.N3Mask"
allow-clear
:placeholder="t('common.inputPlease')"
:maxlength="50"
>
</a-input>
</a-form-item>
<a-form-item label="N3GW" name="N3GW">
<a-input
v-model:value="state.from.N3GW"
allow-clear
:placeholder="t('common.inputPlease')"
:maxlength="50"
>
</a-input>
</a-form-item>
<a-form-item label="N3PCI" name="N3PCI">
<a-input
v-model:value="state.from.N3PCI"
allow-clear
:placeholder="t('common.inputPlease')"
:maxlength="50"
>
</a-input>
</a-form-item>
<a-form-item label="N3MAC" name="N3MAC">
<a-input
v-model:value="state.from.N3MAC"
allow-clear
:placeholder="t('common.inputPlease')"
:maxlength="50"
>
</a-input>
</a-form-item>
</a-col>
<!-- N6 -->
<a-col :lg="12" :md="12" :xs="24">
<a-form-item label="N6IP" name="N6IP">
<a-input
v-model:value="state.from.N6IP"
allow-clear
:placeholder="t('common.inputPlease')"
:maxlength="50"
>
</a-input>
</a-form-item>
<a-form-item label="N6Mask" name="N6Mask">
<a-input
v-model:value="state.from.N6Mask"
allow-clear
:placeholder="t('common.inputPlease')"
:maxlength="50"
>
</a-input>
</a-form-item>
<a-form-item label="N6GW" name="N6GW">
<a-input
v-model:value="state.from.N6GW"
allow-clear
:placeholder="t('common.inputPlease')"
:maxlength="50"
>
</a-input>
</a-form-item>
<a-form-item label="N6PCI" name="N6PCI">
<a-input
v-model:value="state.from.N6PCI"
allow-clear
:placeholder="t('common.inputPlease')"
:maxlength="50"
>
</a-input>
</a-form-item>
<a-form-item label="N6MAC" name="N6MAC">
<a-input
v-model:value="state.from.N6MAC"
allow-clear
:placeholder="t('common.inputPlease')"
:maxlength="50"
>
</a-input>
</a-form-item>
</a-col>
</template>
</a-row>
</a-form> </a-form>
</a-card> </a-card>