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/index.js |  861 +++++++++++++++++++++++++++++++-------------------------
 1 files changed, 479 insertions(+), 382 deletions(-)

diff --git a/packageBookService/pages/bookServices/detail/index.js b/packageBookService/pages/bookServices/detail/index.js
index 8e525fa..9294e5e 100644
--- a/packageBookService/pages/bookServices/detail/index.js
+++ b/packageBookService/pages/bookServices/detail/index.js
@@ -1,7 +1,9 @@
 // pages/bookServices/detail/index.js
-import Message from 'tdesign-miniprogram/message/index.js';
 import Toast from 'tdesign-miniprogram/toast';
-import tool from '../../../../assets/js/toolClass'
+import tool from '../../../../assets/js/toolClass';
+import {
+  loginInfo
+} from '../../../../assets/js/login'
 const app = getApp();
 Page({
   /**
@@ -34,17 +36,20 @@
     openTeachids: [],
     openLearnids: [],
     openTestids: [],
-    applyResourceState: false,  // 鐢宠鏁欏璧勬簮鎸夐挳闃叉姈
+    applyResourceState: false, // 鐢宠鏁欏璧勬簮鎸夐挳闃叉姈
     resourceClassList: [], // 璧勬簮鎵�灞炲垎绫�
-    applyState: "",  // 鏁欏璧勬簮鐢宠鐘舵��
-    deadline: "",  // 鏁欏璧勬簮鐢宠鏈夋晥鏃ユ湡
-    rejectCause: "",  // 涓嬭浇鎷掔粷鍘熷洜
+    applyState: "", // 鏁欏璧勬簮鐢宠鐘舵��
+    deadline: "", // 鏁欏璧勬簮鐢宠鏈夋晥鏃ユ湡
+    rejectCause: "", // 涓嬭浇鎷掔粷鍘熷洜
     buyIdList: [],
     shoppingCartGetId: [], // 宸茶喘涔癷d鍒楄〃
     shoppingList: [],
     loading: false,
-    isShowTeachDownload: false,  // 鎻愮ずPC涓嬭浇寮圭獥鐘舵��
-    confirmBtn: { content: '鎴戠煡閬撲簡', variant: 'base' },
+    isShowTeachDownload: false, // 鎻愮ずPC涓嬭浇寮圭獥鐘舵��
+    confirmBtn: {
+      content: '鎴戠煡閬撲簡',
+      variant: 'base'
+    },
     mockData: {
       id: 0, // 閿�鍞甶d
       price: 0, // 鍞环
@@ -55,9 +60,9 @@
     },
     flag: true,
     noResources: false,
-    selectedIds: "",//鍟嗗搧鎴栧瓙鍟嗗搧閿�鍞柟寮�
+    selectedIds: "", //鍟嗗搧鎴栧瓙鍟嗗搧閿�鍞柟寮�
     bookBuy: false, //鍟嗗搧鎴栧瓙鍟嗗搧鏄惁璐拱
-    expire: false,//鍟嗗搧鎴栧瓙鍟嗗搧閿�鍞柟寮忔槸鍚﹁繃鏈�
+    expire: false, //鍟嗗搧鎴栧瓙鍟嗗搧閿�鍞柟寮忔槸鍚﹁繃鏈�
     noFile: false, //鍟嗗搧鎴栧瓙鍟嗘湁鏃犵數瀛愪功鏂囦欢
     num: 0, //鏍蜂功鐢宠鍗曟暟閲�
     alreadyPaperBookList: [], //宸茬敵璇风焊璐ㄦ牱涔�
@@ -67,15 +72,55 @@
     paperBookCount: 0, //绾歌川涔﹀墿浣欐鏁�
     ebookCount: 0, //鐢靛瓙涔﹀墿浣欐鏁�
     userInfo: {},
+    pageLoading: true,
     fileInfo: {
       bookName: "",
       fileType: "",
       md5: "",
       freePage: ""
-    },  //闃呰鍣ㄦ暟鎹�
+    }, //闃呰鍣ㄦ暟鎹�
     buyResourceData: {
       productLinkPath: '',
       refCode: '',
+    },
+    briefIcon: {
+      name: "/static/images/bookService/detail/tushujianjie-g.png"
+    },
+    briefIconClick: {
+      name: '/static/images/bookService/detail/tushujianjie-click.png'
+    },
+    eBookIcon: {
+      name: '/static/images/bookService/detail/ebook-g.png'
+    },
+    eBookClickIcon: {
+      name: '/static/images/bookService/detail/ebook-click.png'
+    },
+    teachResourcesIcon: {
+      name: '/static/images/bookService/detail/jiaoxueziyuan.png'
+    },
+    teachResourcesClickIcon: {
+      name: '/static/images/bookService/detail/jiaoxueziyuan-click.png'
+    },
+    learnResourceIcon: {
+      name: '/static/images/bookService/detail/yunxuexi.png'
+    },
+    learnResourceClickIcon: {
+      name: '/static/images/bookService/detail/yunxuexi-click.png'
+    },
+    testResourceIocn: {
+      name: '/static/images/bookService/detail/test-icon-g.png'
+    },
+    testResourceClickIocn: {
+      name: '/static/images/bookService/detail/test-click-icon.png'
+    },
+    noteIcon: {
+      name: '/static/images/bookService/detail/biji-icon-g.png'
+    },
+    noteClickIcon: {
+      name: '/static/images/bookService/detail/biji-click-icon.png'
+    },
+    icon1: {
+      name: "/static/images/bookService/detail/dangdang.png"
     }
   },
 
@@ -90,6 +135,22 @@
    * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鍔犺浇
    */
   onLoad(options) {
+
+    // 妫�鏌ョ櫥褰曠姸鎬�
+    // const token = wx.getStorageSync(app.config.tokenKey)
+    // if (!token) {
+    //   loginInfo(app, (data) => {
+    //     // 濡傛灉涓嶆槸绗竴娆$櫥褰曪紝浼氭墽琛屽洖璋�
+    //     if (data) {
+    //       // 鐧诲綍鎴愬姛锛岃嚜鍔ㄨ褰晅oken鍜岀敤鎴蜂俊鎭紝骞惰繑鍥瀟rue
+    //     } else {
+    //       // 鍑虹幇閿欒锛岃繑鍥瀎alse
+    //     }
+    //   })
+    // } else {
+    //   // 濡傛灉鏄涓�娆$櫥褰曪紝浼氳烦杞嚦缁戝畾鐢ㄦ埛淇℃伅椤甸潰锛屽~鍐欏畬鐢ㄦ埛淇℃伅鍚庤繘琛岀櫥褰曞苟鍌ㄥ瓨token鍜岀敤鎴蜂俊鎭紝缁撴潫鍚庤烦杞洖褰撳墠椤甸潰锛堟惡甯﹂〉闈㈠弬鏁帮級
+    // }
+
     const systInfo = wx.getSystemInfoSync();
     const menu = wx.getMenuButtonBoundingClientRect(); // 鑳跺泭淇℃伅
     const navBarHeight = (menu.top - systInfo.statusBarHeight) * 2 + menu.height; // 瀵艰埅鏍忛珮搴�
@@ -107,17 +168,36 @@
 
     this.getBookInfo(options.id);
     this.getResourceClass() // 鑾峰彇璧勬簮鎵�灞炲垎绫�
-    const token = wx.getStorageSync('jsek-token')
+    const token = wx.getStorageSync(app.config.tokenKey)
     if (token) {
       this.getShoppingCartProductGet()
       this.getApplyInfo(options.id)
       this.getMockData()
+      this.getAlreadyPBookList()
+      this.getAlreadyEBookList()
     }
     if (wx.getStorageSync(app.config.userInfoKey)) {
       this.setData({
         userInfo: JSON.parse(wx.getStorageSync(app.config.userInfoKey))
       })
+      // 鑾峰彇鐢宠娆℃暟
+      this.getSelectPaperBookCount()
+      this.getSelectBookCount()
     }
+
+  },
+
+  /**
+   * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鍒濇娓叉煋瀹屾垚
+   */
+  onReady() {
+
+  },
+
+  /**
+   * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鏄剧ず
+   */
+  onShow() {
     if (wx.getStorageSync("paperBookList")) {
       this.setData({
         paperBookList: wx.getStorageSync("paperBookList"),
@@ -134,26 +214,14 @@
   },
 
   /**
-   * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鍒濇娓叉煋瀹屾垚
-   */
-  onReady() {
-
-  },
-
-  /**
-   * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鏄剧ず
-   */
-  onShow() { },
-
-  /**
    * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰闅愯棌
    */
-  onHide() { },
+  onHide() {},
 
   /**
    * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鍗歌浇
    */
-  onUnload() { },
+  onUnload() {},
 
   /**
    * 椤甸潰鐩稿叧浜嬩欢澶勭悊鍑芥暟--鐩戝惉鐢ㄦ埛涓嬫媺鍔ㄤ綔
@@ -176,7 +244,7 @@
   /**
    * 鐢ㄦ埛鐐瑰嚮鍙充笂瑙掑垎浜�
    */
-  onShareAppMessage() { },
+  onShareAppMessage() {},
   // 鏍煎紡鍖栨棩鏈�
   formatDate(dateString) {
     if (!dateString) {
@@ -237,7 +305,7 @@
     this.setData({
       "mockData'.id": 0,
       "mockData.price": 0,
-      "mockData.count": 0
+      "mockData.count": 0,
     })
     const query = {
       path: '*',
@@ -315,6 +383,7 @@
         'bookDetail.price': this.numFormat(this.data.bookDetail.price),
         'bookDetail.oldPrice': this.numFormat(this.data.bookDetail.oldPrice),
         'bookDetail.paperPrice': this.numFormat(this.data.bookDetail.paperPrice),
+        pageLoading: false
       });
       console.log('鍥句功淇℃伅', this.data.bookDetail);
     });
@@ -402,7 +471,6 @@
             });
           }
         }
