litian
2024-07-22 f4e7324c27b7c6ecb824029e22a13541c5033ade
packageBookService/pages/bookServices/detail/components/testResource/testResource.js
@@ -1,5 +1,5 @@
// pages/bookServices/detail/components/testResource/testResource.js
const app = getApp()
const app = getApp();
Component({
  /**
   * 组件的属性列表
@@ -7,113 +7,162 @@
  properties: {
    list: {
      type: Array,
      value: []
      value: [],
    },
    bookInfo: {
      type: Object,
      value: "",
    },
    tab: {
      type: String,
      value: "",
    },
    openIds: {
      type: Array,
      value: [],
    },
    mockData: {
      type: Object,
      value: {}
    }
      value: {},
    },
    storeInfo: {
      type: String,
      value: "",
    },
    jslx: {
      type: Boolean,
    },
  },
  /**
   * 组件的初始数据
   */
  data: {
    selectBtn: 'test',  // test  mock
    radioItem: 'test',
    selectBtn: "test", // test  mock
    radioItem: "test",
    loading: false,
  },
  ready() {},
  /**
   * 组件的方法列表
   */
  methods: {
    async goTest(e) {
      const value = e.currentTarget.dataset.value
      const token = wx.getStorageSync('jsek-token')
      if (!token) {
        return wx.getUserProfile({
          desc: '用户登录',
          success: (res) => {
            console.log(res);
          }
        })
      }
      wx.showLoading({
        title: '加载中',
      })
      // 获取章节下是否有题目
      let idPathList = []
      let query = {
        path: '*',
        queryType: '*',
        productId: this.properties.bookInfo.id,
        cmsPath: value.productLinkPath,
        pading: {
          start: 0,
          size: 999
        }
      }
      if (value.childrenFolderCount == 0) {
        wx.hideLoading()
        return wx.showToast({
          icon: "error",
          title: '暂无数据',
        })
      } else {
        const res = await app.MG.store.getProductDetail(query)
        res.datas.cmsDatas[0].datas.forEach((item) => {
          idPathList.push({
            id: item.id,
            name: item.name,
            productLinkPath: item.productLinkPath,
            type: item.type
          })
        })
      }
      wx.hideLoading()
      wx.navigateTo({
        url: `/packageBookService/pages/bookServices/examination/examination?bookId=${this.properties.bookInfo.id}&productLinkPath=${value.productLinkPath}&rootCmsItemId=${this.properties.bookInfo.rootCmsItemId}&idPathList=${JSON.stringify(idPathList)}&answerTitle=${value.name}&answerType=${'option'}`,
    testBtn() {
      this.setData({
        radioItem: 'test'
      })
    },
    goMycollect(e) {
      const answertype = e.currentTarget.dataset.answertype
      const token = wx.getStorageSync('jsek-token')
    mockBtn() {
      this.setData({
        radioItem: 'mock'
      })
    },
    async goTest(e) {
      const value = e.detail.value.item;
      const token = wx.getStorageSync("jsek-token");
      if (!token) {
        return wx.getUserProfile({
          desc: '用户登录',
          desc: "用户登录",
          success: (res) => {
            console.log(res);
          }
          },
        });
      }
      wx.showLoading({
        title: "加载中",
      });
      // 获取章节下是否有题目
      let idPathList = [];
      if (this.properties.storeInfo || this.properties.jslx) {
        idPathList.push({
          id: this.properties.bookInfo.id,
          name: this.properties.bookInfo.name,
          productLinkPath: value.productLinkPath,
          type: value.type,
        })
      } else {
        let query = {
          path: "*",
          queryType: "*",
          productId: this.properties.bookInfo.id,
          cmsPath: value.productLinkPath,
          pading: {
            start: 0,
            size: 999,
          },
        };
        if (value.childrenFolderCount == 0) {
          wx.hideLoading();
          return wx.showToast({
            icon: "error",
            title: "暂无数据",
          });
        } else {
          const res = await app.MG.store.getProductDetail(query);
          res.datas.cmsDatas[0].datas.forEach((item) => {
            idPathList.push({
              id: item.id,
              name: item.name,
              productLinkPath: item.productLinkPath,
              type: item.type,
            });
          });
        }
      }
      wx.hideLoading();
      wx.navigateTo({
        url: `/packageBookService/pages/bookServices/examination/examination?bookId=${
          this.properties.bookInfo.id
        }&productLinkPath=${value.productLinkPath}&rootCmsItemId=${
          this.properties.bookInfo.rootCmsItemId
        }&idPathList=${JSON.stringify(idPathList)}&answerTitle=${
          value.name
        }&answerType=${"option"}&storeInfo=${this.properties.storeInfo}&jslx=${this.properties.jslx}`,
      });
    },
    goMycollect(e) {
      const answertype = e.currentTarget.dataset.answertype;
      const token = wx.getStorageSync("jsek-token");
      if (!token) {
        return wx.getUserProfile({
          desc: "用户登录",
          success: (res) => {
            console.log(res);
          },
        });
      }
      wx.navigateTo({
        url: `/packageBookService/pages/bookServices/examination/examination?bookId=${this.properties.bookInfo.id}&rootCmsItemId=${this.properties.bookInfo.rootCmsItemId}&answerTitle=${answertype == 'collectQuestion' ? '我的收藏' : '我的错题'}&answerType=${answertype}`,
      })
        url: `/packageBookService/pages/bookServices/examination/examination?bookId=${
          this.properties.bookInfo.id
        }&rootCmsItemId=${this.properties.bookInfo.rootCmsItemId}&answerTitle=${
          answertype == "collectQuestion" ? "我的收藏" : "我的错题"
        }&answerType=${answertype}`,
      });
    },
    // 练习 组件切换
    onRadioChange(e) {
      this.setData({
        radioItem: e.detail.value
      })
        radioItem: e.detail.value,
      });
      if (e.detail.value == "mock") {}
    },
    async getMockId() {
      wx.showLoading({
        title: '加载中'
      })
      let id
        title: "加载中",
      });
      let id;
      let query = {
        start: 0,
        size: 99,
        productId: this.properties.bookInfo.id
      }
        productId: this.properties.bookInfo.id,
      };
      await app.MG.edu.getQuizConfigListByProduct(query).then((res) => {
        id = res.datas[0].id
      })
      return id
        id = res.datas[0].id;
      });
      return id;
    },
    // 组卷跳转答题界面
    async goMackPaper(e) {
@@ -121,21 +170,30 @@
      // if (!token) {
      //   return logIn()
      // }
      const mockid = await this.getMockId()
      wx.hideLoading()
      const item = e.currentTarget.dataset.item
      const mockid = await this.getMockId();
      wx.hideLoading();
      const item = e.currentTarget.dataset.item;
      wx.navigateTo({
        url: `/packageBookService/pages/bookServices/examination/examination?bookId=${this.properties.bookInfo.id}&rootCmsItemId=${this.properties.bookInfo.rootCmsItemId}&answerTitle=${item.name}&answerType=${'mock'}&uuid=${item.id}&mockid=${mockid}`,
      })
        url: `/packageBookService/pages/bookServices/examination/examination?bookId=${
          this.properties.bookInfo.id
        }&rootCmsItemId=${this.properties.bookInfo.rootCmsItemId}&answerTitle=${
          item.name
        }&answerType=${"mock"}&uuid=${item.id}&mockid=${mockid}`,
      });
    },
    // 购买组卷
    buyMock() {
      var myEventDetail = {}
      var myEventDetail = {};
      var myEventOption = {
        bubbles: true,
        composed: true
      }
      this.triggerEvent('buyMock', myEventDetail, myEventOption)
    }
  }
})
        composed: true,
      };
      this.triggerEvent("buyMock", myEventDetail, myEventOption);
    },
    changeTestLoaidng(type) {
      this.setData({
        loading: type,
      });
    },
  },
});