| | |
| | | } from "../../../../assets/js/login"; |
| | | import FormData from '../../../../utils/formdata/index.js'; |
| | | const app = getApp(); |
| | | var pastData = require('../../psychologyAnswer/testdata/index') |
| | | Page({ |
| | | /** |
| | | * 页面的初始数据 |
| | |
| | | residue: 0, // 组卷剩余次数 |
| | | mockList: [], // 用户组卷提交信息 |
| | | }, |
| | | isBuyBank: false, // 题库是否购买 |
| | | isShoppingBank: false, // 题库是否加入购物车 |
| | | bankSaleData: null, |
| | | relatedBookLoading: false, |
| | | noRelatedBookData: false, |
| | | relatedBookPath: "", // 相关图书path |
| | |
| | | isShowUp: true, |
| | | protocolShow: false, |
| | | protocolTxt: '', |
| | | learnMenu: null |
| | | learnMenu: null, |
| | | md5List: [], |
| | | editDialog: false |
| | | }, |
| | | |
| | | resetTree: function (e) { |
| | |
| | | this.setData({ |
| | | tabValue: options.tabValue, |
| | | }); |
| | | |
| | | |
| | | } |
| | | }, |
| | | |
| | | /** |
| | | * 生命周期函数--监听页面显示 |
| | | */ |
| | | onShow() { |
| | | onShow(options) { |
| | | if (wx.getStorageSync("paperBookList")) { |
| | | this.setData({ |
| | | paperBookList: JSON.parse(wx.getStorageSync("paperBookList")), |
| | |
| | | this.setData({ |
| | | num: Number(this.data.paperBookList.length) + Number(this.data.electronicBookList.length), |
| | | }); |
| | | if (this.data.bookDetail.id) { |
| | | this.getBookInfo(this.data.bookDetail.id) |
| | | } |
| | | }, |
| | | |
| | | /** |
| | |
| | | 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, |
| | |
| | | } |
| | | 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( |
| | |
| | | } |
| | | } |
| | | 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 |
| | | ), |
| | | |
| | | }); |
| | | }); |
| | | }, |
| | |
| | | } |
| | | } |
| | | app.MG.store.getProductDetail(query).then((res) => { |
| | | let isBuyBank = true |
| | | let isShoppingBank = true |
| | | let bankSaleData = null |
| | | // 判断题库是否整体购买 |
| | | const bank = res.datas.cmsDatas[0].datas.find((item) => item.refCode == 'questionBank') |
| | | if (bank) { |
| | | if (bank.saleMethod.length) { |
| | | 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) |
| | | } |
| | | } |
| | | } |
| | | this.setData({ |
| | | resourceCodeList: res.datas.cmsDatas[0].datas, |
| | | learnTaskData: res.datas.cmsDatas[0].datas.filter((item) => item.refCode == 'jsek_learningTasks')[0] |
| | | 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({ |
| | | learnMenu: res.datas.cmsDatas[0].datas.find(item => item.refCode == 'jsek_cloudLearning') |
| | |
| | | } |
| | | } |
| | | }, |
| | | |
| | | // 联系 |
| | | editPhone() { |
| | | this.setData({ |
| | | editDialog: true |
| | | }) |
| | | }, |
| | | |
| | | // 我要建议 |
| | | suggestBtn() { |
| | | // 检查登录状态 |
| | |
| | | } |
| | | // newArr.push(item) |
| | | // 在插入过程中对数据进行排序 |
| | | newArr = this.insertAndSortObjectsByProductLinkPath(newArr, item) |
| | | newArr = this.insertAndSortObjectsById(newArr, item) |
| | | // 插进数组后 从原数据中删除 |
| | | rootList = rootList.filter(nitem => nitem.id != item.id) |
| | | } |
| | |
| | | return tree |
| | | }, |
| | | |
| | | // 排序数组 按照productLinkPath |
| | | insertAndSortObjectsByProductLinkPath(array, newObj) { |
| | | // 排序数组 按照id |
| | | insertAndSortObjectsById(array, newObj) { |
| | | // 查找新对象应该插入的位置 |
| | | let insertIndex = array.findIndex(obj => newObj.id < obj.id); |
| | | // 如果没有找到合适的位置,则放在数组末尾 |
| | |
| | | }, |
| | | } |
| | | app.MG.store.getProductDetailNoChildren(query).then((res) => { |
| | | if (!res.datas.cmsDatas[0].datas.length) { |
| | | if (!res.datas.cmsDatas[0].datas.length || res.datas.cmsDatas[0].datas.length == 0) { |
| | | return this.setData({ |
| | | noResources: true, |
| | | loading: false, |
| | | }); |
| | | } |
| | | |
| | | let list = [] |
| | | // 判断云学习有无销售方式和有效期 |
| | | const cloundSaleMethod = |
| | |
| | | cloundSaleMethod && |
| | | new Date().getTime() <= new Date(cloundSaleMethod.EndDate).getTime() && |
| | | new Date().getTime() >= new Date(cloundSaleMethod.BeginDate).getTime() |
| | | let md5s = [] |
| | | res.datas.cmsDatas[0].datas.forEach((item) => { |
| | | // 云学习上有销售方式,去掉云学习下所有销售方式 |
| | | if (flags) item.saleMethod = [] |
| | | if (this.data.tabValue == "jsek_teachingResources") { |
| | | if (item.file || item.freeFile) { |
| | | let md5 = item.file ? item.file : item.freeFile |
| | | md5s.push(md5) |
| | | } |
| | | this.setData({ |
| | | md5List: md5s, |
| | | }); |
| | | } |
| | | if (flags && cloundSaleMethod.Price > 0) item.saleMethod = [] |
| | | item.checked = false; |
| | | if (item.sysType == 'CmsItem') { |
| | | // 教学资源 类型名称赋值 |
| | |
| | | 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) |
| | | // 判断购物车按钮和锁按钮是否显示 |
| | |
| | | isshowDrawBtn, |
| | | isShowBuyCloundMenu, |
| | | isShowBuyCloundBtn, |
| | | isCloundHaveSaleMethod: flags, |
| | | isCloundHaveSaleMethod: flags && cloundSaleMethod.Price > 0, |
| | | learn: list, |
| | | loading: false, |
| | | openLearnids: result, |
| | |
| | | } |
| | | } else { |
| | | if (isTSFW.length > 0) { |
| | | data = res.datas.cmsDatas[0].datas.filter((item) => item.type == 'questionBankFolder' && item.childrenFolderCount > 0) |
| | | 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' |
| | | that.setData({ |
| | | jslx: true, |
| | | }); |
| | | } |
| | | if (data.length > 0) { |
| | | console.log('data', data); |
| | | let list = [] |
| | | that.getTreeList(data, list, query.cmsPath) |
| | | list = that.ensureTreeConsistency(list) |
| | |
| | | loading: false, |
| | | openTeachids: result, |
| | | }); |
| | | //Json赋值 |
| | | // const bookId = that.data.bookId |
| | | // if (bookId == 6619) { |
| | | // const jsonData = {} |
| | | // jsonData.name = "心理测评" |
| | | // jsonData.children = [...pastData.postData.list] |
| | | // var test = that.data.test; |
| | | // test.push(jsonData); |
| | | // that.setData({ |
| | | // test: test, |
| | | // }); |
| | | // console.log(that.data.test, "教学互动"); |
| | | // } |
| | | |
| | | } else { |
| | | that.setData({ |
| | | noResources: true, |
| | |
| | | (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() && |
| | |
| | | // 云学习全部购买 |
| | | async buyCloudLearnClass() { |
| | | const cloundMenu = this.data.resourceCodeList.find((item) => item.refCode == 'jsek_cloudLearning') |
| | | debugger |
| | | let query = { |
| | | remarks: '云学习', |
| | | requests: [{ |
| | |
| | | handleTrue() { |
| | | // findAndUpdateItemsByIds(this.date.) |
| | | }, |
| | | |
| | | // 题库购买 |
| | | async buyBank() { |
| | | let query = { |
| | | remarks: '云测试', |
| | | requests: [{ |
| | | saleMethodId: this.data.bankSaleData.Id, |
| | | count: 1 |
| | | }] |
| | | } |
| | | const initOrderRes = await app.MG.store.initOrder(query) |
| | | if (this.data.bankSaleData.Price) { |
| | | // 购买 |
| | | const url = "/pages/cart/paymentPage/index?orderNumber=" + initOrderRes.orderNumber + '&onNorderSaleMethod=' + initOrderRes.saleMethodLinks[0].orderSaleMethod.id; |
| | | wx.navigateTo({ |
| | | url, |
| | | }); |
| | | } else { |
| | | // 免费领取 |
| | | app.MG.store |
| | | .confirmOrder({ |
| | | orderNum: initOrderRes.orderNumber, |
| | | }) |
| | | .then((res) => { |
| | | if (res) { |
| | | wx.showToast({ |
| | | title: "领取成功", |
| | | icon: "none", |
| | | duration: 1000, |
| | | }); |
| | | this.getBookInfo(this.data.bookDetail.id); |
| | | } |
| | | }); |
| | | } |
| | | }, |
| | | // 题库加入购物车 |
| | | 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) { |