yiming
2024-04-11 a9bd2df4da1cf7b198db7bf2d67ce8adbbe89b32
pages/bibliographyList/index.js
@@ -7,6 +7,12 @@
     * 页面的初始数据
     */
    data: {
      input: '',
      dialogKey: '',
      showWithInput: false,
      showTextAndTitleWithInput: false,
      downloadLoadin: false,
      isMore: null,
      higherList: [],
      vocationalList: [],
      teacherList: [],
@@ -15,7 +21,14 @@
      teacherTotal: 0,
      value: '',
      BarHeight: '',
      navBarHeight: ''
      navBarHeight: '',
      start: 1,
      tabValue: '',
      keyword: '',
      Md5: '',
      emailError: false,
      loading: true, //开启骨架屏加载
      hidden: true, //是否展示内容
    },
    /**
@@ -34,7 +47,13 @@
        barHeight: systInfo.statusBarHeight,
      })
      let event = {
        detail: {
          value: "0"
        }
      }
      this.onTabsChange(event)
@@ -91,14 +110,34 @@
    },
    onTabsChange(event) {
      console.log(`Change tab, tab-panel value is ${event.detail.value}.`);
      const value = event.detail.value
      if (value === '0') {
        console.log(value);
        this.setData({
          tabValue: value,
          isMore: false
        })
      } else if (value === '1') {
        console.log(value);
        this.setData({
          tabValue: value,
          isMore: false
        })
      } else if (value === '2') {
        console.log(value);
        this.setData({
          tabValue: value,
          isMore: false
        })
      }
    },
    onTabsClick(event) {
      console.log(`Click tab, tab-panel value is ${event.detail.value}.`);
    },
    //高等教育
    higherGet(keyword) {
      console.log(keyword, 'keyword');
      let searchObj = {
        'Name*': keyword,
        '||author*': keyword,
@@ -111,7 +150,7 @@
        queryType: '*',
        paging: {
          start: '0',
          size: '999'
          size: this.data.start * 9
        },
        coverSize: {
          width: 260
@@ -137,7 +176,12 @@
          higherTotal: res.total
        })
        console.log(this.data.higherList, '5555');
        this.setData({
          loading: false, //开启骨架屏加载
          hidden: false, //是否展示内容
        })
      })
      wx.stopPullDownRefresh()
    },
@@ -155,7 +199,7 @@
        queryType: '*',
        paging: {
          start: '0',
          size: '999'
          size: this.data.start * 9
        },
        coverSize: {
          width: 260
@@ -180,6 +224,7 @@
        })
      })
      wx.stopPullDownRefresh()
    },
    // 职业教育
    teacherGet(keyword) {
@@ -194,7 +239,7 @@
        queryType: '*',
        paging: {
          start: '0',
          size: '999'
          size: this.data.start * 9
        },
        coverSize: {
          width: 260
@@ -217,18 +262,19 @@
          teacherList: res.datas,
          teacherTotal: res.total
        })
      })
      wx.stopPullDownRefresh()
    },
    downloadData(event) {
      this.setData({
        downloadLoadin: true
      })
      console.log(111);
      const item = event.currentTarget.dataset.item;
      // console.log(item.datas.freeFile.Value);
      const URL = 'http://182.92.203.7:3001/file/api/ApiDownload?md5=' + item.datas.freeFile.Value
      const URL = app.config.requestCtx + '/file/api/ApiDownload?md5=' + item.datas.freeFile.Value
      item.determine = false
      console.log(URL, 'URL');
      setTimeout(() => {
        if (URL) {
          item.determine = true
@@ -252,6 +298,11 @@
          console.log('下载文件失败', res);
        }
      });
      setTimeout(() => {
        this.setData({
          downloadLoadin: false
        });
      }, 2000);
    },
    onSearchSubmit: function (e) {
      const keyword = e.detail.value;
@@ -266,5 +317,149 @@
    goBack() {
      wx.navigateBack();
    },
    onReachBottom(e) {
      if (this.data.tabValue == 0) {
        console.log(0);
        if (this.data.higherList.length < this.data.higherTotal) {
          this.setData({
            isMore: true,
            start: this.data.start + 1
          })
          this.higherGet()
        } else {
          this.setData({
            isMore: true,
          })
          setTimeout(() => {
            this.setData({
              isMore: false
            })
          }, 100)
        }
      } else if (this.data.tabValue == 1) {
        if (this.data.teacherList.length < this.data.teacherTotal) {
          this.setData({
            isMore: true,
            start: this.data.start + 1
          })
          this.teacherGet()
        } else {
          this.setData({
            isMore: true,
          })
          setTimeout(() => {
            this.setData({
              isMore: false
            })
          }, 100)
        }
        console.log(2);
      } else if (this.data.tabValue == 2) {
        if (this.data.vocationalList.length < this.data.vocationalTotal && this.data.vocationalList.length > 9) {
          this.setData({
            isMore: true,
            start: this.data.start + 1
          })
          this.vocationalGet()
        } else {
          this.setData({
            isMore: true,
          })
          setTimeout(() => {
            this.setData({
              isMore: false
            })
          }, 100)
        }
        console.log(2);
      }
    },
    onPullDownRefresh() {
      let keyword = this.data.value
      this.setData({
        start: 1,
      })
      this.higherGet(keyword)
      this.vocationalGet(keyword)
      this.teacherGet(keyword)
    },
    // 邮箱点击
    mailbox(e) {
      const key = e.currentTarget.dataset.key;
      const item = e.currentTarget.dataset.item;
      this.setData({
        [key]: true,
        dialogKey: key,
        input: '',
        Md5: item.datas.freeFile.FileList[0].Md5
      });
    },
    onEmailInput(e) {
      const isEmailValid = /^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.[a-zA-Z0-9]{2,6}$/.test(e.detail.value);
      this.setData({
        emailError: !isEmailValid,
        "input": e.detail.value,
      });
    },
    //弹窗确认
    onConfirm() {
      if (!this.data.emailError && this.data.input) {
        const {
          dialogKey
        } = this.data;
        this.setData({
          [dialogKey]: false
        });
        console.log(this.data.input);
        console.log(this.data.Md5);
        if (this.data.input) {
          let query = {
            eMail: this.data.input,
            md5s: [this.data.Md5]
          }
          app.MG.file.sendFileWithEmail(query).then(res => {
            console.log(res);
          })
        }
      } else {
        // 校验不通过,给出错误提示
        wx.showToast({
          title: '邮箱格式不正确',
          icon: 'none',
        });
      }
    },
    // 弹窗取消
    closeDialog() {
      const {
        dialogKey
      } = this.data;
      this.setData({
        [dialogKey]: false
      });
      console.log(111);
    },
  })