From aa2c08b3be23a01d44205b2c19d21a2bf53f944f Mon Sep 17 00:00:00 2001
From: 闫增涛 <1829501689@qq.com>
Date: 星期一, 01 四月 2024 16:15:38 +0800
Subject: [PATCH] 图书服务列表、详情页bug修改

---
 packageBookService/pages/bookServices/detail/buyResource/index.js |  179 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 164 insertions(+), 15 deletions(-)

diff --git a/packageBookService/pages/bookServices/detail/buyResource/index.js b/packageBookService/pages/bookServices/detail/buyResource/index.js
index 39062f7..07134d2 100644
--- a/packageBookService/pages/bookServices/detail/buyResource/index.js
+++ b/packageBookService/pages/bookServices/detail/buyResource/index.js
@@ -12,12 +12,18 @@
     openLearnids: [],
     bookId: '',
     loading: false,
+    shoppingList: [],
+    shoppingCartGetId: [],
+    methodId: [],
+    paymentPage: false,
+    superior: false
   },
 
   /**
    * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鍔犺浇
    */
   onLoad(options) {
+
     const systInfo = wx.getSystemInfoSync();
     const menu = wx.getMenuButtonBoundingClientRect(); // 鑳跺泭淇℃伅
     const navBarHeight = (menu.top - systInfo.statusBarHeight) * 2 + menu.height; // 瀵艰埅鏍忛珮搴�
@@ -28,7 +34,12 @@
     });
     this.getResourceClass()
     console.log(options);
