闫增涛
2024-03-27 1053bf2995141d5f73868bd2fb58deb1bc68c480
packageBookService/pages/bookServices/detail/index.js
@@ -34,6 +34,7 @@
    openTeachids: [],
    openLearnids: [],
    openTestids: [],
    applyResourceState: false,  // 申请教学资源按钮防抖
    resourceClassList: [], // 资源所属分类
    applyState: "",  // 教学资源申请状态
    deadline: "",  // 教学资源申请有效日期
@@ -53,7 +54,6 @@
      mockList: [] // 用户组卷提交信息
    },
    flag: true,
    applyResourceLoading: false,
    noResources: false,
    selectedIds: "",//商品或子商品销售方式
    bookBuy: false, //商品或子商品是否购买
@@ -76,6 +76,45 @@
    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"
    }
  },
@@ -180,7 +219,7 @@
  // 格式化日期
  formatDate(dateString) {
    if (!dateString) {
      return 'Invalid date';
      return '';
    }
    const match = dateString.match(/^(\d{4})\/(\d{1,2})\/(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/);
    if (!match) {
@@ -281,9 +320,12 @@
      });
      this.getSubTtem();
      // 获取图书分类
      const iconType = JSON.parse(res.datas.bookClassification)[0][0];
      const classType = JSON.parse(res.datas.bookClassification)[0][1];
      const className = await this.getBookClass(iconType, classType)
      let className = ''
      if (Array.isArray(res.datas.bookClassification) && res.datas.bookClassification.length) {
        const iconType = JSON.parse(res.datas.bookClassification)[0][0];
        const classType = JSON.parse(res.datas.bookClassification)[0][1];
        className = await this.getBookClass(iconType, classType)
      }
      // 获取组卷销售id
      if (res.datas.saleMethod && res.datas.saleMethod.length) {
        res.datas.saleMethod.forEach((item) => {
@@ -399,7 +441,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
@@ -597,7 +638,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
@@ -702,12 +743,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
              }
@@ -715,7 +756,7 @@
              break
            }
          }
        } else if (item.childrenCount > 0) {
        } else if (item.children && item.children.length > 0) {
          result.push(item.id)
          index += 1
        }
@@ -799,9 +840,8 @@
    });
  },
  async buyBook() {
    console.log(this.data.bookItemDetail.defaultSaleMethodId, 'this.data.bookItemDetail.defaultSaleMethodId');
    if (!this.data.expire) {
      let bookOrdersId = ''
      let query = {
@@ -837,7 +877,7 @@
  },
  // 获取教学资源下载是否申请通过
  getApplyInfo(id) {
  async getApplyInfo(id) {
    // 获取当前时间
    const currentDate = new Date()
    let query = {
@@ -850,7 +890,7 @@
      appRefCode: app.config.appRefCode,
      topicIdOrRefCode: 'productDownLoad'
    }
    app.MG.ugc.getTopicMessageList(query).then((res) => {
    await app.MG.ugc.getTopicMessageList(query).then((res) => {
      const applyResource = res.datas.find((item) => {
        let content = []
        try {
@@ -906,13 +946,23 @@
      }
    })
    this.setData({
      applyResourceLoading: false
      applyResourceState: false,
    })
    wx.hideLoading()
  },
  // 申请教学资源
  applyResource() {
    if (this.data.applyResourceState) {
      return wx.showToast({
        icon: 'error',
        title: '请勿重复点击',
      })
    }
    this.setData({
      applyResourceLoading: true
      applyResourceState: true
    })
    wx.showLoading({
      title: '加载中',
    })
    // let role = userStore.userInfo ? userStore.userInfo.role : null
    // if (role) {
@@ -934,13 +984,13 @@
        }
      ])
    }
    app.MG.ugc.newTopicMessage(query).then((res) => {
    app.MG.ugc.newTopicMessage(query).then(async (res) => {
      if (res) {
        wx.showToast({
          title: '申请已提交,请待审核通过后下载',
        })
      }
      this.getApplyInfo(this.data.bookDetail.id)
      await this.getApplyInfo(this.data.bookDetail.id)
    })
    //   } else {
    //     ElMessageBox.confirm('请先进行教师认证!', '尊敬的用户,您好!', {
@@ -1306,7 +1356,6 @@
        keys: [this.data.bookId]
      })
      .then((res) => {
        console.log(JSON.parse(res[0].value));
        if (res && res.length) {
          const mock = JSON.parse(res[0].value)
          mock.forEach(item => {
@@ -1431,6 +1480,7 @@
  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') {
@@ -1458,6 +1508,12 @@
          })
        }
      }
    } else {
      wx.showToast({
        title: "该书不能申请电子样书",
        icon: 'none',
        duration: 1000,
      })
    }
  },
  //申请纸质样书
@@ -1482,6 +1538,12 @@
          })
        }
      }
    } else {
      wx.showToast({
        title: "该书不能申请纸质样书",
        icon: 'none',
        duration: 1000,
      })
    }
  },
  //获取当前已申请次数(纸质)
@@ -1700,5 +1762,29 @@
      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
    })
  },
})