| | |
| | | import { |
| | | loginInfo |
| | | } from '../../../../assets/js/login'; |
| | | import moment from 'moment' |
| | | Page({ |
| | | |
| | | /** |
| | |
| | | buyIdList: [], |
| | | buyList: [], |
| | | learnClassData: null, |
| | | bookDetail: null |
| | | bookDetail: null, |
| | | learnStartTime: 0, |
| | | learnTimeList: [], |
| | | learnTimeData: 0 |
| | | }, |
| | | // 格式化笔记时间 |
| | | convertTimestamp(timestamp) { |
| | |
| | | * 生命周期函数--监听页面加载 |
| | | */ |
| | | onLoad(options) { |
| | | console.log('资源', options); |
| | | wx.setNavigationBarTitle({ |
| | | title: '资源详情-视频' |
| | | }); |
| | |
| | | const token = wx.getStorageSync(app.config.tokenKey) |
| | | if (!token) { |
| | | loginInfo(app, (data) => { |
| | | if (data) { |
| | | this.resourceDetailsData() |
| | | } else { |
| | | this.resourceDetailsData() |
| | | if (options.formPath == 'jsek_cloudLearning') { |
| | | this.setData({ |
| | | learnStartTime: Date.now(), |
| | | }) |
| | | this.getLearnTime() |
| | | } |
| | | this.getBookInfo(this.data.bookId) |
| | | }) |
| | | } else { |
| | | this.resourceDetailsData() |
| | | if (options.formPath == 'jsek_cloudLearning') { |
| | | this.setData({ |
| | | learnStartTime: Date.now(), |
| | | }) |
| | | this.getLearnTime() |
| | | } |
| | | this.getBookInfo(this.data.bookId) |
| | | } |
| | | if (options.formPath == 'jsek_cloudLearning') this.getBookInfo(options.bookId) |
| | | |
| | | }, |
| | | |
| | | /** |
| | |
| | | this.setData({ |
| | | startTime: Date.now() |
| | | }) |
| | | |
| | | }, |
| | | |
| | | /** |
| | |
| | | if (wx.getStorageSync(app.config.tokenKey)) { |
| | | let duration = this.data.pauseTime - this.data.startTime |
| | | this.count(duration) |
| | | if (this.data.formPath == 'jsek_cloudLearning') { |
| | | let cloudDuration = this.data.pauseTime - this.data.learnStartTime |
| | | this.cloudCount(cloudDuration) |
| | | } |
| | | } |
| | | this.setPlayerList() |
| | | }, |
| | |
| | | this.count(duration) |
| | | } |
| | | this.setPlayerList() |
| | | if (this.data.formPath == 'jsek_cloudLearning') { |
| | | let cloudDuration = this.data.pauseTime - this.data.learnStartTime |
| | | this.cloudCount(cloudDuration) |
| | | } |
| | | }, |
| | | |
| | | getLearnTime() { |
| | | app.MG.identity |
| | | .getUserKey({ |
| | | domain: 'cloudLearningTime', |
| | | keys: [this.data.bookId] |
| | | }) |
| | | .then((res) => { |
| | | if (res.length > 0) { |
| | | if (JSON.parse(res[0].value) && JSON.parse(res[0].value).length > 0) { |
| | | this.setData({ |
| | | learnTimeList: JSON.parse(res[0].value), |
| | | learnTimeData: JSON.parse(res[0].value)[0].learnTime, |
| | | }) |
| | | } else { |
| | | this.setData({ |
| | | learnTimeList: [], |
| | | learnTimeData: 0 |
| | | }) |
| | | } |
| | | } |
| | | }) |
| | | }, |
| | | cloudCount(timeStr) { |
| | | let time = Number(this.data.learnTimeData) + Number(timeStr) |
| | | this.setData({ |
| | | learnTimeList: [{ |
| | | learnTime: time |
| | | }], |
| | | }) |
| | | app.MG.identity |
| | | .setUserKey({ |
| | | setKeyRequests: [{ |
| | | domain: 'cloudLearningTime', |
| | | key: this.data.bookId, |
| | | value: JSON.stringify(this.data.learnTimeList) |
| | | }] |
| | | }) |
| | | .then((res) => { |
| | | console.log(timeStr, '学习时长') |
| | | }) |
| | | }, |
| | | // 获取图书详情 |
| | | getBookInfo(id) { |
| | | const query = { |
| | |
| | | fields: {}, |
| | | }; |
| | | app.MG.store.getProductDetail(query).then(async (res) => { |
| | | console.log('图书详情', res); |
| | | this.setData({ |
| | | bookDetail: res.datas, |
| | | buyIdList: res.datas.purchasedSaleMethodIdList, |
| | | learnClassData: res.datas.cmsDatas[0].datas.find(item => item.refCode == "jsek_cloudLearning") |
| | | learnClassData: res.datas.cmsDatas[0].datas.length > 0 ? res.datas.cmsDatas[0].datas.find(item => item.refCode == "jsek_cloudLearning") : null |
| | | }) |
| | | this.getResourceDataList(this.data.learnClassData) |
| | | if (this.data.learnClassData) { |
| | | this.getResourceDataList(this.data.learnClassData) |
| | | } else { |
| | | this.resourceDetailsData() |
| | | } |
| | | }); |
| | | }, |
| | | // 教学资源 云学习 获取 |
| | |
| | | if (this.data.buyIdList.includes(learnSaleMethod.Id)) buyList.push(learnClassData) |
| | | } |
| | | this.setData({ |
| | | buyList |
| | | buyList: buyList |
| | | }) |
| | | console.log('云学习', buyList); |
| | | this.resourceDetailsData() |
| | | console.log('云学习', this.data.buyList); |
| | | }) |
| | | }, |
| | | count(timeStr) { |
| | |
| | | } |
| | | app.MG.job.newJobWithApiNewEvent(data).then((res) => {}) |
| | | }, |
| | | |
| | | onTabsChange(event) { |
| | | console.log(event, 234) |
| | | let tabValue = event.detail.value |
| | | if (tabValue == '1') { |
| | | this.getNoteList() |
| | | } |
| | | }, |
| | | |
| | | handleChange(e) { |
| | | this.setData({ |
| | | activeValues: e.detail.value, |
| | |
| | | dialogKey: true, |
| | | textvalue: '', |
| | | submitTitle: this.data.titleName |
| | | |
| | | }); |
| | | }, |
| | | closeDialog() { |
| | |
| | | } else { |
| | | if (item.selectType === "video" || item.learnSelectType === "video") { |
| | | if (this.data.storeInfo == 'jsek_digitalCourses') { |
| | | if (item.sysType == 'CmsItem') this.data.threeLeveData.push(item) |
| | | // if (this.data.isBuy) { |
| | | // if (item.sysType == 'CmsItem') { |
| | | // this.data.threeLeveData.push(item) |
| | | // } |
| | | // } else { |
| | | // if (item.sysType == 'CmsItem' && item.freeFile) { |
| | | // this.data.threeLeveData.push(item) |
| | | // } |
| | | // } |
| | | // if (item.sysType == 'CmsItem') this.data.threeLeveData.push(item) |
| | | if (this.data.isBuy) { |
| | | if (item.sysType == 'CmsItem') { |
| | | this.data.threeLeveData.push(item) |
| | | } |
| | | } else { |
| | | if (item.sysType == 'CmsItem' && item.freeFile) { |
| | | this.data.threeLeveData.push(item) |
| | | } |
| | | } |
| | | } else { |
| | | // 买了 |
| | | if (this.data.buyList.length) { |
| | | if (this.data.buyList.some(citem => item.productLinkPath.includes(citem.productLinkPath))) this.data.threeLeveData.push(item) |
| | | if (this.data.buyList.some(citem => item.productLinkPath.includes(citem.productLinkPath))) { |
| | | this.data.threeLeveData.push(item) |
| | | } |
| | | } else { |
| | | |
| | | if (!item.saleMethod.length) { |
| | | // 没买且无销售方式 |
| | | this.data.threeLeveData.push(item) |
| | | } else { |
| | | // 没买且销售方式过期 |
| | | const itemSaleMethod = item.saleMethod.find(citem => citem.SaleType == 'Normal') |
| | | if (new Date().getTime() > new Date(itemSaleMethod.EndDate).getTime()) this.data.threeLeveData.push(item) |
| | | if (new Date().getTime() > new Date(itemSaleMethod.EndDate).getTime()) { |
| | | this.data.threeLeveData.push(item) |
| | | } |
| | | } |
| | | } |
| | | } |
| | |
| | | } |
| | | } |
| | | }) |
| | | console.log(1, this.data.threeLeveData); |
| | | this.data.threeLeveData.forEach((items, index) => { // 修改此处添加index参数 |
| | | if (this.data.productLinkPath == items.productLinkPath) { |
| | | if (this.data.formPath === "jsek_cloudLearning") { |
| | |
| | | }) |
| | | if (item.selectType == "video" || item.learnSelectType === "video") { |
| | | if (this.data.formPath === "jsek_cloudLearning") { |
| | | |
| | | let file = |
| | | item.protectedFile || item.file ? file = item.protectedFile || item.file : file = item.freeFile |
| | | this.setData({ |
| | |
| | | md5: md5, |
| | | appRefCode: app.config.appRefCode |
| | | } |
| | | |
| | | app.MG.file.getAliVod(query).then((res) => { |
| | | if (res) { |
| | | if (res && res.data == '') { |
| | |
| | | videoLoading: false, |
| | | }) |
| | | } else { |
| | | return ElMessage.error('无法获取视频资源') |
| | | return wx.showToast({ |
| | | icon: 'error', |
| | | title: '无法获取视频资源', |
| | | }) |
| | | } |
| | | }) |
| | | }, |
| | | |
| | | timeUpdate(e) { |
| | | console.log(2); |
| | | let { |
| | | currentTime, |
| | | duration |
| | |
| | | res.datas.forEach((item) => { |
| | | // item.compliceHover = false |
| | | // item.deleteHover = false |
| | | item.createDate = this.convertTimestamp(item.createDate) |
| | | item.createDate = moment(item.createDate).format('YYYY-MM-DD HH:mm:ss') |
| | | }) |
| | | this.setData({ |
| | | "pageCount.total": res.totalSize, |