From d16edf75075be3e4bc8eeb90420d048101068163 Mon Sep 17 00:00:00 2001
From: 闫增涛 <1829501689@qq.com>
Date: 星期二, 02 四月 2024 14:22:32 +0800
Subject: [PATCH] 图书详情、答题器bug修改

---
 packageBookService/pages/bookServices/detail/components/tree/index.js |   42 +++++++++++++++---------------------------
 1 files changed, 15 insertions(+), 27 deletions(-)

diff --git a/packageBookService/pages/bookServices/detail/components/tree/index.js b/packageBookService/pages/bookServices/detail/components/tree/index.js
index 89245ce..0ea1d2e 100644
--- a/packageBookService/pages/bookServices/detail/components/tree/index.js
+++ b/packageBookService/pages/bookServices/detail/components/tree/index.js
@@ -51,7 +51,8 @@
     webpageSrc: '',
     cloudShoppingCart: [],
     selectAll: [],
-    shoppingCart: true
+    shoppingCart: true,
+    stop: false,
   },
   ready() {
     this.setData({
@@ -79,7 +80,6 @@
   },
 
   methods: {
-
     handleList(tree) {
       for (let index = 0; index < tree.length; index++) {
         const item = tree[index];
@@ -246,7 +246,6 @@
         }
       }
       tree.forEach(node => {
-
         flatten(node);
       });
       // console.log(result, 'result');
@@ -254,11 +253,11 @@
     },
 
     // 鍙樹负true
-    findAndUpdateItemsByIds(tree, ids) {
+    findAndUpdateItemsByIds(tree, ids, state) {
       function findAndUpdate(node) {
         if (ids.includes(node.id)) {
           // console.log(node, 'node');
-          node.checked = !node.checked // 灏嗙洰鏍囬」鐨� check 灞炴�ц缃负 true
+          node.checked = state // 灏嗙洰鏍囬」鐨� check 灞炴�ц缃负 true
         }
         if (node.children && node.children.length > 0) {
           for (let child of node.children) {
@@ -266,9 +265,7 @@
           }
         }
       }
-
       for (let node of tree) {
-
         findAndUpdate(node); // 瀵规瘡涓《灞傝妭鐐规墽琛屾煡鎵惧拰鏇存柊鎿嶄綔
       }
       // console.log(tree, 'tree345');
@@ -291,7 +288,7 @@
       }
       return tree; // 杩斿洖淇敼鍚庣殑瀹屾暣鏁扮粍
     },
-
+    // 鍏ㄩ��
     checkAll() {
       const ids = []
       const list = []
@@ -303,21 +300,16 @@
       })
       list.forEach(item => {
         ids.push(item.id)
-
         checked = item.checked
       })
-
-
-      const updataList = this.findAndUpdateItemsByIds(this.properties.treeList, ids);
-
+      const flag = list.findIndex(item => item.checked == false) > -1 ? true : false
+      const updataList = this.findAndUpdateItemsByIds(this.properties.treeList, ids, flag);
       console.log(checked, 'list');
       if (!checked) {
         this.setData({
           selectAll: list
         })
-
       }
-
       this.setData({
         treeList: updataList
       })
@@ -325,6 +317,8 @@
 
     // 绔犺妭鍕鹃��
     checkResourceTitle(e) {
+      const flag = e.detail.checked
+      debugger
       // 杩欎釜鏃跺�檆hecked鐨勫�兼槸fals
       let checkResourceTitleList = []
       const item = e.currentTarget.dataset.item
@@ -335,20 +329,16 @@
         ids.push(item.id)
       })
       // console.log(list, 'list789');
-      const updatedTreeList = this.findAndUpdateItemsByIds(this.properties.treeList, ids);
+      const updatedTreeList = this.findAndUpdateItemsByIds(this.properties.treeList, ids, flag);
       this.setData({
         treeList: updatedTreeList // 鏇存柊 treeList 鏁版嵁
       });
       console.log(list, 'list.checked');
       if (!list.checked) {
-
-
         this.setData({
           superiorPurchaseSaleMethodId: list
         })
-
       }
-
       // console.log(this.data.superiorPurchaseSaleMethodId, 'superiorPurchaseSaleMethodId');
       list.forEach(items => {
         console.log(items.checked, 'itesasd');
@@ -357,6 +347,9 @@
             cloudShoppingCart: items
           })
         }
+      })
+      this.setData({
+        openIds: this.data.openIds
       })
     },
     // 瀛愰」鍕鹃��
@@ -433,11 +426,6 @@
 
     },
   },
-  onCheckAllChange(e) {
-    // debugger
-    // console.log('checkbox', e.detail.value);
-    // this.setData({
-    //   checkAllValues: event.detail,
-    // });
-  },
+
+  catchtap() {}
 })
\ No newline at end of file

--
Gitblit v1.9.1