-        console.log(this.data.fileInfo, 456)
         this.setData({
           selectedIds: this.data.bookDetail.defaultSaleMethodId,
           bookBuy: this.data.bookDetail.purchasedSaleMethodIdList.indexOf(this.data.bookDetail.defaultSaleMethodId) > -1
@@ -442,49 +510,73 @@
   },
   // 鏀惰棌
   setCollect() {
-    if (this.data.bookDetail.isFavourite) {
-      app.MG.store
-        .delProductLink({
+    const token = wx.getStorageSync(app.config.tokenKey)
+    if (!token) {
+      // 妫�鏌ョ櫥褰曠姸鎬�
+      loginInfo(app, (data) => {
+        // 濡傛灉涓嶆槸绗竴娆$櫥褰曪紝浼氭墽琛屽洖璋�
+        if (data) {
+          // 鐧诲綍鎴愬姛锛岃嚜鍔ㄨ褰晅oken鍜岀敤鎴蜂俊鎭紝骞惰繑鍥瀟rue
+          this.getBookInfo(this.data.bookId)
+        } else {
+          // 鍑虹幇閿欒锛岃繑鍥瀎alse
+        }
+      })
+    } else {
+      if (this.data.bookDetail.isFavourite) {
+        app.MG.store
+          .delProductLink({
+            productIds: [this.data.bookDetail.id],
+            linkType: 'FavoriteBookCity',
+          })
+          .then(() => {
+            this.setData({
+              'bookDetail.isFavourite': false
+            })
+          });
+      } else {
+        const params = {
           productIds: [this.data.bookDetail.id],
           linkType: 'FavoriteBookCity',
-        })
-        .then(() => {
+        };
+        app.MG.store.addProductLink(params).then((res) => {
           this.setData({
-            'bookDetail.isFavourite': false
+            'bookDetail.isFavourite': true
           })
-          Message.success({
-            context: this,
-            offset: [20, 32],
-            duration: 5000,
-            content: '杩欐槸涓�鏉℃垚鍔熺殑鎻愮ず娑堟伅',
-          });
         });
-    } else {
-      const params = {
-        productIds: [this.data.bookDetail.id],
-        linkType: 'FavoriteBookCity',
-      };
-      app.MG.store.addProductLink(params).then((res) => {
-        this.setData({
-          'bookDetail.isFavourite': true
-        })
-        Message.success({
-          context: this,
-          offset: ['20rpx', '32rpx'],
-          duration: 2000,
-          content: '鏀惰棌鎴愬姛',
-        });
-      });
+      }
     }
+
   },
   // 鎴戣寤鸿
   suggestBtn() {
+    // 妫�鏌ョ櫥褰曠姸鎬�
+    const token = wx.getStorageSync(app.config.tokenKey)
     const child = this.selectComponent('#suggest-component')
-    child.showDialog()
+    if (!token) {
+      wx.showLoading({
+        title: '鍔犺浇涓�',
+      })
+      loginInfo(app, (data) => {
+        // 濡傛灉涓嶆槸绗竴娆$櫥褰曪紝浼氭墽琛屽洖璋�
+        if (data) {
+          // 鐧诲綍鎴愬姛锛岃嚜鍔ㄨ褰晅oken鍜岀敤鎴蜂俊鎭紝骞惰繑鍥瀟rue
+          child.showDialog()
+          wx.hideLoading()
+        } else {
+          // 鍑虹幇閿欒锛岃繑鍥瀎alse
+        }
+      })
+    } else {
+      // 濡傛灉鏄涓�娆$櫥褰曪紝浼氳烦杞嚦缁戝畾鐢ㄦ埛淇℃伅椤甸潰锛屽~鍐欏畬鐢ㄦ埛淇℃伅鍚庤繘琛岀櫥褰曞苟鍌ㄥ瓨token鍜岀敤鎴蜂俊鎭紝缁撴潫鍚庤烦杞洖褰撳墠椤甸潰锛堟惡甯﹂〉闈㈠弬鏁帮級
+      child.showDialog()
+    }
   },
   // 璺宠浆缃戝簵
   goShop(e) {
-    const { link } = e.currentTarget.dataset;
+    const {
+      link
+    } = e.currentTarget.dataset;
     wx.navigateTo({
       url: `/packageBookService/pages/bookServices/webpage/index?url=${link}`,
     })
@@ -503,9 +595,9 @@
             'buyResourceData.refCode': checkData.refCode
           })
         }
-        if ((e.detail.value == 'jsek_teachingResources' && !this.data.teach.length)
-          || (e.detail.value == 'jsek_cloudLearning' && !this.data.learn.length)
-          || (e.detail.value == 'questionBank' && !this.data.test.length)) {
+        if ((e.detail.value == 'jsek_teachingResources' && !this.data.teach.length) ||
+          (e.detail.value == 'jsek_cloudLearning' && !this.data.learn.length) ||
+          (e.detail.value == 'questionBank' && !this.data.test.length)) {
           this.getResourceData(checkData)
         }
       } else {
@@ -514,20 +606,18 @@
         })
       }
     } else if (e.detail.label == '浜戠瑪璁�') {
-      const token = wx.getStorageSync('jsek-token')
+      const token = wx.getStorageSync(app.config.tokenKey)
       const child = this.selectComponent('#note')
       child.handleSubmitTitle()
       if (token) {
         child.changeLoading()
         child.getNoteList()
       }
-
     } else if (e.detail.label == '鐢靛瓙涔�') {
       const child = this.selectComponent('#eBook')
       if (child) {
         child.getProgress()
       }
-
     }
   },
   // 鑾峰彇璧勬簮鎵�灞炲垎绫�
