litian
2025-01-10 61052ffdfbbb93dae84803c5bd966899c2afb684
packageBookService/pages/bookServices/detail/index.js
@@ -75,7 +75,8 @@
      residue: 0, // 组卷剩余次数
      mockList: [], // 用户组卷提交信息
    },
    isBuyBank: false,
    isBuyBank: false, // 题库是否购买
    isShoppingBank: false, // 题库是否加入购物车
    bankSaleData: null,
    relatedBookLoading: false,
    noRelatedBookData: false,
@@ -213,7 +214,8 @@
    protocolShow: false,
    protocolTxt: '',
    learnMenu: null,
    md5List: []
    md5List: [],
    editDialog: false
  },
  resetTree: function (e) {
@@ -270,8 +272,6 @@
      this.setData({
        tabValue: options.tabValue,
      });
    }
  },
@@ -292,7 +292,7 @@
    this.setData({
      num: Number(this.data.paperBookList.length) + Number(this.data.electronicBookList.length),
    });
    if (this.data.bookDetail) {
    if (this.data.bookDetail.id) {
      this.getBookInfo(this.data.bookDetail.id)
    }
  },
@@ -432,10 +432,14 @@
        protectedEpub: [],
        probationPage: [], //pdf试读页数
        freeEpubPage: [], //epub试读百分比
        bookEditor: [], //图书编辑
        contactInformation: [], //联系方式
      },
    };
    app.MG.store.getProductDetail(query).then(async (res) => {
      this.getResourceCode(id, res.datas.rootCmsItemId)
      res.datas.bookEditor = res.datas.bookEditor ? res.datas.bookEditor : '-'
      res.datas.contactInformation = res.datas.contactInformation ? res.datas.contactInformation : '-'
      this.setData({
        bookDetail: res.datas,
        buyIdList: res.datas.purchasedSaleMethodIdList,
@@ -469,6 +473,16 @@
          }
          await this.getBookClass(classData);
        }
      }
      // 扫码从题库跳转回图书详情
      const localData = wx.getStorageSync('tabValue')
      if (localData) {
        this.setData({
          tabValue: localData
        })
        wx.removeStorage({
          key: 'tabValue',
        })
      }
      if (this.data.tabValue == 'questionBank' || this.data.tabValue == 'jsek_cloudLearning' || this.data.tabValue == 'jsek_teachingResources') {
        const checkData = this.data.cmsDatas.find(
@@ -507,13 +521,12 @@
        }
      }
      this.setData({
        "bookDetail.publicationDate": moment(this.data.bookDetail.publicationDate).format("YYYY年MM月"),
        "bookDetail.publicationDate": this.data.bookDetail.publicationDate ? moment(this.data.bookDetail.publicationDate).format("YYYY年MM月") : '',
        "bookDetail.price": this.numFormat(this.data.bookDetail.price),
        "bookDetail.oldPrice": this.numFormat(this.data.bookDetail.oldPrice),
        "bookDetail.paperPrice": this.numFormat(
          this.data.bookDetail.paperPrice
        ),
      });
    });
  },
@@ -532,8 +545,8 @@
      }
    }
    app.MG.store.getProductDetail(query).then((res) => {
      console.log(111, res.datas.cmsDatas[0].datas);
      let isBuyBank = true
      let isShoppingBank = true
      let bankSaleData = null
      // 判断题库是否整体购买
      const bank = res.datas.cmsDatas[0].datas.find((item) => item.refCode == 'questionBank')
@@ -542,6 +555,7 @@
          bankSaleData = bank.saleMethod.find((item) => item.SaleType == 'Normal')
          if (bankSaleData) {
            isBuyBank = this.data.buyIdList.includes(bankSaleData.Id)
            isShoppingBank = this.data.buyIdList.includes(bankSaleData.Id) ? true : this.data.shoppingCartGetId.includes(bankSaleData.Id)
          }
        }
      }
@@ -549,6 +563,7 @@
        resourceCodeList: res.datas.cmsDatas[0].datas,
        learnTaskData: res.datas.cmsDatas[0].datas.filter((item) => item.refCode == 'jsek_learningTasks')[0],
        isBuyBank,
        isShoppingBank,
        bankSaleData
      })
      if (res.datas.cmsDatas[0].datas.length) this.setData({
@@ -744,6 +759,14 @@
      }
    }
  },
  // 联系
  editPhone() {
    this.setData({
      editDialog: true
    })
  },
  // 我要建议
  suggestBtn() {
    // 检查登录状态
@@ -1021,7 +1044,6 @@
      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)
