| | |
| | | // pages/bookServices/detail/components/note/note.js |
| | | const app = getApp(); |
| | | import { |
| | | loginInfo |
| | | } from '../../../../../assets/js/login'; |
| | | Component({ |
| | | /** |
| | | * 组件的属性列表 |
| | |
| | | * 组件的初始数据 |
| | | */ |
| | | data: { |
| | | inputStyle: |
| | | "border: 2rpx solid rgba(220,220,220,1);border-radius: 12rpx; padding:16rpx", |
| | | inputStyle: "border: 2rpx solid rgba(220,220,220,1);border-radius: 12rpx; padding:16rpx", |
| | | placeholderstyle: "font-size:28rpx", |
| | | flag: false, // 输入框是否显示 |
| | | submitType: "new", // 新建 or 编辑 |
| | |
| | | }); |
| | | }, |
| | | openDialog() { |
| | | this.setData({ |
| | | submitTitle: this.properties.bookInfo.name, |
| | | showNoteDialog: true, |
| | | }); |
| | | const token = wx.getStorageSync(app.config.tokenKey) |
| | | if (token) { |
| | | this.setData({ |
| | | submitTitle: this.properties.bookInfo.name, |
| | | showNoteDialog: true, |
| | | }); |
| | | } else { |
| | | loginInfo(app, (data) => {}) |
| | | } |
| | | }, |
| | | closeDialog() { |
| | | this.setData({ |
| | |
| | | }, |
| | | // 获取笔记列表 |
| | | async getNoteList() { |
| | | if (!this.data.isMore) { |
| | | this.setData({ |
| | | loading: true, |
| | | }); |
| | | } |
| | | this.setData({ |
| | | noList: false, |
| | | }); |
| | | let topicId; |
| | | await app.MG.ugc |
| | | .getProductUserSubmitTopic({ |
| | | productId: this.properties.bookInfo.id, |
| | | appRefCode: app.config.appRefCode, |
| | | }) |
| | | .then((res) => { |
| | | if (res) { |
| | | topicId = res.id; |
| | | } else { |
| | | return wx.showToast({ |
| | | icon: "error", |
| | | title: "查询失败", |
| | | }); |
| | | } |
| | | }); |
| | | // loadings.value.bookResource = true |
| | | let query = { |
| | | start: 0, |
| | | size: this.data.pageCount.page * 5, |
| | | messageType: "note", |
| | | sort: { |
| | | type: "Desc", |
| | | field: "CreateDate", |
| | | }, |
| | | appRefCode: app.config.appRefCode, |
| | | topicIdOrRefCode: topicId + "", |
| | | }; |
| | | await app.MG.ugc.getTopicMessageList(query).then((res) => { |
| | | if (!res.datas.length) { |
| | | return this.setData({ |
| | | loading: false, |
| | | noList: true, |
| | | noteList: res.datas, |
| | | const getFun = async () => { |
| | | if (!this.data.isMore) { |
| | | this.setData({ |
| | | loading: true, |
| | | }); |
| | | } |
| | | // notePage.value.total = res.totalSize |
| | | res.datas.forEach((item) => { |
| | | item.compliceHover = false; |
| | | item.deleteHover = false; |
| | | item.createDate = this.convertTimestamp(item.createDate); |
| | | }); |
| | | this.setData({ |
| | | "pageCount.total": res.totalSize, |
| | | noteList: res.datas, |
| | | loading: false, |
| | | noList: false, |
| | | }); |
| | | }); |
| | | let topicId; |
| | | await app.MG.ugc |
| | | .getProductUserSubmitTopic({ |
| | | productId: this.properties.bookInfo.id, |
| | | appRefCode: app.config.appRefCode, |
| | | }) |
| | | .then((res) => { |
| | | if (res) { |
| | | topicId = res.id; |
| | | } else { |
| | | return wx.showToast({ |
| | | icon: "error", |
| | | title: "查询失败", |
| | | }); |
| | | } |
| | | }); |
| | | let query = { |
| | | start: 0, |
| | | size: this.data.pageCount.page * 5, |
| | | messageType: "note", |
| | | sort: { |
| | | type: "Desc", |
| | | field: "CreateDate", |
| | | }, |
| | | appRefCode: app.config.appRefCode, |
| | | topicIdOrRefCode: topicId + "", |
| | | }; |
| | | await app.MG.ugc.getTopicMessageList(query).then((res) => { |
| | | if (!res.datas.length) { |
| | | return this.setData({ |
| | | loading: false, |
| | | noList: true, |
| | | noteList: res.datas, |
| | | }); |
| | | } |
| | | // notePage.value.total = res.totalSize |
| | | res.datas.forEach((item) => { |
| | | item.compliceHover = false; |
| | | item.deleteHover = false; |
| | | item.createDate = this.convertTimestamp(item.createDate); |
| | | }); |
| | | this.setData({ |
| | | "pageCount.total": res.totalSize, |
| | | noteList: res.datas, |
| | | loading: false, |
| | | noList: false, |
| | | }); |
| | | }); |
| | | } |
| | | const token = wx.getStorageSync(app.config.tokenKey) |
| | | if (!token) { |
| | | loginInfo(app, (data) => { |
| | | if (data) { |
| | | getFun() |
| | | } else { |
| | | this.setData({ |
| | | loading: false, |
| | | noList: true, |
| | | noteList: [], |
| | | }); |
| | | } |
| | | |
| | | }) |
| | | } else { |
| | | getFun() |
| | | } |
| | | |
| | | }, |
| | | // 新建笔记接口 |
| | | async makeNote() { |
| | |
| | | }); |
| | | }, |
| | | }, |
| | | }); |
| | | }); |
| | |
| | | // pages/bookServices/detail/components/note/note.js |
| | | const app = getApp(); |
| | | import { |
| | | loginInfo |
| | | } from '../../../../../assets/js/login'; |
| | | import moment from 'moment' |
| | | Component({ |
| | | /** |
| | |
| | | }); |
| | | }, |
| | | openDialog() { |
| | | this.setData({ |
| | | submitTitle: this.properties.bookInfo.name, |
| | | showNoteDialog: true, |
| | | }); |
| | | const token = wx.getStorageSync(app.config.tokenKey) |
| | | if (token) { |
| | | this.setData({ |
| | | submitTitle: this.properties.bookInfo.name, |
| | | showNoteDialog: true, |
| | | }); |
| | | } else { |
| | | loginInfo(app, (data) => {}) |
| | | } |
| | | }, |
| | | closeDialog() { |
| | | this.setData({ |
| | |
| | | const app = getApp(); |
| | | import { |
| | | loginInfo |
| | | } from '../../../../../assets/js/login'; |
| | | Component({ |
| | | properties: { |
| | | treeList: { |
| | |
| | | openIds: e.detail.value, |
| | | }); |
| | | }, |
| | | async goTest(e) { |
| | | console.log(e, 666) |
| | | const value = e.currentTarget.dataset.item; |
| | | const parent = e.currentTarget.dataset.parent; |
| | | const isTry = e.currentTarget.dataset.istry; |
| | | const token = wx.getStorageSync("jsek-token"); |
| | | if (!token) { |
| | | return wx.getUserProfile({ |
| | | desc: "用户登录", |
| | | success: (res) => { |
| | | console.log(res); |
| | | goTest(e) { |
| | | const gotoPageFun = async () => { |
| | | const value = e.currentTarget.dataset.item; |
| | | const parent = e.currentTarget.dataset.parent; |
| | | const isTry = e.currentTarget.dataset.istry; |
| | | const token = wx.getStorageSync("jsek-token"); |
| | | if (!isTry && !this.data.isBuy) { |
| | | return wx.showToast({ |
| | | icon: 'error', |
| | | title: '请先购买该课程', |
| | | }) |
| | | } |
| | | // 获取章节下是否有题目 |
| | | let idPathList = []; |
| | | let query = { |
| | | storeInfo: app.config.digitalCourses, |
| | | path: "*", |
| | | queryType: "*", |
| | | productId: this.properties.bookInfo.id, |
| | | cmsPath: value.productLinkPath, |
| | | pading: { |
| | | start: 0, |
| | | size: 999, |
| | | }, |
| | | }); |
| | | } |
| | | if (!isTry && !this.data.isBuy) { |
| | | return wx.showToast({ |
| | | icon: 'error', |
| | | title: '请先购买该课程', |
| | | }) |
| | | } |
| | | // 获取章节下是否有题目 |
| | | let idPathList = []; |
| | | let query = { |
| | | storeInfo: app.config.digitalCourses, |
| | | 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, |
| | | }; |
| | | 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=${app.config.digitalCourses}`, |
| | | }); |
| | | } |
| | | 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=${app.config.digitalCourses}`, |
| | | }); |
| | | const token = wx.getStorageSync(app.config.tokenKey) |
| | | if (!token) { |
| | | loginInfo(app, () => {}) |
| | | } else { |
| | | gotoPageFun() |
| | | } |
| | | |
| | | }, |
| | | }, |
| | | }); |
| | |
| | | const app = getApp(); |
| | | import { |
| | | loginInfo |
| | | } from '../../../../../assets/js/login'; |
| | | Component({ |
| | | properties: { |
| | | treeList: { |
| | |
| | | url: `${url}?productLinkPath=${item.productLinkPath}&parentProductLinkPath=${parentProductLinkPath}&parentName=${parentName}&activeId=${item.id}&bookId=${this.properties.bookInfo.id}&bookName=${this.properties.bookInfo.name}&cmsId=${this.properties.bookInfo.rootCmsItemId}&formPath=jsek_cloudLearning&storeInfo=${app.config.digitalCourses}`, |
| | | }); |
| | | |
| | | } else { |
| | | loginInfo(app, (data) => {}) |
| | | } |
| | | }, |
| | | |
| | | |
| | | }, |
| | | }); |
| | |
| | | <view class="tree"> |
| | | <t-collapse default-value="{{openIds}}" catchchange="handleChange"> |
| | | <view wx:for="{{treeList}}" wx:for-item="item" wx:for-index="index" wx:key="id" wx:if="{{item.sysType== 'CmsItem' }}"> |
| | | <view class="listItems" wx:if="{{item.childrenFolderCount <= 0 && item.sysType == 'CmsItem'}}"> |
| | | <view |
| | | wx:for="{{treeList}}" |
| | | wx:for-item="item" |
| | | wx:for-index="index" |
| | | wx:key="id" |
| | | wx:if="{{item.sysType== 'CmsItem' }}" |
| | | > |
| | | <view |
| | | class="listItems" |
| | | wx:if="{{item.childrenFolderCount <= 0 && item.sysType == 'CmsItem'}}" |
| | | > |
| | | <view class="itemsInfo"> |
| | | <view class="contentBox" > |
| | | <view class="contentBox"> |
| | | <!-- 云学习 图标 --> |
| | | <view class="box-image fl-cn" style="width: 80%" bind:tap="goPlayer" data-item="{{item}}" data-parent="{{''}}"> |
| | | <view |
| | | class="box-image fl-cn" |
| | | style="width: 80%" |
| | | bind:tap="goPlayer" |
| | | data-item="{{item}}" |
| | | data-parent="{{''}}" |
| | | > |
| | | <view class="teach-icon fl-cn"> |
| | | <image wx:if="{{item.selectType == 'audio' || item.learnSelectType == 'audio'}}" src="/static/images/bookService/detail/audioIcon.png" mode="aspectFill" /> |
| | | <image wx:elif="{{item.selectType == 'video' || item.learnSelectType == 'video'}}" src="/static/images/bookService/detail/video.png" mode="aspectFill" /> |
| | | <image |
| | | wx:if="{{item.selectType == 'audio' || item.learnSelectType == 'audio'}}" |
| | | src="/static/images/bookService/detail/audioIcon.png" |
| | | mode="aspectFill" |
| | | /> |
| | | <image |
| | | wx:elif="{{item.selectType == 'video' || item.learnSelectType == 'video'}}" |
| | | src="/static/images/bookService/detail/video.png" |
| | | mode="aspectFill" |
| | | /> |
| | | <image |
| | | wx:elif="{{item.selectType == 'pdf' || item.learnSelectType == 'pdf'}}" |
| | | src="/static/images/bookService/detail/pdf.png" |
| | |
| | | mode="aspectFill" |
| | | /> |
| | | <!-- 资源无文件内容图标 --> |
| | | <image wx:else src="/static/images/bookService/detail/word.png" mode="" /> |
| | | <image |
| | | wx:else |
| | | src="/static/images/bookService/detail/word.png" |
| | | mode="" |
| | | /> |
| | | </view> |
| | | <!-- 名称 --> |
| | | <text class="name" style="width: 100%">{{item.name || '-'}}</text> |
| | | <text>{{item.progress ? item.progress : 0}}%</text> |
| | | </view> |
| | | <view class="seeBox" wx:if="{{!isBuy && citem.freeFile ? true : false}}" bind:tap="goPlayer" data-item="{{citem}}" data-parent="" data-isTry="{{true}}"> |
| | | <view |
| | | class="seeBox" |
| | | wx:if="{{!isBuy && citem.freeFile ? true : false}}" |
| | | bind:tap="goPlayer" |
| | | data-item="{{citem}}" |
| | | data-parent="" |
| | | data-isTry="{{true}}" |
| | | > |
| | | <!-- 云学习试看图标 --> |
| | | <image src="/static/images/bookService/detail/shikan.png" class="testSee" wx:if="{{!isBuy && item.freeFile ? true : false}}"></image> |
| | | <image |
| | | src="/static/images/bookService/detail/shikan.png" |
| | | class="testSee" |
| | | wx:if="{{!isBuy && item.freeFile ? true : false}}" |
| | | ></image> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | <t-collapse-panel wx:for="{{treeList}}" wx:for-item="item" wx:for-index="index" wx:key="id" value="{{item.id}}" wx:if="{{item.sysType == 'CmsFolder' }}"> |
| | | <t-collapse-panel |
| | | wx:for="{{treeList}}" |
| | | wx:for-item="item" |
| | | wx:for-index="index" |
| | | wx:key="id" |
| | | value="{{item.id}}" |
| | | wx:if="{{item.sysType == 'CmsFolder' }}" |
| | | > |
| | | <view slot="header" class="header-title"> |
| | | <view class="title-checkBox" catchtap="catchTap"> |
| | | <!-- 章节名 --> |
| | |
| | | </view> |
| | | </view> |
| | | </view> |
| | | <view class="list" wx:for="{{item.children}}" wx:for-item="citem" wx:for-index="cindex" wx:key="cindex"> |
| | | <view |
| | | class="list" |
| | | wx:for="{{item.children}}" |
| | | wx:for-item="citem" |
| | | wx:for-index="cindex" |
| | | wx:key="cindex" |
| | | > |
| | | <!-- // 判断 无子项 且为商品item 直接显示 --> |
| | | <view class="listItems" wx:if="{{citem.childrenFolderCount <= 0 && citem.sysType == 'CmsItem'}}"> |
| | | <view |
| | | class="listItems" |
| | | wx:if="{{citem.childrenFolderCount <= 0 && citem.sysType == 'CmsItem'}}" |
| | | > |
| | | <view class="itemsInfo"> |
| | | <view class="contentBox" > |
| | | <view class="contentBox"> |
| | | <!-- 云学习 图标 --> |
| | | <view class="box-image fl-cn" bind:tap="goPlayer" data-item="{{citem}}" data-parent="{{item}}"> |
| | | <view |
| | | class="box-image fl-cn" |
| | | bind:tap="goPlayer" |
| | | data-item="{{citem}}" |
| | | data-parent="{{item}}" |
| | | > |
| | | <view class="teach-icon fl-cn"> |
| | | <image wx:if="{{citem.selectType == 'audio' || citem.learnSelectType == 'audio'}}" src="/static/images/bookService/detail/audioIcon.png" mode="aspectFill" /> |
| | | <image wx:elif="{{citem.selectType == 'video' || citem.learnSelectType == 'video'}}" src="/static/images/bookService/detail/video.png" mode="aspectFill" /> |
| | | <image |
| | | wx:if="{{citem.selectType == 'audio' || citem.learnSelectType == 'audio'}}" |
| | | src="/static/images/bookService/detail/audioIcon.png" |
| | | mode="aspectFill" |
| | | /> |
| | | <image |
| | | wx:elif="{{citem.selectType == 'video' || citem.learnSelectType == 'video'}}" |
| | | src="/static/images/bookService/detail/video.png" |
| | | mode="aspectFill" |
| | | /> |
| | | <image |
| | | wx:elif="{{citem.selectType == 'pdf' || citem.learnSelectType == 'pdf'}}" |
| | | src="/static/images/bookService/detail/pdf.png" |
| | |
| | | mode="aspectFill" |
| | | /> |
| | | <!-- 资源无文件内容图标 --> |
| | | <image wx:else src="/static/images/bookService/detail/word.png" mode="" /> |
| | | <text class="name" style="width:400rpx">{{citem.name || '-'}}</text> |
| | | <image |
| | | wx:else |
| | | src="/static/images/bookService/detail/word.png" |
| | | mode="" |
| | | /> |
| | | <text class="name" style="width: 400rpx" |
| | | >{{citem.name || '-'}}</text |
| | | > |
| | | </view> |
| | | <!-- 名称 --> |
| | | <text>{{citem.progress ? citem.progress : 0}}%</text> |
| | | </view> |
| | | <view class="seeBox" wx:if="{{!isBuy && citem.freeFile ? true : false}}" bind:tap="goPlayer" data-item="{{citem}}" data-parent="{{item}}" data-isTry="{{true}}"> |
| | | <view |
| | | class="seeBox" |
| | | wx:if="{{!isBuy && citem.freeFile ? true : false}}" |
| | | bind:tap="goPlayer" |
| | | data-item="{{citem}}" |
| | | data-parent="{{item}}" |
| | | data-isTry="{{true}}" |
| | | > |
| | | <!-- 云学习试看图标 --> |
| | | <image src="/static/images/bookService/detail/shikan.png" class="testSee" ></image> |
| | | <image |
| | | src="/static/images/bookService/detail/shikan.png" |
| | | class="testSee" |
| | | ></image> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | <!-- // 判断 不是商品 有子项 递归组件 --> |
| | | <tree wx:if="{{ citem.sysType == 'CmsFolder' }}" bookInfo="{{bookInfo}}" treeList="{{[citem]}}" learnList="{{learnList}}" itemId="{{itemId}}" openIds="{{openIds}}" isBuy="{{isBuy}}"></tree> |
| | | <tree |
| | | wx:if="{{ citem.sysType == 'CmsFolder' }}" |
| | | bookInfo="{{bookInfo}}" |
| | | treeList="{{[citem]}}" |
| | | learnList="{{learnList}}" |
| | | itemId="{{itemId}}" |
| | | openIds="{{openIds}}" |
| | | isBuy="{{isBuy}}" |
| | | ></tree> |
| | | </view> |
| | | <!-- 暂无数据 --> |
| | | <view wx:if="{{!item.children || !item.children.length}}" class="noData"> |
| | |
| | | </view> |
| | | </t-collapse-panel> |
| | | </t-collapse> |
| | | </view> |
| | | </view> |
| | |
| | | bookId: options.id, |
| | | bookPath: parentPath.join('\\') |
| | | }) |
| | | const token = wx.getStorageSync(app.config.tokenKey) |
| | | this.digitalCoursesDetailsGet(options.id) |
| | | this.getPlayerList() |
| | | if (token) this.getPlayerList() |
| | | this.getType() |
| | | }, |
| | | logInFun(callback) { |
| | |
| | | */ |
| | | onShow() { |
| | | if (this.data.tabValue == 2 && this.data.selectActive == 'learn') { |
| | | this.getPlayerList() |
| | | const token = wx.getStorageSync(app.config.tokenKey) |
| | | if (token) this.getPlayerList() |
| | | this.getResource() |
| | | this.getRelationBook() |
| | | } |
| | |
| | | pading: { |
| | | start: 99, |
| | | size: 0 |
| | | } |
| | | }, |
| | | |
| | | } |
| | | app.MG.store.getProductDetail(query).then((res) => { |
| | | let test = [] |
| | |
| | | }, |
| | | |
| | | readTextBook() { |
| | | wx.navigateTo({ |
| | | url: '/pages/digitalCourses/digitalCoursesDetails/components/digitalRead/index?refCode=' + this.data.relationTextBook.refCode + '&tryPageCount=' + this.data.relationTextBook.probationPage + '&isTextBookBuy=' + this.data.isTextBookBuy |
| | | }) |
| | | const token = wx.getStorageSync(app.config.tokenKey) |
| | | if (!token) { |
| | | this.logInFun(() => {}) |
| | | } else { |
| | | wx.navigateTo({ |
| | | url: '/pages/digitalCourses/digitalCoursesDetails/components/digitalRead/index?refCode=' + this.data.relationTextBook.refCode + '&tryPageCount=' + this.data.relationTextBook.probationPage + '&isTextBookBuy=' + this.data.isTextBookBuy |
| | | }) |
| | | } |
| | | }, |
| | | |
| | | //在线测试我的收藏、我的错题 |
| | | goMycollect(e) { |
| | | const answertype = e.currentTarget.dataset.answertype; |
| | | const token = wx.getStorageSync("jsek-token"); |
| | | const token = wx.getStorageSync(app.config.tokenKey) |
| | | if (!token) { |
| | | return wx.getUserProfile({ |
| | | desc: "用户登录", |
| | | success: (res) => { |
| | | console.log(res); |
| | | }, |
| | | this.logInFun(() => {}) |
| | | } else { |
| | | const answertype = e.currentTarget.dataset.answertype; |
| | | wx.navigateTo({ |
| | | url: `/packageBookService/pages/bookServices/examination/examination?bookId=${ |
| | | this.data.digitalsData.id |
| | | }&rootCmsItemId=${this.data.digitalsData.rootCmsItemId}&answerTitle=${ |
| | | answertype == "collectQuestion" ? "我的收藏" : "我的错题" |
| | | }&answerType=${answertype}&storeInfo=${app.config.digitalCourses}`, |
| | | }); |
| | | } |
| | | wx.navigateTo({ |
| | | url: `/packageBookService/pages/bookServices/examination/examination?bookId=${ |
| | | this.data.digitalsData.id |
| | | }&rootCmsItemId=${this.data.digitalsData.rootCmsItemId}&answerTitle=${ |
| | | answertype == "collectQuestion" ? "我的收藏" : "我的错题" |
| | | }&answerType=${answertype}&storeInfo=${app.config.digitalCourses}`, |
| | | }); |
| | | |
| | | }, |
| | | |
| | | onCorrelationBook(e) { |
| | |
| | | this.setData({ |
| | | digitalTextId: options.id |
| | | }) |
| | | const token = wx.getStorageSync(app.config.tokenKey) |
| | | if (!token) { |
| | | loginInfo(app, (data) => { |
| | | if (data) { |
| | | this.digitalTextbooksDetailsGet(this.data.digitalTextId) |
| | | this.getType() |
| | | this.getCertificateList() |
| | | } else { |
| | | |
| | | } |
| | | }) |
| | | } |
| | | this.digitalTextbooksDetailsGet(this.data.digitalTextId) |
| | | this.getType() |
| | | this.getCertificateList() |
| | | }, |
| | | logInFun(callback) { |
| | | loginInfo(app, (data) => { |
| | | if (data) { |
| | | this.digitalTextbooksDetailsGet(this.data.digitalTextId) |
| | | this.getType() |
| | | this.getCertificateList() |
| | | callback() |
| | | } |
| | | }) |
| | | }, |
| | | // 格式化日期 |
| | | // 格式化日期 |
| | |
| | | }) |
| | | }, |
| | | // 图书添加购物车 |
| | | async addBookShopcCar() { |
| | | if (!this.data.expire) { |
| | | const shoppingCartGetId = []; |
| | | let query = { |
| | | start: 0, |
| | | size: 9999, |
| | | filterList: [], |
| | | searchList: [], |
| | | }; |
| | | const res = await app.MG.store.getShoppingCartProductList(query); |
| | | res.datas.forEach((item) => { |
| | | shoppingCartGetId.push(item.saleMethod.id); |
| | | }); |
| | | const determine = shoppingCartGetId.some( |
| | | (item) => item == this.data.digitalsData.defaultSaleMethodId |
| | | ); |
| | | if (!determine) { |
| | | addBookShopcCar() { |
| | | const addFun = async () => { |
| | | if (!this.data.expire) { |
| | | const shoppingCartGetId = []; |
| | | let query = { |
| | | requests: [{ |
| | | saleMethodId: this.data.digitalsData.defaultSaleMethodId, |
| | | storeEventId: null, |
| | | agentCode: "电子书", |
| | | }, ], |
| | | start: 0, |
| | | size: 9999, |
| | | filterList: [], |
| | | searchList: [], |
| | | }; |
| | | const addRes = app.MG.store.addShoppingCart(query); |
| | | this.showSuccessToast(); |
| | | const res = await app.MG.store.getShoppingCartProductList(query); |
| | | res.datas.forEach((item) => { |
| | | shoppingCartGetId.push(item.saleMethod.id); |
| | | }); |
| | | const determine = shoppingCartGetId.some( |
| | | (item) => item == this.data.digitalsData.defaultSaleMethodId |
| | | ); |
| | | if (!determine) { |
| | | let query = { |
| | | requests: [{ |
| | | saleMethodId: this.data.digitalsData.defaultSaleMethodId, |
| | | storeEventId: null, |
| | | agentCode: "电子书", |
| | | }, ], |
| | | }; |
| | | const addRes = app.MG.store.addShoppingCart(query); |
| | | this.showSuccessToast(); |
| | | } else { |
| | | Toast({ |
| | | context: this, |
| | | selector: "#t-toast", |
| | | message: "该教材已在购物车,请勿重复添加", |
| | | theme: "warning", |
| | | direction: "column", |
| | | }); |
| | | } |
| | | } else { |
| | | Toast({ |
| | | context: this, |
| | | selector: "#t-toast", |
| | | message: "该教材已在购物车,请勿重复添加", |
| | | theme: "warning", |
| | | direction: "column", |
| | | wx.showToast({ |
| | | title: "商品不在有效期", |
| | | icon: "none", |
| | | duration: 1000, |
| | | }); |
| | | } |
| | | } |
| | | const token = wx.getStorageSync(app.config.tokenKey) |
| | | if (!token) { |
| | | this.logInFun(() => {}) |
| | | } else { |
| | | wx.showToast({ |
| | | title: "商品不在有效期", |
| | | icon: "none", |
| | | duration: 1000, |
| | | }); |
| | | addFun() |
| | | } |
| | | }, |
| | | showSuccessToast() { |
| | |
| | | |
| | | |
| | | //购买按钮 |
| | | async buyBtn() { |
| | | if (!this.data.expire) { |
| | | let bookOrdersId = ""; |
| | | let query = { |
| | | remarks: "电子书", |
| | | requests: [{ |
| | | saleMethodId: this.data.digitalsData.defaultSaleMethodId, |
| | | count: 1, |
| | | }, ], |
| | | }; |
| | | // 发起订单初始化请求并等待结果 |
| | | const res = await app.MG.store.initOrder(query); |
| | | // 获取订单号并赋值给 orderNumber.value |
| | | bookOrdersId = res.orderNumber; |
| | | // 检查订单号是否存在 |
| | | if (bookOrdersId) { |
| | | if (this.data.digitalsData.price == "0.00") { |
| | | app.MG.store |
| | | .confirmOrder({ |
| | | orderNum: bookOrdersId, |
| | | }) |
| | | .then((res) => { |
| | | this.digitalTextbooksDetailsGet(this.data.digitalTextId) |
| | | if (res) { |
| | | wx.showToast({ |
| | | title: "领取成功", |
| | | icon: "none", |
| | | duration: 1000, |
| | | }); |
| | | this.getBookInfo(this.data.bookDetail.id); |
| | | } |
| | | buyBtn() { |
| | | const buyFun = async () => { |
| | | if (!this.data.expire) { |
| | | let bookOrdersId = ""; |
| | | let query = { |
| | | remarks: "电子书", |
| | | requests: [{ |
| | | saleMethodId: this.data.digitalsData.defaultSaleMethodId, |
| | | count: 1, |
| | | }, ], |
| | | }; |
| | | // 发起订单初始化请求并等待结果 |
| | | const res = await app.MG.store.initOrder(query); |
| | | // 获取订单号并赋值给 orderNumber.value |
| | | bookOrdersId = res.orderNumber; |
| | | // 检查订单号是否存在 |
| | | if (bookOrdersId) { |
| | | if (this.data.digitalsData.price == "0.00") { |
| | | app.MG.store |
| | | .confirmOrder({ |
| | | orderNum: bookOrdersId, |
| | | }) |
| | | .then((res) => { |
| | | this.digitalTextbooksDetailsGet(this.data.digitalTextId) |
| | | if (res) { |
| | | wx.showToast({ |
| | | title: "领取成功", |
| | | icon: "none", |
| | | duration: 1000, |
| | | }); |
| | | this.getBookInfo(this.data.bookDetail.id); |
| | | } |
| | | }); |
| | | } else { |
| | | const url = "/pages/cart/paymentPage/index?orderNumber=" + bookOrdersId + '&onNorderSaleMethod=' + res.saleMethodLinks[0].orderSaleMethod.id; |
| | | wx.navigateTo({ |
| | | url, |
| | | }); |
| | | } else { |
| | | const url = "/pages/cart/paymentPage/index?orderNumber=" + bookOrdersId + '&onNorderSaleMethod=' + res.saleMethodLinks[0].orderSaleMethod.id; |
| | | wx.navigateTo({ |
| | | url, |
| | | }); |
| | | } |
| | | } else {} |
| | | } |
| | | } else {} |
| | | } else { |
| | | wx.showToast({ |
| | | title: "商品不在有效期", |
| | | icon: "none", |
| | | duration: 1000, |
| | | }); |
| | | } |
| | | } |
| | | const token = wx.getStorageSync(app.config.tokenKey) |
| | | if (!token) { |
| | | this.logInFun(() => {}) |
| | | } else { |
| | | wx.showToast({ |
| | | title: "商品不在有效期", |
| | | icon: "none", |
| | | duration: 1000, |
| | | }); |
| | | buyFun() |
| | | } |
| | | }, |
| | | |
| | | goRead() { |
| | | // 首页测试登录功能,后续注释 |
| | | // 检查登录状态 |
| | | const token = wx.getStorageSync(app.config.tokenKey) |
| | | if (!token) { |
| | | loginInfo(app, (data) => { |
| | | // 如果不是第一次登录,会执行回调 |
| | | if (data) { |
| | | // 登录成功,自动记录token和用户信息,并返回true |
| | | const item = this.data.digitalsData |
| | | wx.navigateTo({ |
| | | url: '/pages/digitalTextbooks/digitalTextbooksDetails/components/webView/index?refCode=' + item.refCode + "&tryPageCount=" + item.probationPage |
| | | }); |
| | | } else { |
| | | // 出现错误,返回false |
| | | } |
| | | }) |
| | | } else { |
| | | // 如果是第一次登录,会跳转至绑定用户信息页面,填写完用户信息后进行登录并储存token和用户信息,结束后跳转回当前页面(携带页面参数) |
| | | const gotoPageFun = () => { |
| | | const item = this.data.digitalsData |
| | | wx.navigateTo({ |
| | | url: '/pages/digitalTextbooks/digitalTextbooksDetails/components/webView/index?refCode=' + item.refCode + "&tryPageCount=" + item.probationPage |
| | | }); |
| | | } |
| | | // let token = wx.getStorageSync(app.config.tokenKey) |
| | | // if (token) { |
| | | |
| | | |
| | | |
| | | |
| | | // } |
| | | |
| | | |
| | | const token = wx.getStorageSync(app.config.tokenKey) |
| | | if (!token) { |
| | | this.logInFun(() => {}) |
| | | } else { |
| | | gotoPageFun() |
| | | } |
| | | }, |
| | | onTabClick(e) { |
| | | let tab = e.currentTarget.dataset.tab; |
| | | |
| | | this.setData({ |
| | | type: tab, |
| | | |
| | |
| | | }).exec() |
| | | }, |
| | | setCoolect() { |
| | | |
| | | // 首页测试登录功能,后续注释 |
| | | // 检查登录状态 |
| | | const token = wx.getStorageSync(app.config.tokenKey) |
| | | if (!token) { |
| | | loginInfo(app, (data) => { |
| | | // 如果不是第一次登录,会执行回调 |
| | | if (data) { |
| | | if (this.data.digitalsData.isFavourite) { |
| | | app.MG.store |
| | | .delProductLink({ |
| | | productIds: [this.data.digitalsData.id], |
| | | linkType: 'FavoriteTextBooks' |
| | | }) |
| | | .then(() => { |
| | | this.setData({ |
| | | "digitalsData.isFavourite": false |
| | | }) |
| | | }) |
| | | } else { |
| | | let params = { |
| | | productIds: [this.data.digitalsData.id], |
| | | linkType: 'FavoriteTextBooks' |
| | | } |
| | | app.MG.store.addProductLink(params).then((res) => { |
| | | this.setData({ |
| | | "digitalsData.isFavourite": true |
| | | }) |
| | | }) |
| | | } |
| | | } else { |
| | | // 出现错误,返回false |
| | | } |
| | | }) |
| | | } else { |
| | | const collectFun = () => { |
| | | if (this.data.digitalsData.isFavourite) { |
| | | app.MG.store |
| | | .delProductLink({ |
| | |
| | | }) |
| | | }) |
| | | } |
| | | } |
| | | const token = wx.getStorageSync(app.config.tokenKey) |
| | | if (!token) { |
| | | this.logInFun(() => {}) |
| | | } else { |
| | | collectFun() |
| | | } |
| | | }, |
| | | // 我要建议 |
| | |
| | | }, |
| | | |
| | | onCertificate() { |
| | | if (!this.data.isBuy) { |
| | | wx.showToast({ |
| | | title: "请先购买,体验完整服务", |
| | | icon: "none", |
| | | duration: 1000, |
| | | }); |
| | | return false |
| | | } |
| | | // if (!this.data.isLearn) { |
| | | // wx.showToast({ |
| | | // title: "您的学习任务还未完成,暂不能申请证书,加油哦!", |
| | | // icon: "none", |
| | | // duration: 1000, |
| | | // }); |
| | | // return false |
| | | // } |
| | | if (this.data.isCertificate && this.data.isCertificate.state == 'WaitAudit') { |
| | | wx.showToast({ |
| | | title: this.data.isCertificate.state == 'WaitAudit' ? "您申请的证书正在审核中" : this.data.isCertificate.state == 'Normal' ? '您已申请证书' : '', |
| | | icon: "none", |
| | | duration: 1000, |
| | | }); |
| | | return false |
| | | } |
| | | const cateFun = () => { |
| | | if (!this.data.isBuy) { |
| | | wx.showToast({ |
| | | title: "请先购买,体验完整服务", |
| | | icon: "none", |
| | | duration: 1000, |
| | | }); |
| | | return false |
| | | } |
| | | // if (!this.data.isLearn) { |
| | | // wx.showToast({ |
| | | // title: "您的学习任务还未完成,暂不能申请证书,加油哦!", |
| | | // icon: "none", |
| | | // duration: 1000, |
| | | // }); |
| | | // return false |
| | | // } |
| | | if (this.data.isCertificate && this.data.isCertificate.state == 'WaitAudit') { |
| | | wx.showToast({ |
| | | title: this.data.isCertificate.state == 'WaitAudit' ? "您申请的证书正在审核中" : this.data.isCertificate.state == 'Normal' ? '您已申请证书' : '', |
| | | icon: "none", |
| | | duration: 1000, |
| | | }); |
| | | return false |
| | | } |
| | | |
| | | var page = getCurrentPages().pop(); // 获取当前页面实例 |
| | | page.setData({ |
| | | // 动态设置禁止滚动的样式 |
| | | disableScrollStyle: 'overflow: hidden;' |
| | | }); |
| | | this.setData({ |
| | | dialogBox: true, |
| | | scrollJudge: '' |
| | | }) |
| | | var page = getCurrentPages().pop(); // 获取当前页面实例 |
| | | page.setData({ |
| | | // 动态设置禁止滚动的样式 |
| | | disableScrollStyle: 'overflow: hidden;' |
| | | }); |
| | | this.setData({ |
| | | dialogBox: true, |
| | | scrollJudge: '' |
| | | }) |
| | | } |
| | | const token = wx.getStorageSync(app.config.tokenKey) |
| | | if (!token) { |
| | | this.logInFun(() => {}) |
| | | } else { |
| | | cateFun() |
| | | } |
| | | }, |
| | | closeDialog() { |
| | | this.setData({ |