Browse Source

fix: #8400 #9275 设备 修复切换卡片/批量删除/取消选择后再选中回显上次选中问题

jackhoo_98 3 years ago
parent
commit
b05a2611ad
1 changed files with 20 additions and 13 deletions
  1. 20 13
      src/pages/device/Instance/index.tsx

+ 20 - 13
src/pages/device/Instance/index.tsx

@@ -470,6 +470,11 @@ const Instance = () => {
     return url.toString();
     return url.toString();
   };
   };
 
 
+  const unSelect = () => {
+    setBindKeys([]);
+    InstanceModel.selectedRows.clear();
+  };
+
   const menu = (
   const menu = (
     <Menu>
     <Menu>
       <Menu.Item key="1">
       <Menu.Item key="1">
@@ -547,19 +552,20 @@ const Instance = () => {
             popConfirm={{
             popConfirm={{
               title: '已启用的设备无法删除,确认删除选中的禁用状态设备?',
               title: '已启用的设备无法删除,确认删除选中的禁用状态设备?',
               onConfirm: () => {
               onConfirm: () => {
-                const array: any = [];
-                InstanceModel.selectedRows.forEach((value, key) => {
-                  if (value !== 'notActive') {
-                    InstanceModel.selectedRows.delete(key);
-                    array.push(key);
-                  }
-                });
+                // const array: any = [];
+                // InstanceModel.selectedRows.forEach((value, key) => {
+                //   if (value !== 'notActive') {
+                //     InstanceModel.selectedRows.delete(key);
+                //     array.push(key);
+                //   }
+                // });
                 if (!InstanceModel.selectedRows.size) return;
                 if (!InstanceModel.selectedRows.size) return;
                 service.batchDeleteDevice([...InstanceModel.selectedRows.keys()]).then((resp) => {
                 service.batchDeleteDevice([...InstanceModel.selectedRows.keys()]).then((resp) => {
                   if (resp.status === 200) {
                   if (resp.status === 200) {
                     onlyMessage('操作成功');
                     onlyMessage('操作成功');
                     actionRef.current?.reset?.();
                     actionRef.current?.reset?.();
-                    setBindKeys(array);
+                    // setBindKeys(array);
+                    unSelect();
                   }
                   }
                 });
                 });
               },
               },
@@ -581,8 +587,7 @@ const Instance = () => {
                 service.batchDeployDevice(bindKeys).then((resp) => {
                 service.batchDeployDevice(bindKeys).then((resp) => {
                   if (resp.status === 200) {
                   if (resp.status === 200) {
                     onlyMessage('操作成功');
                     onlyMessage('操作成功');
-                    setBindKeys([]);
-                    InstanceModel.selectedRows.clear();
+                    unSelect();
                     actionRef.current?.reset?.();
                     actionRef.current?.reset?.();
                   }
                   }
                 });
                 });
@@ -606,8 +611,7 @@ const Instance = () => {
                 service.batchUndeployDevice(bindKeys).then((resp) => {
                 service.batchUndeployDevice(bindKeys).then((resp) => {
                   if (resp.status === 200) {
                   if (resp.status === 200) {
                     onlyMessage('操作成功');
                     onlyMessage('操作成功');
-                    setBindKeys([]);
-                    InstanceModel.selectedRows.clear();
+                    unSelect();
                     actionRef.current?.reset?.();
                     actionRef.current?.reset?.();
                   }
                   }
                 });
                 });
@@ -726,7 +730,7 @@ const Instance = () => {
           return (
           return (
             <a
             <a
               onClick={() => {
               onClick={() => {
-                setBindKeys([]);
+                unSelect();
               }}
               }}
             >
             >
               取消选择
               取消选择
@@ -781,6 +785,9 @@ const Instance = () => {
             <Button>批量操作</Button>
             <Button>批量操作</Button>
           </Dropdown>,
           </Dropdown>,
         ]}
         ]}
+        modelChange={() => {
+          unSelect();
+        }}
         cardRender={(record) => (
         cardRender={(record) => (
           <DeviceCard
           <DeviceCard
             {...record}
             {...record}