@@ -1030,7 +1052,7 @@
            md5List: md5s,
          });
        }
        if (flags) item.saleMethod = []
        if (flags && cloundSaleMethod.Price > 0) item.saleMethod = []
        item.checked = false;
        if (item.sysType == 'CmsItem') {
          // 教学资源 类型名称赋值
@@ -1078,7 +1100,7 @@
          new Date(item.saleMethod.find((citem) => citem.SaleType == 'Normal').BeginDate).getTime() <= new Date().getTime()
        ) || (flags && cloundSaleMethod.Price == 0)
        // 判断云学习全部购买按钮是否显示
        let isShowBuyCloundMenu = flags && cloundSaleMethod.Price >= 0 && !this.data.buyIdList.includes(cloundSaleMethod.Id)
        let isShowBuyCloundMenu = flags && cloundSaleMethod.Price > 0 && !this.data.buyIdList.includes(cloundSaleMethod.Id)
        // 判断资源购买按钮是否显示
        let isShowBuyCloundBtn = !flags && res.datas.cmsDatas[0].datas.some(citem => citem.saleMethod.length != 0)
        // 判断购物车按钮和锁按钮是否显示
@@ -1091,7 +1113,7 @@
          isshowDrawBtn,
          isShowBuyCloundMenu,
          isShowBuyCloundBtn,
          isCloundHaveSaleMethod: flags,
          isCloundHaveSaleMethod: flags && cloundSaleMethod.Price > 0,
          learn: list,
          loading: false,
          openLearnids: result,
@@ -1162,19 +1184,17 @@
              });
            }
          } else {
            if (isTSFW.length > 0) {
              data = res.datas.cmsDatas[0].datas.filter((item) => item.type == 'questionBankFolder' && (item.childrenFolderCount > 0 || item.childrenCount > 0) && (item.name !== '填空题' &&
                  item.name !== '判断题' &&
                  item.name !== '多选题' &&
                  item.name !== '简答题')) &&
                item.refCode != 'jsek_interaction'
              data = res.datas.cmsDatas[0].datas.filter((item) => item.type == 'questionBankFolder' && item.refCode != 'jsek_interaction' && (item.childrenFolderCount > 0 || item.childrenCount > 0) && (item.name !== '填空题' &&
                item.name !== '判断题' &&
                item.name !== '多选题' &&
                item.name !== '简答题') && item.name !== '单选题')
              that.setData({
                jslx: false,
              });
            } else {
              data = res.datas.cmsDatas[0].datas.filter((item) => item.type == 'questionBankFolder' &&
                item.refCode != 'jsek_interaction')
              data = res.datas.cmsDatas[0].datas.filter((item) => item.type == 'questionBankFolder')
              // && item.refCode != 'jsek_interaction'
              that.setData({
                jslx: true,
              });
@@ -1652,7 +1672,7 @@
        (item) => item == saleData.Id
      );
      // 已经购买
      if (isShow) return false
      if (isShow || saleData.Price == 0) return false
      // 未购买,查看销售方式是否过期
      if (!isShow) {
        const flag = new Date(saleData.EndDate).getTime() >= new Date().getTime() &&
@@ -1900,7 +1920,6 @@
  // 云学习全部购买
  async buyCloudLearnClass() {
    const cloundMenu = this.data.resourceCodeList.find((item) => item.refCode == 'jsek_cloudLearning')
    debugger
    let query = {
      remarks: '云学习',
      requests: [{
@@ -1952,7 +1971,6 @@
  // 题库购买
  async buyBank() {
    console.log(11, this.data.bankSaleData);
    let query = {
      remarks: '云测试',
      requests: [{
@@ -1985,6 +2003,24 @@
        });
    }
  },
  // 题库加入购物车
  handleShoppingBank() {
    let query = {
      requests: [{
        saleMethodId: this.data.bankSaleData.Id,
        storeEventId: null,
        agentCode: "云测试",
      }, ],
    };
    app.MG.store.addShoppingCart(query).then(res => {
      wx.showToast({
        icon: 'success',
        title: '加入成功',
      })
      this.getShoppingCartProductGet();
      this.getBookInfo(this.data.bookDetail.id)
    })
  },
  // 组卷格式化日期显示
  DateFormat(date, fmt) {
    if (date && fmt) {