From dce885689d308043450f199981722b5c80360fe7 Mon Sep 17 00:00:00 2001
From: 闫增涛 <1829501689@qq.com>
Date: 星期四, 28 十一月 2024 10:21:29 +0800
Subject: [PATCH] 题库购买

---
 packageBookService/pages/bookServices/detail/index.js |   93 +++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 83 insertions(+), 10 deletions(-)

diff --git a/packageBookService/pages/bookServices/detail/index.js b/packageBookService/pages/bookServices/detail/index.js
index b4f2294..0228268 100644
--- a/packageBookService/pages/bookServices/detail/index.js
+++ b/packageBookService/pages/bookServices/detail/index.js
@@ -74,6 +74,8 @@
       residue: 0, // 缁勫嵎鍓╀綑娆℃暟
       mockList: [], // 鐢ㄦ埛缁勫嵎鎻愪氦淇℃伅
     },
+    isBuyBank: false,
+    bankSaleData: null,
     relatedBookLoading: false,
     noRelatedBookData: false,
     relatedBookPath: "", // 鐩稿叧鍥句功path
@@ -208,7 +210,9 @@
     fileList: [],
     isShowUp: true,
     protocolShow: false,
-    protocolTxt: ''
+    protocolTxt: '',
+    learnMenu: null,
+    md5List: []
   },
 
   resetTree: function (e) {
@@ -273,7 +277,7 @@
   /**
    * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鏄剧ず
    */
-  onShow() {
+  onShow(options) {
     if (wx.getStorageSync("paperBookList")) {
       this.setData({
         paperBookList: JSON.parse(wx.getStorageSync("paperBookList")),
@@ -287,6 +291,9 @@
     this.setData({
       num: Number(this.data.paperBookList.length) + Number(this.data.electronicBookList.length),
     });
+    if (this.data.bookDetail) {
+      this.getBookInfo(this.data.bookDetail.id)
+    }
   },
 
   /**
@@ -524,9 +531,27 @@
       }
     }
     app.MG.store.getProductDetail(query).then((res) => {
+      console.log(111, res.datas.cmsDatas[0].datas);
+      let isBuyBank = true
+      let bankSaleData = null
+      // 鍒ゆ柇棰樺簱鏄惁鏁翠綋璐拱
+      const bank = res.datas.cmsDatas[0].datas.find((item) => item.refCode == 'questionBank')
+      if (bank) {
+        if (bank.saleMethod.length) {
+          bankSaleData = bank.saleMethod.find((item) => item.SaleType == 'Normal')
+          if (bankSaleData) {
+            isBuyBank = this.data.buyIdList.includes(bankSaleData.Id)
+          }
+        }
+      }
       this.setData({
         resourceCodeList: res.datas.cmsDatas[0].datas,
-        learnTaskData: res.datas.cmsDatas[0].datas.filter((item) => item.refCode == 'jsek_learningTasks')[0]
+        learnTaskData: res.datas.cmsDatas[0].datas.filter((item) => item.refCode == 'jsek_learningTasks')[0],
+        isBuyBank,
+        bankSaleData
+      })
+      if (res.datas.cmsDatas[0].datas.length) this.setData({
+        learnMenu: res.datas.cmsDatas[0].datas.find(item => item.refCode == 'jsek_cloudLearning')
       })
     })
   },
@@ -871,7 +896,7 @@
         }
         // newArr.push(item)
         // 鍦ㄦ彃鍏ヨ繃绋嬩腑瀵规暟鎹繘琛屾帓搴�
-        newArr = this.insertAndSortObjectsByProductLinkPath(newArr, item)
+        newArr = this.insertAndSortObjectsById(newArr, item)
         // 鎻掕繘鏁扮粍鍚� 浠庡師鏁版嵁涓垹闄�
         rootList = rootList.filter(nitem => nitem.id != item.id)
       }
@@ -903,8 +928,8 @@
     return tree
   },
 
-  // 鎺掑簭鏁扮粍 鎸夌収productLinkPath
-  insertAndSortObjectsByProductLinkPath(array, newObj) {
+  // 鎺掑簭鏁扮粍 鎸夌収id
+  insertAndSortObjectsById(array, newObj) {
     // 鏌ユ壘鏂板璞″簲璇ユ彃鍏ョ殑浣嶇疆  
     let insertIndex = array.findIndex(obj => newObj.id < obj.id);
     // 濡傛灉娌℃湁鎵惧埌鍚堥�傜殑浣嶇疆锛屽垯鏀惧湪鏁扮粍鏈熬  
@@ -973,12 +998,13 @@
       },
     }
     app.MG.store.getProductDetailNoChildren(query).then((res) => {
-      if (!res.datas.cmsDatas[0].datas.length) {
+      if (!res.datas.cmsDatas[0].datas.length || res.datas.cmsDatas[0].datas.length == 0) {
         return this.setData({
           noResources: true,
           loading: false,
         });
       }
+
       let list = []
       // 鍒ゆ柇浜戝涔犳湁鏃犻攢鍞柟寮忓拰鏈夋晥鏈�
       const cloundSaleMethod =
@@ -990,8 +1016,19 @@
         cloundSaleMethod &&
         new Date().getTime() <= new Date(cloundSaleMethod.EndDate).getTime() &&
         new Date().getTime() >= new Date(cloundSaleMethod.BeginDate).getTime()
+      let md5s = []
       res.datas.cmsDatas[0].datas.forEach((item) => {
         // 浜戝涔犱笂鏈夐攢鍞柟寮忥紝鍘绘帀浜戝涔犱笅鎵�鏈夐攢鍞柟寮�
+        if (this.data.tabValue == "jsek_teachingResources") {
+
+          if (item.file || item.freeFile) {
+            let md5 = item.file ? item.file : item.freeFile
+            md5s.push(md5)
+          }
+          this.setData({
+            md5List: md5s,
+          });
+        }
         if (flags) item.saleMethod = []
         item.checked = false;
         if (item.sysType == 'CmsItem') {
@@ -1040,9 +1077,9 @@
           new Date(item.saleMethod.find((citem) => citem.SaleType == 'Normal').BeginDate).getTime() <= new Date().getTime()
         ) || (flags && cloundSaleMethod.Price == 0)
         // 鍒ゆ柇浜戝涔犲叏閮ㄨ喘涔版寜閽槸鍚︽樉绀�
-        let isShowBuyCloundMenu = flags && cloundSaleMethod.Price >= 0
+        let isShowBuyCloundMenu = flags && cloundSaleMethod.Price >= 0 && !this.data.buyIdList.includes(cloundSaleMethod.Id)
         // 鍒ゆ柇璧勬簮璐拱鎸夐挳鏄惁鏄剧ず
-        let isShowBuyCloundBtn = res.datas.cmsDatas[0].datas.some(citem => citem.saleMethod.length != 0) || type.saleMethod.length
+        let isShowBuyCloundBtn = !flags && res.datas.cmsDatas[0].datas.some(citem => citem.saleMethod.length != 0)
         // 鍒ゆ柇璐墿杞︽寜閽拰閿佹寜閽槸鍚︽樉绀�
         this.handleTreeData(list).forEach(item => {
           item.isbuy = this.resourceIsBuy(item);
@@ -1889,6 +1926,42 @@
   },
   handleTrue() {
     // findAndUpdateItemsByIds(this.date.)
+  },
+
+  // 棰樺簱璐拱
+  async buyBank() {
+    console.log(11, this.data.bankSaleData);
+    let query = {
+      remarks: '浜戞祴璇�',
+      requests: [{
+        saleMethodId: this.data.bankSaleData.Id,
+        count: 1
+      }]
+    }
+    const initOrderRes = await app.MG.store.initOrder(query)
+    if (this.data.bankSaleData.Price) {
+      // 璐拱
+      const url = "/pages/cart/paymentPage/index?orderNumber=" + initOrderRes.orderNumber + '&onNorderSaleMethod=' + initOrderRes.saleMethodLinks[0].orderSaleMethod.id;
+      wx.navigateTo({
+        url,
+      });
+    } else {
+      // 鍏嶈垂棰嗗彇
+      app.MG.store
+        .confirmOrder({
+          orderNum: initOrderRes.orderNumber,
+        })
+        .then((res) => {
+          if (res) {
+            wx.showToast({
+              title: "棰嗗彇鎴愬姛",
+              icon: "none",
+              duration: 1000,
+            });
+            this.getBookInfo(this.data.bookDetail.id);
+          }
+        });
+    }
   },
   // 缁勫嵎鏍煎紡鍖栨棩鏈熸樉绀�
   DateFormat(date, fmt) {
@@ -2806,7 +2879,7 @@
     app.MG.ugc.newTopicMessage(query).then((res) => {
       wx.showToast({
         icon: "success",
-        title: "璇蜂笂浼犺祫婧愭枃浠�",
+        title: "涓婁紶鎴愬姛",
       });
       this.closeDialog()
     })

--
Gitblit v1.9.1