From 558845242a07b68f42fa1802c45ab2769395d8b8 Mon Sep 17 00:00:00 2001
From: 闫增涛 <1829501689@qq.com>
Date: 星期一, 29 四月 2024 14:31:30 +0800
Subject: [PATCH] 合并代码

---
 packageBookService/pages/bookServices/detail/buyResource/index.js |   75 +++++++++++++++++++++++++++++++++----
 1 files changed, 66 insertions(+), 9 deletions(-)

diff --git a/packageBookService/pages/bookServices/detail/buyResource/index.js b/packageBookService/pages/bookServices/detail/buyResource/index.js
index 92e8ef6..8986936 100644
--- a/packageBookService/pages/bookServices/detail/buyResource/index.js
+++ b/packageBookService/pages/bookServices/detail/buyResource/index.js
@@ -19,7 +19,8 @@
     checkAllState: true,
     productLinkPath: '',
     refCode: '',
-    haider: false
+    haider: false,
+    naData: false
   },
 
   /**
@@ -85,11 +86,48 @@
     wx.navigateBack();
   },
 
+  // 鑾峰彇鎵�鏈夊瓙椤规暟閲�
+  getChildrenItem(data) {
+    let num = 0
+
+    function getNum(data) {
+      for (let index = 0; index < data.length; index++) {
+        const item = data[index];
+        if (item.sysType == 'CmsItem') {
+          num += 1
+        } else if (item.sysType == 'CmsFolder') {
+          if (item.children && item.children.length)
+            getNum(item.children)
+        }
+      }
+    }
+    getNum(data)
+    return num
+  },
+
+  // 缁櫬风洰褰曟坊鍔犲瓙椤规暟閲�
+  changeResourceChildren(list) {
+    const changeList = (list) => {
+      for (let index = 0; index < list.length; index++) {
+        const item = list[index];
+        if (item.sysType == 'CmsFolder' && item.children && item.children.length) {
+          item.childrenItem = this.getChildrenItem([item])
+          changeList(item.children)
+        } else if (item.sysType == 'CmsFolder' && item.children && !item.children.length) {
+          item.childrenItem = 0
+        } else if (item.sysType == 'CmsFolder' && !item.children) {
+          item.childrenItem = 0
+        }
+      }
+    }
+    changeList(list)
+    return list
+  },
+
   // 鎵佸钩鍖栨暟鎹浆鎹ree
   getTreeList(rootList, pathLength, newArr, path) {
     for (const item of rootList) {
-      if (item.productLinkPath.length == pathLength && item.productLinkPath.includes(path)) {
-        item.checked = false;
+      if ((pathLength - item.productLinkPath.length >= 0 && pathLength - item.productLinkPath.length <= 3) && item.productLinkPath.includes(path)) {
         if (item.sysType == 'CmsItem') {
           if (item.selectType == 'webpage') {
             item.disabled = true
@@ -101,13 +139,14 @@
           if (item.file && item.fileMap && item.fileMap[item.file]) {
             if (item.fileMap[item.file].protectType == 'Private') item.disabled = true
           }
-
-          item.isbuy = this.isShowNeedBuy(item);
-          item.isShopCar = this.isShoppingCart(item);
         }
         // newArr.push(item)
-        // 鍦ㄦ彃鍏ヨ繃绋嬩腑瀵规暟鎹繘琛屾帓搴�
-        newArr = this.insertAndSortObjectsByProductLinkPath(newArr, item)
+        // 鍦ㄦ彃鍏ヨ繃绋嬩腑瀵规暟鎹繘琛屾帓搴�  骞朵笖鍘婚櫎宸茬粡棰嗗彇鍜岃喘涔扮殑
+        if (item.sysType == 'CmsFolder') {
+          newArr = this.insertAndSortObjectsByProductLinkPath(newArr, item)
+        } else if (item.sysType == 'CmsItem' && this.resourceIsBuy(item)) {
+          newArr = this.insertAndSortObjectsByProductLinkPath(newArr, item)
+        }
       }
     }
     //缁欐暟缁勯噷闈㈠啀娣诲姞涓�涓猚hildren鐨勭┖鏁扮粍
@@ -239,8 +278,20 @@
             }
           }
         });
-        this.getTreeList(res.datas.cmsDatas[0].datas, 17, list, '\\')
+        // 鏄剧ず 闇�瑕佽喘涔扮殑鍜岄渶瑕佸厤璐归鍙栫殑
+        // const arr = res.datas.cmsDatas[0].datas.filter(item => this.resourceIsBuy(item))
+        // if (!arr.length) {
+        //   return this.setData({
+        //     loading: false,
+        //     haider: true,
+        //     noData: true
+        //   })
+        // }
+        // debugger
+        const num = query.cmsPath.length + 6
+        this.getTreeList(res.datas.cmsDatas[0].datas, num, list, '\\')
         list = this.ensureTreeConsistency(list)
+        list = this.changeResourceChildren(list)
         console.log('淇敼鍚庝簯', list);
         let result = [];
         if (type.refCode == "jsek_teachingResources") {
@@ -594,6 +645,12 @@
   },
   //璐拱鎸夐挳
   batchPurchase() {
+    if (!this.data.learn.length) {
+      return wx.showToast({
+        icon: "error",
+        title: '鏆傛棤鏁版嵁',
+      })
+    }
     let saleMethodIds = [];
     let requests = [];
     let item = [];

--
Gitblit v1.9.1