-    this.getResourceData({ productLinkPath: options.productLinkPath, refCode: options.refCode })
+    this.getResourceData({
+      productLinkPath: options.productLinkPath,
+      refCode: options.refCode
+    })
+    this.getShoppingCartProductGet()
+    this.getBookInfo(options.bookId)
   },
 
   /**
@@ -123,7 +134,8 @@
         if (type.refCode == 'jsek_teachingResources' || type.refCode == 'jsek_cloudLearning') {
           if (res.datas.cmsDatas[0].datas.length > 0) {
             res.datas.cmsDatas[0].datas.forEach(item => {
-              item.checked = false
+              item.checked = false,
+                item.checkAll = true
             })
             const list = await this.getAllResource(res.datas.cmsDatas[0].datas)
             if (type.refCode == 'jsek_teachingResources') {
@@ -133,15 +145,17 @@
               })
               this.findChildIds(this.data.teach, this.data.openTeachids = [])
             } else if (type.refCode == 'jsek_cloudLearning') {
+              const result = []
               res.datas.cmsDatas[0].datas.forEach(item => {
                 item.checked = false
               })
-              const list = await this.getAllResource(res.datas.cmsDatas[0].datas)
+              this.findChildIds(list, result)
               this.setData({
                 learn: list,
-                loading: false
+                loading: false,
+                openLearnids: result
               })
-              this.findChildIds(this.data.learn, this.data.openLearnids = [])
+              console.log('鏁欏璧勬簮', list);
             }
           } else {
             // 鏃犳暟鎹�
@@ -270,27 +284,64 @@
     });
 
   },
-    // 鍒ゆ柇璧勬簮鏄惁璐拱
-    resourceIsBuy(data) {
-      if (data.saleMethod && data.saleMethod.length) {
-        const isSHow = this.data.buyIdList.some((item) => item == data.saleMethod[0].Id)
-        return !isSHow
-      } else {
+  // 鑾峰彇宸茶喘涔板晢鍝�
+  getShoppingCartProductGet() {
+    let query = {
+      start: 0,
+      size: 999,
+      filterList: [],
+      searchList: []
+    }
+    app.MG.store.getShoppingCartProductList(query).then((res) => {
+      const list = []
+      res.datas.forEach((item) => {
+        list.push(item.saleMethod.id)
+      })
+      this.setData({
+        shoppingList: res.datas,
+        shoppingCartGetId: list
+      })
+    })
+  },
+  // 鍒ゆ柇璧勬簮鏄惁璐拱
+  resourceIsBuy(data) {
+    if (data.saleMethod && data.saleMethod.length) {
+      const isSHow = this.data.buyIdList.some((item) => item == data.saleMethod[0].Id)
+      return !isSHow
+    } else {
+      return false
+    }
+  },
+  // 鍒ゆ柇璧勬簮鍔犲叆璐墿杞︽寜閽槸鍚︽樉绀�
+  isShoppingCart(data) {
+    if (data.saleMethod && data.saleMethod.length) {
+      if (data.saleMethod[0].Price <= 0) return false
+      // 鍐嶅垽鏂槸鍚﹁喘涔�
+      const isBuy = this.data.buyIdList.some((item) => item == data.saleMethod[0].Id)
+      if (isBuy) {
+        // 璐拱浜�
         return false
+      } else {
+        // 鍒ゆ柇鏄惁鍔犲叆璐墿杞�
+        const isSHow = this.data.shoppingCartGetId.some((item) => item == data.saleMethod[0].Id)
+        return !isSHow
       }
-    },
+    } else {
+      return false
+    }
+  },
   // 鑾峰彇灞曞紑椤�
   findChildIds(data, result) {
     let index = 0
     for (let i = 0; i < data.length; i++) {
       if (index < 3) {
         const item = data[i]
-        if (item.childrenFolderCount > 0) {
+        if (item.children && item.children.length > 0) {
           result.push(item.id)
           for (let j = 0; j < item.children.length; j++) {
             if (index < 3) {
               const childrenItme = item.children[j]
-              if (item.childrenCount > 0) {
+              if (item.children && item.children.length > 0) {
                 result.push(childrenItme.id)
                 index += 1
               }
@@ -298,7 +349,7 @@
               break
             }
           }
-        } else if (item.childrenCount > 0) {
+        } else if (item.children && item.children.length > 0) {
           result.push(item.id)
           index += 1
         }
@@ -318,4 +369,102 @@
       })
     })
   },
+  checkAll() {
+    const child = this.selectComponent('#tree')
+    child.checkAll()
+
+  },
+  //璐拱鎸夐挳
+  batchPurchase() {
+
+
+
+    let saleMethodIds = []
+    let requests = []
+    let item = []
+    let selectAllId = []
+    const child = this.selectComponent('#tree')
+
+    console.log(child.data.superiorPurchaseSaleMethodId, 'superiorPurchaseSaleMethodId');
+    console.log(child.data.sonPurchaseSaleMethodId, 'child.data');
+    // console.log(child.data.selectAll, 'selectAll');
+    item = child.data.superiorPurchaseSaleMethodId
+    const sonItem = child.data.sonPurchaseSaleMethodId
+    let selectAll = child.data.selectAll
+    if (selectAll) {
+      // console.log(selectAll);
+      selectAll.forEach(item => {
+        if (item.saleMethod != 0) {
+          // console.log(item, 'item');
+          selectAllId.push(item.saleMethod[0].Id)
+        }
+      })
+      console.log(selectAllId);
+      app.MG.store.initOrder({
+        requests: selectAllId.map(id => ({
+          saleMethodId: id,
+          count: 1,
+        })),
+      }).then(res => {
+        if (res) {
+          wx.navigateTo({
+            url: '/pages/cart/paymentPage/index?orderNumber=' + res.orderNumber,
+          })
+          selectAllId = []
+          child.setData({
+            selectAll: []
+          })
+
+        }
+      })
+    }
+    if (item) {
+      console.log(item, 'sadsdasd');
+      // 鎷垮埌id
+      item.forEach(items => {
+        if (items.saleMethod != 0) {
+          saleMethodIds.push(items.saleMethod[0].Id)
+        }
+      })
+      console.log(saleMethodIds, 'saleMethodIds');
+
+      app.MG.store.initOrder({
+        requests: saleMethodIds.map(id => ({
+          saleMethodId: id,
+          count: 1,
+        })),
+      }).then(res => {
+        if (res) {
+          wx.navigateTo({
+            url: '/pages/cart/paymentPage/index?orderNumber=' + res.orderNumber,
+          })
+
+          child.setData({
+            superiorPurchaseSaleMethodId: [] // 浣跨敤setData鏂规硶娓呯┖sonPurchaseSaleMethodId鏁版嵁
+          })
+        }
+      })
+    }
+    if (item.length == 0 && sonItem) {
+      app.MG.store.initOrder({
+        requests: sonItem.map(id => ({
+          saleMethodId: id,
+          count: 1,
+        })),
+      }).then(res => {
+        if (res) {
+          wx.navigateTo({
+            url: '/pages/cart/paymentPage/index?orderNumber=' + res.orderNumber,
+          })
+          this.setData({
+            paymentPage: true
+          })
+          child.setData({
+            sonPurchaseSaleMethodId: [] // 浣跨敤setData鏂规硶娓呯┖sonPurchaseSaleMethodId鏁版嵁
+          })
+        }
+      })
+    }
+  },
+
 })
\ No newline at end of file

--
Gitblit v1.9.1