| | |
| | | // 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() { |
| | | 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() { |
| | | const getFun = async () => { |
| | | if (!this.data.isMore) { |
| | | this.setData({ |
| | | loading: true, |
| | |
| | | }); |
| | | } |
| | | }); |
| | | // loadings.value.bookResource = true |
| | | let query = { |
| | | start: 0, |
| | | size: this.data.pageCount.page * 5, |
| | |
| | | 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() { |
| | | 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) |
| | | 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 (!token) { |
| | | return wx.getUserProfile({ |
| | | desc: "用户登录", |
| | | success: (res) => { |
| | | console.log(res); |
| | | }, |
| | | }); |
| | | } |
| | | if (!isTry && !this.data.isBuy) { |
| | | return wx.showToast({ |
| | | icon: 'error', |
| | |
| | | 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="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="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"> |
| | |
| | | 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() { |
| | | 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 |
| | |
| | | answertype == "collectQuestion" ? "我的收藏" : "我的错题" |
| | | }&answerType=${answertype}&storeInfo=${app.config.digitalCourses}`, |
| | | }); |
| | | } |
| | | |
| | | }, |
| | | |
| | | onCorrelationBook(e) { |
| | |
| | | this.setData({ |
| | | digitalTextId: options.id |
| | | }) |
| | | const token = wx.getStorageSync(app.config.tokenKey) |
| | | if (!token) { |
| | | 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() |
| | | } else { |
| | | |
| | | callback() |
| | | } |
| | | }) |
| | | } |
| | | this.digitalTextbooksDetailsGet(this.data.digitalTextId) |
| | | this.getType() |
| | | this.getCertificateList() |
| | | }, |
| | | // 格式化日期 |
| | | // 格式化日期 |
| | |
| | | }) |
| | | }, |
| | | // 图书添加购物车 |
| | | async addBookShopcCar() { |
| | | addBookShopcCar() { |
| | | const addFun = async () => { |
| | | if (!this.data.expire) { |
| | | const shoppingCartGetId = []; |
| | | let query = { |
| | |
| | | duration: 1000, |
| | | }); |
| | | } |
| | | } |
| | | const token = wx.getStorageSync(app.config.tokenKey) |
| | | if (!token) { |
| | | this.logInFun(() => {}) |
| | | } else { |
| | | addFun() |
| | | } |
| | | }, |
| | | showSuccessToast() { |
| | | Toast({ |
| | |
| | | |
| | | |
| | | //购买按钮 |
| | | async buyBtn() { |
| | | buyBtn() { |
| | | const buyFun = async () => { |
| | | if (!this.data.expire) { |
| | | let bookOrdersId = ""; |
| | | let query = { |
| | |
| | | duration: 1000, |
| | | }); |
| | | } |
| | | } |
| | | const token = wx.getStorageSync(app.config.tokenKey) |
| | | if (!token) { |
| | | this.logInFun(() => {}) |
| | | } else { |
| | | buyFun() |
| | | } |
| | | }, |
| | | |
| | | goRead() { |
| | | // 首页测试登录功能,后续注释 |
| | | // 检查登录状态 |
| | | const gotoPageFun = () => { |
| | | const item = this.data.digitalsData |
| | | wx.navigateTo({ |
| | | url: '/pages/digitalTextbooks/digitalTextbooksDetails/components/webView/index?refCode=' + item.refCode + "&tryPageCount=" + item.probationPage |
| | | }); |
| | | } |
| | | 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 |
| | | }); |
| | | this.logInFun(() => {}) |
| | | } else { |
| | | // 出现错误,返回false |
| | | gotoPageFun() |
| | | } |
| | | }) |
| | | } else { |
| | | // 如果是第一次登录,会跳转至绑定用户信息页面,填写完用户信息后进行登录并储存token和用户信息,结束后跳转回当前页面(携带页面参数) |
| | | 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) { |
| | | |
| | | |
| | | |
| | | |
| | | // } |
| | | |
| | | |
| | | }, |
| | | onTabClick(e) { |
| | | let tab = e.currentTarget.dataset.tab; |
| | | |
| | | this.setData({ |
| | | type: tab, |
| | | |
| | |
| | | }).exec() |
| | | }, |
| | | setCoolect() { |
| | | |
| | | // 首页测试登录功能,后续注释 |
| | | // 检查登录状态 |
| | | const collectFun = () => { |
| | | 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 |
| | | }) |
| | | }) |
| | | } |
| | | } |
| | | 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 |
| | | }) |
| | | }) |
| | | this.logInFun(() => {}) |
| | | } 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 { |
| | | 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 |
| | | }) |
| | | }) |
| | | } |
| | | collectFun() |
| | | } |
| | | }, |
| | | // 我要建议 |
| | |
| | | }, |
| | | |
| | | onCertificate() { |
| | | const cateFun = () => { |
| | | if (!this.data.isBuy) { |
| | | wx.showToast({ |
| | | title: "请先购买,体验完整服务", |
| | |
| | | dialogBox: true, |
| | | scrollJudge: '' |
| | | }) |
| | | } |
| | | const token = wx.getStorageSync(app.config.tokenKey) |
| | | if (!token) { |
| | | this.logInFun(() => {}) |
| | | } else { |
| | | cateFun() |
| | | } |
| | | }, |
| | | closeDialog() { |
| | | this.setData({ |