@@ -600,7 +690,7 @@
                 loading: false,
                 openTeachids: result
               })
-              console.log('鏁欏璧勬簮', this.data.teach);
+              console.log('鏁欏璧勬簮', this.data.teach, this.data.applyState);
             } else if (type.refCode == 'jsek_cloudLearning') {
               // res.datas.cmsDatas[0].datas.forEach(item => {
               //   item.checked = false
@@ -705,12 +795,12 @@
     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
               }
@@ -718,7 +808,7 @@
               break
             }
           }
-        } else if (item.childrenCount > 0) {
+        } else if (item.children && item.children.length > 0) {
           result.push(item.id)
           index += 1
         }
@@ -730,9 +820,7 @@
 
   // 鍥句功娣诲姞璐墿杞�
   async addBookShopcCar() {
-
     if (!this.data.expire) {
-
       const token = wx.getStorageSync('jsek-token')
       if (!token) {
         return wx.getUserProfile({
@@ -761,13 +849,11 @@
       console.log(determine);
       if (!determine) {
         let query = {
-          requests: [
-            {
-              saleMethodId: this.data.selectedIds,
-              storeEventId: null,
-              agentCode: '鐢靛瓙涔�'
-            }
-          ]
+          requests: [{
+            saleMethodId: this.data.selectedIds,
+            storeEventId: null,
+            agentCode: '鐢靛瓙涔�'
+          }]
         }
         const addRes = app.MG.store.addShoppingCart(query)
         this.showSuccessToast()
@@ -776,8 +862,8 @@
         Toast({
           context: this,
           selector: '#t-toast',
-          message: '宸叉坊鍔�',
-          theme: 'success',
+          message: '璇ヤ功宸插湪璐墿杞︼紝璇峰嬁閲嶅娣诲姞',
+          theme: 'warning',
           direction: 'column',
         });
       }
@@ -803,16 +889,15 @@
   },
 
   async buyBook() {
+    console.log(this.data.bookItemDetail.defaultSaleMethodId, 'this.data.bookItemDetail.defaultSaleMethodId');
     if (!this.data.expire) {
       let bookOrdersId = ''
       let query = {
         remarks: '鐢靛瓙涔�',
-        requests: [
-          {
-            saleMethodId: this.data.bookItemDetail.defaultSaleMethodId ? this.data.bookItemDetail.defaultSaleMethodId : this.data.bookDetail.defaultSaleMethodId,
-            count: 1
-          }
-        ]
+        requests: [{
+          saleMethodId: this.data.bookItemDetail.defaultSaleMethodId ? this.data.bookItemDetail.defaultSaleMethodId : this.data.bookDetail.defaultSaleMethodId,
+          count: 1
+        }]
       }
       // 鍙戣捣璁㈠崟鍒濆鍖栬姹傚苟绛夊緟缁撴灉
       const res = await app.MG.store.initOrder(query)
@@ -936,19 +1021,18 @@
       cmsTypeRefCode: '',
       newDataListRequest: [],
       name: this.data.bookDetail.name, // name涓虹敵璇风殑涔︽湰鍚嶇О
-      content: JSON.stringify([
-        {
-          name: this.data.bookDetail.name,
-          id: this.data.bookDetail.id,
-          // defaultSaleMethodId: bookData.value.defaultSaleMethodId,
-          icon: this.data.bookDetail.icon
-        }
-      ])
+      content: JSON.stringify([{
+        name: this.data.bookDetail.name,
+        id: this.data.bookDetail.id,
+        // defaultSaleMethodId: bookData.value.defaultSaleMethodId,
+        icon: this.data.bookDetail.icon
+      }])
     }
     app.MG.ugc.newTopicMessage(query).then(async (res) => {
       if (res) {
         wx.showToast({
-          title: '鐢宠宸叉彁浜わ紝璇峰緟瀹℃牳閫氳繃鍚庝笅杞�',
+          title: '鐢宠宸叉彁浜�',
+          duration: 2000,
         })
       }
       await this.getApplyInfo(this.data.bookDetail.id)
@@ -964,9 +1048,7 @@
     //       })
     //       .catch(() => { })
     //   }
-    // } else {
-    //   // logIn()
-    // }
+    // } 
   },
   // 鏁欏璧勬簮涓嬭浇鍓嶅線PC鎻愮ずDiialog
   closeTeachDownload() {
@@ -1157,54 +1239,57 @@
   // 浜戝涔犱竴閿鍙�
   async getFreeResource() {
     const child = this.selectComponent('#learn-resource')
-    const token = wx.getStorageSync('jsek-token')
+    const token = wx.getStorageSync(app.config.tokenKey)
     if (!token) {
-      return wx.getUserProfile({
-        desc: '鐢ㄦ埛鐧诲綍',
-        success: (res) => {
-          console.log(res);
+      loginInfo(app, (data) => {
+        // 濡傛灉涓嶆槸绗竴娆$櫥褰曪紝浼氭墽琛屽洖璋�
+        if (data) {
+          // 鐧诲綍鎴愬姛锛岃嚜鍔ㄨ褰晅oken鍜岀敤鎴蜂俊鎭紝骞惰繑鍥瀟rue
+        } else {
+          // 鍑虹幇閿欒锛岃繑鍥瀎alse
         }
       })
-    }
-    let arr = this.handleTreeData(this.data.learn).filter((item) => this.resourceIsBuy(item))
-    let freeIds = arr.filter((item) => {
-      return item.saleMethod[0].Price == 0
-    })
-    if (!freeIds.length) return wx.showToast({
-      icon: "error",
-      title: '鏆傛棤鍏嶈垂璧勬簮',
-    })
-    child.changeReceive(true)
-    let requests = []
-    freeIds.forEach((item, index) => {
-      if (this.resourceIsBuy(item)) {
-        requests.push({
-          saleMethodId: item.saleMethod[0].Id,
-          count: 1
-        })
-      }
-    })
+    } else {
+      let arr = this.handleTreeData(this.data.learn).filter((item) => this.resourceIsBuy(item))
+      let freeIds = arr.filter((item) => {
+        return item.saleMethod[0].Price == 0
+      })
+      if (!freeIds.length) return wx.showToast({
+        icon: "error",
+        title: '鏆傛棤鍏嶈垂璧勬簮',
+      })
+      child.changeReceive(true)
+      let requests = []
+      freeIds.forEach((item, index) => {
+        if (this.resourceIsBuy(item)) {
+          requests.push({
+            saleMethodId: item.saleMethod[0].Id,
+            count: 1
+          })
+        }
+      })
 
-    let query = {
-      remarks: '浜戝涔�',
-      requests,
-    }
-    try {
-      const initOrderRes = await app.MG.store.initOrder(query)
-      let parameter = {
-        orderNum: initOrderRes.orderNumber
+      let query = {
+        remarks: '浜戝涔�',
+        requests,
       }
-      // 纭璁㈠崟
-      const confirmOrderRes = await app.MG.store.confirmOrder(parameter)
-      if (confirmOrderRes.orderNumber) {
-        child.changeReceive(false)
-        wx.showToast({
-          title: '棰嗗彇鎴愬姛',
-        })
-        this.getBookInfo(this.data.bookId)
+      try {
+        const initOrderRes = await app.MG.store.initOrder(query)
+        let parameter = {
+          orderNum: initOrderRes.orderNumber
+        }
+        // 纭璁㈠崟
+        const confirmOrderRes = await app.MG.store.confirmOrder(parameter)
+        if (confirmOrderRes.orderNumber) {
+          child.changeReceive(false)
+          wx.showToast({
+            title: '棰嗗彇鎴愬姛',
+          })
+          this.getBookInfo(this.data.bookId)
+        }
+      } catch (error) {
+        console.log(error)
       }
-    } catch (error) {
-      console.log(error)
     }
   },
   // 浜戝涔犱竴閿喘涔�
@@ -1294,9 +1379,9 @@
         if (new RegExp('(' + k + ')').test(fmt)) {
           fmt = fmt.replace(
             RegExp.$1,
-            RegExp.$1.length == 1
-              ? (o)[k]
-              : ('00' + (o)[k]).substr(('' + (o)[k]).length)
+            RegExp.$1.length == 1 ?
+            (o)[k] :
+            ('00' + (o)[k]).substr(('' + (o)[k]).length)
           )
         }
       }
@@ -1349,12 +1434,10 @@
     try {
       let query = {
         remarks: '缁勫嵎',
-        requests: [
-          {
-            saleMethodId: this.data.mockData.id,
-            count: 1
-          }
-        ]
+        requests: [{
+          saleMethodId: this.data.mockData.id,
+          count: 1
+        }]
       }
       if (this.data.flag) {
         this.setData({
@@ -1369,7 +1452,9 @@
       } else {
         // 0鍏冪洿鎺ラ鍙�
         // 纭璁㈠崟
-        const confirmOrderRes = await app.MG.store.confirmOrder({ orderNum: res.orderNumber })
+        const confirmOrderRes = await app.MG.store.confirmOrder({
+          orderNum: res.orderNumber
+        })
         if (confirmOrderRes) {
           wx.showToast({
             icon: "success",
@@ -1389,33 +1474,33 @@
   recordBuyMock() {
     const num = this.data.mockData.mockList.length
     const id = tool.uuid(8)
-    const createDate = new Date().getTime()
+    const createDate = this.DateFormat(new Date().getTime(), 'yyyy-MM-dd')
     const mockList = this.data.mockData.mockList
-    mockList.push({ id, createDate, name: `绗�${num + 1}濂楄瘯鍗穈, state: '0' })
+    mockList.push({
+      id,
+      createDate,
+      name: `绗�${num + 1}濂楄瘯鍗穈,
+      state: '0'
+    })
     this.setData({
       'mockData.mockList': mockList
     })
     // 璁板綍璐拱鏃堕棿锛屽苟璁剧姸鎬乻tate涓�1锛岃〃绀哄垰璐拱瀹屾垚缁勫嵎
     app.MG.identity.setUserKey({
-      setKeyRequests: [
-        {
-          domain: 'mockData',
-          key: this.data.bookDetail.id + '',
-          value: JSON.stringify(this.data.mockData.mockList)
-        }
-      ]
+      setKeyRequests: [{
+        domain: 'mockData',
+        key: this.data.bookDetail.id + '',
+        value: JSON.stringify(this.data.mockData.mockList)
+      }]
     })
   },
   // 搴曢儴璐拱鎸夐挳
   buyBtn() {
-    if (this.data.tabValue == 'brief') {
+    if (this.data.tabValue == 'brief' && !this.data.bookBuy) {
       this.buyBook()
-    }
-    else if (this.data.tabValue == 'jsek_cloudLearning') {
+    } else if (this.data.tabValue == 'jsek_cloudLearning') {
       const tree = this.selectComponent('#tree')
       tree.onCloudShoppingCart()
-    } else if (this.data.tabValue == 'questionBank') {
-      this.buyMock()
     } else {
       console.log(this.data.tabValue);
     }
@@ -1431,29 +1516,154 @@
       return false;
     }
     wx.navigateTo({
-      url: '/packageBookService/pages/components/webView/index?md5=' + this.data.fileInfo.md5 + '&fileName=' + this.data.fileInfo.bookName + '&fileType=' + this.data.fileInfo.fileType + '&freePage=' + this.data.fileInfo.freePage
+      url: '/packageBookService/pages/components/webView/index?md5=' + this.data.fileInfo.md5 + '&fileName=' + this.data.fileInfo.bookName + '&fileType=' + this.data.fileInfo.fileType + '&freePage=' + this.data.fileInfo.freePage + '&bookBuy=' + this.data.bookBuy
     })
 
   },
 
   //鏍蜂功鐢宠
+  //鑾峰彇宸茬敵璇风焊璐ㄦ牱涔�
+  getAlreadyPBookList() {
+    const data = {
+      start: 0,
+      size: 9999,
+      topicIdOrRefCode: 'applyEntityBook',
+      appRefCode: app.config.appRefCode,
+      sort: {
+        type: 'Desc',
+        field: 'CreateDate'
+      }
+    }
+    app.MG.ugc.getTopicMessageList(data).then((res) => {
+      let list = [];
+      res.datas.map((item) => {
+        if (item.content) {
+          item.content = JSON.parse(item.content)
+        }
+        list.push(item)
+      })
+      this.setData({
+        alreadyPaperBookList: list,
+      });
+    })
+  },
+  //鑾峰彇宸茬敵璇风數瀛愭牱涔�
+  getAlreadyEBookList() {
+    const data = {
+      start: 0,
+      size: 9999,
+      topicIdOrRefCode: 'applyBook',
+      appRefCode: app.config.appRefCode,
+      sort: {
+        type: 'Desc',
+        field: 'CreateDate'
+      }
+    }
+    app.MG.ugc.getTopicMessageList(data).then((res) => {
+      let list = []
+      if (res.datas.length > 0) {
+        res.datas.map((item) => {
+          if (item.feedBack) {
+            item.feedBack = JSON.parse(item.feedBack)
+            if (item.feedBack.endDate) {
+              let times = new Date(item.feedBack.endDate + ' 23:59:59').getTime()
+              let currentDate = new Date().getTime()
+              if (times < currentDate) {
+                item.isExpiry = true
+              }
+            }
+          }
+          if (item.content) {
+            item.content = JSON.parse(item.content)
+          }
+          if (item.state != 'Reject') {
+            list.push(item)
+          }
+        })
+        this.setData({
+          alreadyElectronicBookList: list,
+        });
+      }
+    })
+  },
+
+  //鑾峰彇褰撳墠宸茬敵璇锋鏁帮紙绾歌川锛�
+  getSelectPaperBookCount() {
+    app.MG.app
+      .getTicketResult({
+        ticketRefCodeOrGuid: 'paperSampleBookapplyNum',
+        roleId: this.data.userInfo.roleId
+      })
+      .then((res) => {
+        this.setData({
+          paperBookCount: res.totalCount - res.usedCount
+        })
+      })
+  },
+  //鑾峰彇褰撳墠宸茬敵璇锋鏁帮紙鐢靛瓙锛�
+  getSelectBookCount() {
+    app.MG.app
+      .getTicketResult({
+        ticketRefCodeOrGuid: 'electronicSampleBookapplyNum',
+        roleId: this.data.userInfo.roleId
+      })
+      .then((res) => {
+        this.setData({
+          ebookCount: res.totalCount - res.usedCount
+        })
+      })
+  },
+
   //鐢宠鐢靛瓙鏍蜂功
   appplyElectronicBook() {
     console.log(this.data.bookDetail)
     if (this.data.bookDetail.isApplyBook == 2 || this.data.bookDetail.isApplyBook == 4) {
-
       let role = this.data.userInfo != null ? this.data.userInfo.role : null
       if (role) {
         if (role == 'Teacher') {
-          if (this.data.noFile) {
-            this.getSelectBookCount()
-          } else {
+          if (!this.data.noFile) {
             wx.showToast({
               title: "鏆傛棤鐢靛瓙涔︽枃浠�,璇疯仈绯荤鐞嗗憳!",
               icon: 'none',
               duration: 1000,
             })
+            return
           }
+          if (this.data.ebookCount == 0) {
+            wx.showToast({
+              title: "鎮ㄧ殑鐢靛瓙鏍蜂功鐢宠娆℃暟宸茬敤灏斤紝鑻ヨ缁х画锛岃鑱旂郴绠$悊鍛橈紒",
+              icon: "none",
+              duration: 1000,
+            })
+            return false;
+          }
+          if (this.data.electronicBookList.length >= 2) {
+            wx.showToast({
+              title: "姣忔鏈�澶氬彧鍙敵璇�2鏈牱涔�",
+              icon: "none",
+              duration: 1000,
+            })
+            return false;
+          }
+          let isHas = this.data.electronicBookList.find((eitem) => eitem.id == this.data.bookDetail.id)
+          if (isHas) {
+            wx.showToast({
+              title: "璇ヤ功宸插湪娓呭崟鍒楄〃涓�",
+              icon: "none",
+              duration: 1000,
+            })
+            return false;
+          }
+          let isApply = this.data.alreadyElectronicBookList.find((eitem) => eitem.id == this.data.bookDetail.id)
+          if (isApply) {
+            wx.showToast({
+              title: "璇ヤ功宸茬敵璇凤紒",
+              icon: "none",
+              duration: 1000,
+            })
+            return false;
+          }
+          this.addBookFun(this.data.bookDetail, "eBook")
         } else {
           wx.showModal({
             title: '灏婃暚鐨勭敤鎴凤紝鎮ㄥソ锛�', //鎻愮ず鐨勬爣棰�
@@ -1463,8 +1673,7 @@
                 wx.navigateTo({
                   url: "/packageDomain/pages/teacherCertification/index",
                 });
-              } else if (res.cancel) {
-              }
+              } else if (res.cancel) {}
             }
           })
         }
@@ -1483,7 +1692,42 @@
       let role = this.data.userInfo != null ? this.data.userInfo.role : null
       if (role) {
         if (role == 'Teacher') {
-          this.getSelectPaperBookCount()
+          // 鐐瑰嚮閫変腑
+          if (this.data.paperBookCount == 0) {
+            wx.showToast({
+              title: "鎮ㄧ殑绾歌川鏍蜂功鐢宠娆℃暟宸茬敤灏斤紝鑻ヨ缁х画锛岃鑱旂郴绠$悊鍛橈紒",
+              icon: "none",
+              duration: 1000,
+            })
+            return false;
+          }
+          if (this.data.paperBookList.length >= 2) {
+            wx.showToast({
+              title: "姣忔鏈�澶氬彧鍙敵璇�2鏈牱涔�",
+              icon: "none",
+              duration: 1000,
+            })
+            return false;
+          }
+          let isHas = this.data.paperBookList.find((pitem) => pitem.id == this.data.bookDetail.id)
+          if (isHas) {
+            wx.showToast({
+              title: "璇ヤ功宸插湪娓呭崟鍒楄〃涓�",
+              icon: "none",
+              duration: 1000,
+            })
+            return false;
+          }
+          let isApply = this.data.alreadyPaperBookList.find((pitem) => pitem.id == this.data.bookDetail.id)
+          if (isApply) {
+            wx.showToast({
+              title: "璇ヤ功宸茬敵璇凤紒",
+              icon: "none",
+              duration: 1000,
+            })
+            return false;
+          }
+          this.addBookFun(this.data.bookDetail, "pBook")
         } else {
           wx.showModal({
             title: '灏婃暚鐨勭敤鎴凤紝鎮ㄥソ锛�', //鎻愮ず鐨勬爣棰�
@@ -1493,8 +1737,7 @@
                 wx.navigateTo({
                   url: "/packageDomain/pages/teacherCertification/index",
                 });
-              } else if (res.cancel) {
-              }
+              } else if (res.cancel) {}
             }
           })
         }
@@ -1507,221 +1750,75 @@
       })
     }
   },
-  //鑾峰彇褰撳墠宸茬敵璇锋鏁帮紙绾歌川锛�
-  getSelectPaperBookCount() {
-    app.MG.app
-      .getTicketResult({
-        ticketRefCodeOrGuid: 'paperSampleBookapplyNum',
-        roleId: this.data.userInfo.roleId
-      })
-      .then((res) => {
-        this.setData({
-          paperBookCount: res.totalCount - res.usedCount
-        })
-        this.getAlreadyBookList(this.data.bookDetail, 'pBook')
-      })
-  },
-  //鑾峰彇褰撳墠宸茬敵璇锋鏁帮紙鐢靛瓙锛�
-  getSelectBookCount() {
-    app.MG.app
-      .getTicketResult({
-        ticketRefCodeOrGuid: 'electronicSampleBookapplyNum',
-        roleId: this.data.userInfo.roleId
-      })
-      .then((res) => {
-        this.setData({
-          ebookCount: res.totalCount - res.usedCount
-        })
-        this.getAlreadyBookList(this.data.bookDetail, 'eBook')
-      })
-  },
-  //鑾峰彇宸茬敵璇风殑鏍蜂功鍒楄〃
-  getAlreadyBookList(item, type) {
-    let topicIdOrRefCode = null
+  //  娣诲姞鏍蜂功
+  addBookFun(item, type) {
+    let itemAttr = null
+    const eList = this.data.electronicBookList;
+    const pList = this.data.paperBookList;
+    itemAttr = {
+      id: item.id,
+      title: item.name || '-',
+      icon: item.icon,
+      checked: false,
+      defaultSaleMethodId: item.defaultSaleMethodId,
+      md5: item.datas.Icon,
+      author: item.author || '-',
+      price: item.price || '-',
+      isbn: item.isbn || '-',
+      publicationDate: item.publicationDate
+    }
     if (type == 'eBook') {
-      topicIdOrRefCode = 'applyBook'
-    } else {
-      topicIdOrRefCode = 'applyEntityBook'
-    }
-    const data = {
-      start: 0,
-      size: 9999,
-      topicIdOrRefCode,
-      appRefCode: app.config.appRefCode,
-      sort: {
-        type: 'Desc',
-        field: 'CreateDate'
-      }
-    }
-    app.MG.ugc.getTopicMessageList(data).then((res) => {
-      let itemAttr = null
-      let isHas = false
-      itemAttr = {
-        id: item.id,
-        title: item.name || '--',
-        icon: item.icon,
-        checked: false,
-        defaultSaleMethodId: item.defaultSaleMethodId,
-        md5: item.datas.Icon,
-        author: item.author || '--',
-        price: item.price || '--',
-        isbn: item.isbn || '--',
-        publicationDate: item.publicationDate
-      }
-      res.datas.map((item) => {
-        if (item.feedBack) {
-          item.feedBack = JSON.parse(item.feedBack)
-          if (item.feedBack.endDate) {
-            const currentDate = new Date()
-            let times = new Date(item.feedBack.endDate + ' 23:59:59').getTime()
-            if (times < currentDate.getTime()) {
-              item.isExpiry = true
-            }
-          }
-        }
-        if (item.content) {
-          item.content = JSON.parse(item.content)
-          item.content.map((e) => (item.productId = e.id))
-        }
+      eList.push(itemAttr)
+      this.setData({
+        electronicBookList: eList,
       })
-      let objVal = null
-      if (type != 'eBook') {
-        objVal = res.datas.find(
-          (i) => i.productId == item.id && i.state != 'Reject' && i.state == 'WaitAudit'
-        )
-      } else {
-        objVal = res.datas.find((i) => i.productId == item.id && i.state != 'Reject')
-      }
-      if (objVal && !objVal.isExpiry && type == 'eBook') {
-        wx.showToast({
-          title: "鎮ㄥ凡鐢宠璇ユ牱涔�",
-          icon: 'none',
-          duration: 1000,
-        })
-      } else if (objVal && type != 'eBook') {
-        wx.showToast({
-          title: "鎮ㄥ凡鐢宠璇ユ牱涔�",
-          icon: 'none',
-          duration: 1000,
-        })
-      } else {
-        if (type == 'eBook') {
-          if (this.data.ebookCount > 0) {
-            const eBookData = this.data.electronicBookList
-            if (eBookData.length == 2) {
-              wx.showToast({
-                title: "姣忔鏈�澶氬彧鍙敵璇�2鏈牱涔�",
-                icon: 'none',
-                duration: 1000,
-              })
-              return false
-            }
-            if (eBookData.length > 0) {
-              for (let i = 0; i < eBookData.length; i++) {
-                if (eBookData[i].id == item.id) {
-                  isHas = true
-                }
-              }
-              if (!isHas) {
-                wx.showToast({
-                  title: "娣诲姞鎴愬姛锛屽湪鏍蜂功鐢宠鍗曠瓑鎮ㄥ摝~",
-                  icon: "none",
-                  duration: 1000,
-                })
-                this.setData({
-                  electronicBookList: [...this.data.electronicBookList, ...[itemAttr]],
-                  num: this.data.electronicBookList.length + this.data.paperBookList.length
-                })
-                wx.setStorageSync("electronicBookList", this.data.electronicBookList);
-              } else {
-                wx.showToast({
-                  title: "璇ヤ功宸插湪娓呭崟鍒楄〃涓�",
-                  icon: "none",
-                  duration: 1000,
-                })
-              }
-            } else {
-              wx.showToast({
-                title: "娣诲姞鎴愬姛锛屽湪鏍蜂功鐢宠鍗曠瓑鎮ㄥ摝~",
-                icon: "none",
-                duration: 1000,
-              })
-              this.setData({
-                electronicBookList: [itemAttr],
-                num: 1 + this.data.paperBookList.length
-              })
-              wx.setStorageSync("electronicBookList", [itemAttr]);
-            }
-          } else {
-            wx.showToast({
-              title: "鎮ㄧ殑鐢靛瓙鏍蜂功鐢宠娆℃暟宸茬敤灏斤紝鑻ヨ缁х画锛岃鑱旂郴绠$悊鍛橈紒",
-              icon: "none",
-              duration: 1000,
-            })
-          }
-        } else {
-          if (this.data.paperBookCount > 0) {
-            const pBookData = this.data.paperBookList
-            if (pBookData.length == 2) {
-              wx.showToast({
-                title: "姣忔鏈�澶氬彧鍙敵璇�2鏈牱涔�",
-                icon: 'none',
-                duration: 1000,
-              })
-              return false
-            }
-            if (pBookData.length > 0) {
-              for (let i = 0; i < pBookData.length; i++) {
-                if (pBookData[i].id == item.id) {
-                  isHas = true
-                }
-              }
-              if (!isHas) {
-                wx.showToast({
-                  title: "娣诲姞鎴愬姛锛屽湪鏍蜂功鐢宠鍗曠瓑鎮ㄥ摝~",
-                  icon: 'none',
-                  duration: 1000,
-                })
-                this.setData({
-                  paperBookList: [...this.data.paperBookList, ...[itemAttr]],
-                  num: this.data.paperBookList.lenght + this.data.electronicBookList.length
-                })
-                wx.setStorageSync("paperBookList", this.data.paperBookList);
-              } else {
-                wx.showToast({
-                  title: "璇ヤ功宸插湪娓呭崟鍒楄〃涓�",
-                  icon: "none",
-                  duration: 1000,
-                })
-              }
-            } else {
-              wx.showToast({
-                title: "娣诲姞鎴愬姛锛屽湪鏍蜂功鐢宠鍗曠瓑鎮ㄥ摝~",
-                icon: 'none',
-                duration: 1000,
-              })
-              this.setData({
-                paperBookList: [itemAttr],
-                num: 1 + this.data.electronicBookList.length
-              })
-              wx.setStorageSync("paperBookList", [itemAttr]);
-            }
-          } else {
-            wx.showToast({
-              title: "鎮ㄧ殑绾歌川鏍蜂功鐢宠娆℃暟宸茬敤灏斤紝鑻ヨ缁х画锛岃鑱旂郴绠$悊鍛橈紒",
-              icon: 'none',
-              duration: 1000,
-            })
-          }
-        }
-      }
+      wx.setStorageSync("electronicBookList", eList);
+    } else {
+      pList.push(itemAttr)
+      this.setData({
+        paperBookList: pList,
+      })
+      wx.setStorageSync("paperBookList", pList);
+    }
+    this.setData({
+      num: this.data.num + 1
+    })
+    wx.showToast({
+      title: "娣诲姞鎴愬姛锛屽湪鏍蜂功鐢宠鍗曠瓑鎮ㄥ摝~",
+      icon: "none",
+      duration: 1000,
     })
   },
+
   //鍘绘牱涔︾敵璇峰崟
   goApply() {
     wx.navigateTo({
       url: "/packageDomain/pages/sampleBookList/applicationForm/index",
     });
   },
-
-})
+  handleTree() {
+    // const child = this.selectComponent('#teach-tree')
+    let tree
+    // let openIds = child.data.openIds
+    if (this.data.tabValue == 'jsek_teachingResources') {
+      tree = this.data.teach
+    } else {
+      tree = this.data.learn
+    }
+    for (let index = 0; index < tree.length; index++) {
+      const item = tree[index];
+      if (item.children && item.children.length > 0) {
+        const num = this.data.openTeachids.findIndex(citem => item.id == citem)
+        if (num >= 0) {
+          item.open = true
+        } else {
+          item.open = false
+        }
+        this.handleTree(item.children)
+      }
+    }
+    this.setData({
+      teach: tree
+    })
+  },
+})
\ No newline at end of file

--
Gitblit v1.9.1