Преглед изворни кода

perf(views): 修复“选择网关参数”步骤取消参数勾选显示异常问题

wangshun пре 1 недеља
родитељ
комит
0a20f9d212
1 измењених фајлова са 24 додато и 8 уклоњено
  1. 24 8
      src/views/create-device/GatewayParameters.vue

+ 24 - 8
src/views/create-device/GatewayParameters.vue

@@ -413,14 +413,30 @@ const gatewayDevDelete = (index: number) => {
 };
 
 const handleOk = () => {
-  monitorAssociationGatewayList.value = mergeArrays(
-    monitorAssociationGatewayList.value,
-    monitorChooselistEquipment.value,
-  );
-  controlAssociationGatewayList.value = mergeArrays(
-    controlAssociationGatewayList.value,
-    controlChooselistEquipment.value,
-  );
+  if (monitorChooselistEquipment.value.length) {
+    monitorAssociationGatewayList.value = mergeArrays(
+      monitorAssociationGatewayList.value,
+      monitorChooselistEquipment.value,
+    );
+  } else {
+    monitorAssociationGatewayList.value = monitorAssociationGatewayList.value.filter(
+      (item) =>
+        !(item.gatewayId === gatewayId && item.linkId === linkId && item.gatewayLinkProtocolId === groupNumberId),
+    );
+  }
+
+  if (controlChooselistEquipment.value.length) {
+    controlAssociationGatewayList.value = mergeArrays(
+      controlAssociationGatewayList.value,
+      controlChooselistEquipment.value,
+    );
+  } else {
+    controlAssociationGatewayList.value = controlAssociationGatewayList.value.filter(
+      (item) =>
+        !(item.gatewayId === gatewayId && item.linkId === linkId && item.gatewayLinkProtocolId === groupNumberId),
+    );
+  }
+
   const dataList = [...monitorAssociationGatewayList.value, ...controlAssociationGatewayList.value];
 
   groupingList.value = Array.from(new Set(dataList.map((item) => item.groupName))).map((groupName, index) => ({