From 682a74e858e5a6cd24d36183931d3afafd6443d7 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期三, 31 三月 2021 10:56:48 +0800
Subject: [PATCH] 2021-03-31

---
 src/tabviews/commontable/index.jsx |   19 +++++++++++++------
 1 files changed, 13 insertions(+), 6 deletions(-)

diff --git a/src/tabviews/commontable/index.jsx b/src/tabviews/commontable/index.jsx
index 12d7f02..aed2a1b 100644
--- a/src/tabviews/commontable/index.jsx
+++ b/src/tabviews/commontable/index.jsx
@@ -717,8 +717,9 @@
     let result = await Api.genericInterface(param)
     if (result.status) {
       let data = fromJS(this.state.data).toJS()
+      let selectedData = fromJS(this.state.selectedData).toJS()
       if (result.data && result.data[0]) {
-        let _data = result.data[0]
+        let _data = result.data[0] || {}
 
         if (absFields.length) {
           absFields.forEach(field => {
@@ -728,18 +729,23 @@
             _data[field] = Math.abs(_data[field])
           })
         }
+        _data.$$uuid = _data[setting.primaryKey] || ''
+        _data.$$BID = BID || ''
 
         try {
           data = data.map(item => {
-            if (item[setting.primaryKey] === _data[setting.primaryKey]) {
+            if (item.$$uuid === _data.$$uuid) {
               _data.key = item.key
-              _data.$$uuid = _data[setting.primaryKey] || ''
-              _data.$$BID = BID || ''
-
               return _data
             } else {
               return item
             }
+          })
+          selectedData = selectedData.map(item => {
+            if (_data.$$uuid === item.$$uuid) {
+              return _data
+            }
+            return item
           })
         } catch {
           console.warn('鏁版嵁鏌ヨ閿欒')
@@ -747,7 +753,8 @@
       }
 
       this.setState({
-        data: data,
+        data,
+        selectedData,
         loading: false
       })
     } else {

--
Gitblit v1.8.0