From fad2d49a5335dcfccb6b532a4a0053fafb61fa3b Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期五, 09 五月 2025 16:43:54 +0800
Subject: [PATCH] 2025-05-09

---
 src/tabviews/custom/components/card/double-data-card/index.jsx |   82 +++++++++++++++++++++-------------------
 1 files changed, 43 insertions(+), 39 deletions(-)

diff --git a/src/tabviews/custom/components/card/double-data-card/index.jsx b/src/tabviews/custom/components/card/double-data-card/index.jsx
index 223d05d..4fac5cc 100644
--- a/src/tabviews/custom/components/card/double-data-card/index.jsx
+++ b/src/tabviews/custom/components/card/double-data-card/index.jsx
@@ -282,17 +282,18 @@
     if (config.$cache) {
       let getData = (res) => {
         return res.map((item, index) => {
+          let _children = item[config.setting.subdata]
+          
+          delete item[config.setting.subdata]
+          if (config.setting.subdata === 'sub_data_string') {
+            _children = this.parseSubData(_children)
+          } else if (item.sub_data_string) {
+            _children = this.parseSubData(item.sub_data_string)
+          }
+
           let children = []
 
-          if (item[config.setting.subdata]) {
-            let _children = item[config.setting.subdata]
-
-            delete item[config.setting.subdata]
-
-            if (config.setting.subdata === 'sub_data_string') {
-              _children = this.parseSubData(_children)
-            }
-
+          if (_children) {
             _children.forEach((cell, i) => {
               cell.key = i
               cell.$$uuid = cell[config.setting.subKey] || ''
@@ -679,16 +680,17 @@
       if (type === 'plus') {
         let _data = (this.state.data || []).concat(result.data || [])
         data = _data.map((item, index) => {
-          if (item[config.setting.subdata]) {
-            let children = []
-            let _children = item[config.setting.subdata]
+          let _children = item[config.setting.subdata]
+          
+          delete item[config.setting.subdata]
+          if (config.setting.subdata === 'sub_data_string') {
+            _children = this.parseSubData(_children)
+          } else if (item.sub_data_string) {
+            _children = this.parseSubData(item.sub_data_string)
+          }
 
-            delete item[config.setting.subdata]
-
-            if (config.setting.subdata === 'sub_data_string') {
-              _children = this.parseSubData(_children)
-            }
-            
+          let children = []
+          if (_children) {
             _children.forEach((cell, i) => {
               cell.key = i
               cell.$$uuid = cell[config.setting.subKey] || ''
@@ -701,10 +703,9 @@
                 children.push(cell)
               }
             })
-            item.children = children
-          } else if (!item.children) {
-            item.children = []
           }
+          
+          item.children = children
 
           item.key = index
           item.$$uuid = item[config.setting.primaryKey] || ''
@@ -722,17 +723,18 @@
         })
       } else {
         data = result.data.map((item, index) => {
+          let _children = item[config.setting.subdata]
+          
+          delete item[config.setting.subdata]
+          if (config.setting.subdata === 'sub_data_string') {
+            _children = this.parseSubData(_children)
+          } else if (item.sub_data_string) {
+            _children = this.parseSubData(item.sub_data_string)
+          }
+
           let children = []
 
-          if (item[config.setting.subdata]) {
-            let _children = item[config.setting.subdata]
-
-            delete item[config.setting.subdata]
-
-            if (config.setting.subdata === 'sub_data_string') {
-              _children = this.parseSubData(_children)
-            }
-
+          if (_children) {
             _children.forEach((cell, i) => {
               cell.key = i
               cell.$$uuid = cell[config.setting.subKey] || ''
@@ -852,17 +854,19 @@
 
         data = data.map(item => {
           if (item.$$uuid === _data.$$uuid) {
+            let _children = _data[config.setting.subdata]
+
+            delete _data[config.setting.subdata]
+
+            if (config.setting.subdata === 'sub_data_string') {
+              _children = this.parseSubData(_children)
+            } else if (_data.sub_data_string) {
+              _children = this.parseSubData(_data.sub_data_string)
+            }
+
             let children = []
 
-            if (_data[config.setting.subdata]) {
-              let _children = _data[config.setting.subdata]
-
-              delete _data[config.setting.subdata]
-
-              if (config.setting.subdata === 'sub_data_string') {
-                _children = this.parseSubData(_children)
-              }
-
+            if (_children) {
               _children.forEach((cell, i) => {
                 cell.key = i
                 cell.$$uuid = cell[config.setting.subKey] || ''

--
Gitblit v1.8.0