Compare commits

..

4 Commits

Author SHA1 Message Date
yangsy
cdf778df93 feat: 扩展交换机端口诊断信息 2025-12-26 15:32:09 +08:00
yangsy
8761b5e45e feat: 当下游设备不存在时自动解除关联
- 获取下游设备时,如果发现下游设备不存在,将静默解除关联
2025-12-26 15:32:08 +08:00
yangsy
62c642643d feat: 告警记录支持点击设备跳转到设备详情 2025-12-26 13:42:11 +08:00
yangsy
cd0bc86803 feat: 设备关联与解除关联
- 支持配置交换机端口的下游关联设备
- 支持配置安防箱电路的下游关联设备
- 支持解除关联
- 删除设备时校验是否存在上/下游设备
2025-12-26 13:42:11 +08:00
5 changed files with 14 additions and 14 deletions

View File

@@ -22,9 +22,9 @@ export interface NdmSwitchPortInfo {
lastChangeTime: string;
opticalTemperature?: number;
opticalVoltage?: number;
opticalBiasCurrent?: number;
opticalReceivePower?: number;
opticalTransmitPower?: number;
opticalTemperature: number;
opticalVoltage: number;
opticalBiasCurrent: number;
opticalReceivePower: number;
opticalTransmitPower: number;
}

View File

@@ -258,7 +258,7 @@ const { mutate: unlinkDevice } = useMutation({
delete modifiedUpperLinkDescription.downstream?.[circuitIndex];
modifiedUpperDevice.linkDescription = JSON.stringify(modifiedUpperLinkDescription);
// 3. 发起update请求并获取最新的设备详情离线模式下直接修改本地数据
// TODO: 3. 发起update请求并获取最新的设备详情离线模式下直接修改本地数据
if (offlineDev.value) {
return { upperDevice: modifiedUpperDevice, lowerDevice: modifiedLowerDevice };
}

View File

@@ -148,7 +148,7 @@ const { mutate: linkPortToDevice, isPending: linking } = useMutation({
}
modifiedLowerDevice.linkDescription = JSON.stringify(modifiedLowerDeviceLinkDescription);
// 3. 发起update请求并获取最新的设备详情离线模式下直接修改本地数据
// TODO: 3. 发起update请求并获取最新的设备详情离线模式下直接修改本地数据
if (offlineDev.value) {
return { upperDevice: modifiedUpperDevice, lowerDevice: modifiedLowerDevice };
}

View File

@@ -208,7 +208,7 @@ const { mutate: unlinkDevice } = useMutation({
delete modifiedUpperLinkDescription.downstream?.[port.portName];
modifiedUpperDevice.linkDescription = JSON.stringify(modifiedUpperLinkDescription);
// 3. 发起update请求并获取最新的设备详情离线模式下直接修改本地数据
// TODO: 3. 发起update请求并获取最新的设备详情离线模式下直接修改本地数据
if (offlineDev.value) {
return { upperDevice: modifiedUpperDevice, lowerDevice: modifiedLowerDevice };
}
@@ -281,11 +281,11 @@ onBeforeUnmount(() => {
<NDescriptionsItem label="上行速率">{{ transformPortSpeed(port, 'in') }}</NDescriptionsItem>
<NDescriptionsItem label="下行速率">{{ transformPortSpeed(port, 'out') }}</NDescriptionsItem>
<NDescriptionsItem label="总速率">{{ transformPortSpeed(port, 'total') }}</NDescriptionsItem>
<NDescriptionsItem v-if="!!port.opticalTemperature && port.opticalTemperature >= 0" label="光模块温度">{{ port.opticalTemperature }} </NDescriptionsItem>
<NDescriptionsItem v-if="!!port.opticalVoltage && port.opticalVoltage >= 0" label="光模块电压">{{ port.opticalVoltage }} mV</NDescriptionsItem>
<NDescriptionsItem v-if="!!port.opticalBiasCurrent && port.opticalBiasCurrent >= 0" label="光模块偏置电流">{{ port.opticalBiasCurrent }} μA</NDescriptionsItem>
<NDescriptionsItem v-if="!!port.opticalReceivePower && port.opticalReceivePower >= 0" label="光模块接收功率">{{ port.opticalReceivePower / 100 }} dBm</NDescriptionsItem>
<NDescriptionsItem v-if="!!port.opticalTransmitPower && port.opticalTransmitPower >= 0" label="光模块发送功率">{{ port.opticalTransmitPower / 100 }} dBm</NDescriptionsItem>
<NDescriptionsItem v-if="port.opticalTemperature >= 0" label="光模块温度">{{ port.opticalTemperature }} </NDescriptionsItem>
<NDescriptionsItem v-if="port.opticalVoltage >= 0" label="光模块电压">{{ port.opticalVoltage }} mV</NDescriptionsItem>
<NDescriptionsItem v-if="port.opticalBiasCurrent >= 0" label="光模块偏置电流">{{ port.opticalBiasCurrent }} μA</NDescriptionsItem>
<NDescriptionsItem v-if="port.opticalReceivePower >= 0" label="光模块接收功率">{{ port.opticalReceivePower / 100 }} dBm</NDescriptionsItem>
<NDescriptionsItem v-if="port.opticalTransmitPower >= 0" label="光模块发送功率">{{ port.opticalTransmitPower / 100 }} dBm</NDescriptionsItem>
<NDescriptionsItem label="关联设备">
<span v-if="getLowerDeviceByPort(port)" style="text-decoration: underline; cursor: pointer" @click="() => navigateToLowerDevice(port)">
{{ getLowerDeviceByPort(port)?.name || '-' }}

View File

@@ -158,7 +158,7 @@ const { mutate: linkPortToDevice, isPending: linking } = useMutation({
}
modifiedLowerDevice.linkDescription = JSON.stringify(modifiedLowerDeviceLinkDescription);
// 3. 发起update请求并获取最新的设备详情离线模式下直接修改本地数据
// TODO: 3. 发起update请求并获取最新的设备详情离线模式下直接修改本地数据
if (offlineDev.value) {
return { upperDevice: modifiedUpperDevice, lowerDevice: modifiedLowerDevice };
}