From aa2c08b3be23a01d44205b2c19d21a2bf53f944f Mon Sep 17 00:00:00 2001 From: 闫增涛 <1829501689@qq.com> Date: 星期一, 01 四月 2024 16:15:38 +0800 Subject: [PATCH] 图书服务列表、详情页bug修改 --- packageBookService/pages/bookServices/detail/index.js | 1076 +++++++++++++++++++++++++++++++++++------------------------ 1 files changed, 640 insertions(+), 436 deletions(-) diff --git a/packageBookService/pages/bookServices/detail/index.js b/packageBookService/pages/bookServices/detail/index.js index 500be20..9294e5e 100644 --- a/packageBookService/pages/bookServices/detail/index.js +++ b/packageBookService/pages/bookServices/detail/index.js @@ -1,7 +1,9 @@ // pages/bookServices/detail/index.js -import Message from 'tdesign-miniprogram/message/index.js'; import Toast from 'tdesign-miniprogram/toast'; -import tool from '../../../../assets/js/toolClass' +import tool from '../../../../assets/js/toolClass'; +import { + loginInfo +} from '../../../../assets/js/login' const app = getApp(); Page({ /** @@ -34,16 +36,20 @@ openTeachids: [], openLearnids: [], openTestids: [], + applyResourceState: false, // 鐢宠鏁欏璧勬簮鎸夐挳闃叉姈 resourceClassList: [], // 璧勬簮鎵�灞炲垎绫� - applyState: "", // 鏁欏璧勬簮鐢宠鐘舵�� - deadline: "", // 鏁欏璧勬簮鐢宠鏈夋晥鏃ユ湡 - rejectCause: "", // 涓嬭浇鎷掔粷鍘熷洜 + applyState: "", // 鏁欏璧勬簮鐢宠鐘舵�� + deadline: "", // 鏁欏璧勬簮鐢宠鏈夋晥鏃ユ湡 + rejectCause: "", // 涓嬭浇鎷掔粷鍘熷洜 buyIdList: [], shoppingCartGetId: [], // 宸茶喘涔癷d鍒楄〃 shoppingList: [], loading: false, - isShowTeachDownload: false, // 鎻愮ずPC涓嬭浇寮圭獥鐘舵�� - confirmBtn: { content: '鎴戠煡閬撲簡', variant: 'base' }, + isShowTeachDownload: false, // 鎻愮ずPC涓嬭浇寮圭獥鐘舵�� + confirmBtn: { + content: '鎴戠煡閬撲簡', + variant: 'base' + }, mockData: { id: 0, // 閿�鍞甶d price: 0, // 鍞环 @@ -53,11 +59,10 @@ mockList: [] // 鐢ㄦ埛缁勫嵎鎻愪氦淇℃伅 }, flag: true, - applyResourceLoading: false, noResources: false, - selectedIds: "",//鍟嗗搧鎴栧瓙鍟嗗搧閿�鍞柟寮� + selectedIds: "", //鍟嗗搧鎴栧瓙鍟嗗搧閿�鍞柟寮� bookBuy: false, //鍟嗗搧鎴栧瓙鍟嗗搧鏄惁璐拱 - expire: false,//鍟嗗搧鎴栧瓙鍟嗗搧閿�鍞柟寮忔槸鍚﹁繃鏈� + expire: false, //鍟嗗搧鎴栧瓙鍟嗗搧閿�鍞柟寮忔槸鍚﹁繃鏈� noFile: false, //鍟嗗搧鎴栧瓙鍟嗘湁鏃犵數瀛愪功鏂囦欢 num: 0, //鏍蜂功鐢宠鍗曟暟閲� alreadyPaperBookList: [], //宸茬敵璇风焊璐ㄦ牱涔� @@ -67,6 +72,56 @@ paperBookCount: 0, //绾歌川涔﹀墿浣欐鏁� ebookCount: 0, //鐢靛瓙涔﹀墿浣欐鏁� userInfo: {}, + pageLoading: true, + fileInfo: { + bookName: "", + fileType: "", + md5: "", + freePage: "" + }, //闃呰鍣ㄦ暟鎹� + buyResourceData: { + productLinkPath: '', + refCode: '', + }, + briefIcon: { + name: "/static/images/bookService/detail/tushujianjie-g.png" + }, + briefIconClick: { + name: '/static/images/bookService/detail/tushujianjie-click.png' + }, + eBookIcon: { + name: '/static/images/bookService/detail/ebook-g.png' + }, + eBookClickIcon: { + name: '/static/images/bookService/detail/ebook-click.png' + }, + teachResourcesIcon: { + name: '/static/images/bookService/detail/jiaoxueziyuan.png' + }, + teachResourcesClickIcon: { + name: '/static/images/bookService/detail/jiaoxueziyuan-click.png' + }, + learnResourceIcon: { + name: '/static/images/bookService/detail/yunxuexi.png' + }, + learnResourceClickIcon: { + name: '/static/images/bookService/detail/yunxuexi-click.png' + }, + testResourceIocn: { + name: '/static/images/bookService/detail/test-icon-g.png' + }, + testResourceClickIocn: { + name: '/static/images/bookService/detail/test-click-icon.png' + }, + noteIcon: { + name: '/static/images/bookService/detail/biji-icon-g.png' + }, + noteClickIcon: { + name: '/static/images/bookService/detail/biji-click-icon.png' + }, + icon1: { + name: "/static/images/bookService/detail/dangdang.png" + } }, @@ -80,6 +135,22 @@ * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鍔犺浇 */ onLoad(options) { + + // 妫�鏌ョ櫥褰曠姸鎬� + // const token = wx.getStorageSync(app.config.tokenKey) + // if (!token) { + // loginInfo(app, (data) => { + // // 濡傛灉涓嶆槸绗竴娆$櫥褰曪紝浼氭墽琛屽洖璋� + // if (data) { + // // 鐧诲綍鎴愬姛锛岃嚜鍔ㄨ褰晅oken鍜岀敤鎴蜂俊鎭紝骞惰繑鍥瀟rue + // } else { + // // 鍑虹幇閿欒锛岃繑鍥瀎alse + // } + // }) + // } else { + // // 濡傛灉鏄涓�娆$櫥褰曪紝浼氳烦杞嚦缁戝畾鐢ㄦ埛淇℃伅椤甸潰锛屽~鍐欏畬鐢ㄦ埛淇℃伅鍚庤繘琛岀櫥褰曞苟鍌ㄥ瓨token鍜岀敤鎴蜂俊鎭紝缁撴潫鍚庤烦杞洖褰撳墠椤甸潰锛堟惡甯﹂〉闈㈠弬鏁帮級 + // } + const systInfo = wx.getSystemInfoSync(); const menu = wx.getMenuButtonBoundingClientRect(); // 鑳跺泭淇℃伅 const navBarHeight = (menu.top - systInfo.statusBarHeight) * 2 + menu.height; // 瀵艰埅鏍忛珮搴� @@ -97,17 +168,36 @@ this.getBookInfo(options.id); this.getResourceClass() // 鑾峰彇璧勬簮鎵�灞炲垎绫� - const token = wx.getStorageSync('jsek-token') + const token = wx.getStorageSync(app.config.tokenKey) if (token) { this.getShoppingCartProductGet() this.getApplyInfo(options.id) this.getMockData() + this.getAlreadyPBookList() + this.getAlreadyEBookList() } if (wx.getStorageSync(app.config.userInfoKey)) { this.setData({ userInfo: JSON.parse(wx.getStorageSync(app.config.userInfoKey)) }) + // 鑾峰彇鐢宠娆℃暟 + this.getSelectPaperBookCount() + this.getSelectBookCount() } + + }, + + /** + * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鍒濇娓叉煋瀹屾垚 + */ + onReady() { + + }, + + /** + * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鏄剧ず + */ + onShow() { if (wx.getStorageSync("paperBookList")) { this.setData({ paperBookList: wx.getStorageSync("paperBookList"), @@ -124,26 +214,14 @@ }, /** - * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鍒濇娓叉煋瀹屾垚 - */ - onReady() { - - }, - - /** - * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鏄剧ず - */ - onShow() { }, - - /** * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰闅愯棌 */ - onHide() { }, + onHide() {}, /** * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鍗歌浇 */ - onUnload() { }, + onUnload() {}, /** * 椤甸潰鐩稿叧浜嬩欢澶勭悊鍑芥暟--鐩戝惉鐢ㄦ埛涓嬫媺鍔ㄤ綔 @@ -157,7 +235,7 @@ * 椤甸潰涓婃媺瑙﹀簳浜嬩欢鐨勫鐞嗗嚱鏁� */ onReachBottom() { - if (this.data.tabValue == 'jesk_note') { + if (this.data.tabValue == 'jsek_note') { const child = this.selectComponent('#note') child.onReachBottom() } @@ -166,11 +244,11 @@ /** * 鐢ㄦ埛鐐瑰嚮鍙充笂瑙掑垎浜� */ - onShareAppMessage() { }, + onShareAppMessage() {}, // 鏍煎紡鍖栨棩鏈� formatDate(dateString) { if (!dateString) { - return 'Invalid date'; + return ''; } const match = dateString.match(/^(\d{4})\/(\d{1,2})\/(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/); if (!match) { @@ -227,7 +305,7 @@ this.setData({ "mockData'.id": 0, "mockData.price": 0, - "mockData.count": 0 + "mockData.count": 0, }) const query = { path: '*', @@ -271,9 +349,12 @@ }); this.getSubTtem(); // 鑾峰彇鍥句功鍒嗙被 - const iconType = JSON.parse(res.datas.bookClassification)[0][0]; - const classType = JSON.parse(res.datas.bookClassification)[0][1]; - const className = await this.getBookClass(iconType, classType) + let className = '' + if (Array.isArray(res.datas.bookClassification) && res.datas.bookClassification.length) { + const iconType = JSON.parse(res.datas.bookClassification)[0][0]; + const classType = JSON.parse(res.datas.bookClassification)[0][1]; + className = await this.getBookClass(iconType, classType) + } // 鑾峰彇缁勫嵎閿�鍞甶d if (res.datas.saleMethod && res.datas.saleMethod.length) { res.datas.saleMethod.forEach((item) => { @@ -302,6 +383,7 @@ 'bookDetail.price': this.numFormat(this.data.bookDetail.price), 'bookDetail.oldPrice': this.numFormat(this.data.bookDetail.oldPrice), 'bookDetail.paperPrice': this.numFormat(this.data.bookDetail.paperPrice), + pageLoading: false }); console.log('鍥句功淇℃伅', this.data.bookDetail); }); @@ -352,12 +434,42 @@ this.setData({ noFile: true }); + if (res.datas[0].bookshelf_pdf) { + this.setData({ + "fileInfo.bookName": this.data.bookDetail.name, + "fileInfo.fileType": 'pdf', + "fileInfo.md5": res.datas[0].bookshelf_pdf, + "fileInfo.freePage": res.datas[0].bookshelf_probationPage, + }); + } else if (res.datas[0].bookshelf_protectedEpub) { + this.setData({ + "fileInfo.bookName": this.data.bookDetail.name, + "fileInfo.fileType": 'epub', + "fileInfo.md5": res.datas[0].bookshelf_protectedEpub, + "fileInfo.freePage": res.datas[0].bookshelf_freeEpub, + }); + } } } else { if (this.data.bookDetail.pdf || this.data.bookDetail.protectedEpub) { this.setData({ noFile: true }); + if (this.data.bookDetail.pdf) { + this.setData({ + "fileInfo.bookName": this.data.bookDetail.name, + "fileInfo.fileType": 'pdf', + "fileInfo.md5": this.data.bookDetail.pdf, + "fileInfo.freePage": this.data.bookDetail.probationPage, + }); + } else if (this.data.bookDetail.protectedEpub) { + this.setData({ + "fileInfo.bookName": this.data.bookDetail.name, + "fileInfo.fileType": 'epub', + "fileInfo.md5": this.data.bookDetail.protectedEpub, + "fileInfo.freePage": this.data.bookDetail.freeEpubPage, + }); + } } this.setData({ selectedIds: this.data.bookDetail.defaultSaleMethodId, @@ -398,49 +510,73 @@ }, // 鏀惰棌 setCollect() { - if (this.data.bookDetail.isFavourite) { - app.MG.store - .delProductLink({ + const token = wx.getStorageSync(app.config.tokenKey) + if (!token) { + // 妫�鏌ョ櫥褰曠姸鎬� + loginInfo(app, (data) => { + // 濡傛灉涓嶆槸绗竴娆$櫥褰曪紝浼氭墽琛屽洖璋� + if (data) { + // 鐧诲綍鎴愬姛锛岃嚜鍔ㄨ褰晅oken鍜岀敤鎴蜂俊鎭紝骞惰繑鍥瀟rue + this.getBookInfo(this.data.bookId) + } else { + // 鍑虹幇閿欒锛岃繑鍥瀎alse + } + }) + } else { + if (this.data.bookDetail.isFavourite) { + app.MG.store + .delProductLink({ + productIds: [this.data.bookDetail.id], + linkType: 'FavoriteBookCity', + }) + .then(() => { + this.setData({ + 'bookDetail.isFavourite': false + }) + }); + } else { + const params = { productIds: [this.data.bookDetail.id], linkType: 'FavoriteBookCity', - }) - .then(() => { + }; + app.MG.store.addProductLink(params).then((res) => { this.setData({ - 'bookDetail.isFavourite': false + 'bookDetail.isFavourite': true }) - Message.success({ - context: this, - offset: [20, 32], - duration: 5000, - content: '杩欐槸涓�鏉℃垚鍔熺殑鎻愮ず娑堟伅', - }); }); - } else { - const params = { - productIds: [this.data.bookDetail.id], - linkType: 'FavoriteBookCity', - }; - app.MG.store.addProductLink(params).then((res) => { - this.setData({ - 'bookDetail.isFavourite': true - }) - Message.success({ - context: this, - offset: ['20rpx', '32rpx'], - duration: 2000, - content: '鏀惰棌鎴愬姛', - }); - }); + } } + }, // 鎴戣寤鸿 suggestBtn() { + // 妫�鏌ョ櫥褰曠姸鎬� + const token = wx.getStorageSync(app.config.tokenKey) const child = this.selectComponent('#suggest-component') - child.showDialog() + if (!token) { + wx.showLoading({ + title: '鍔犺浇涓�', + }) + loginInfo(app, (data) => { + // 濡傛灉涓嶆槸绗竴娆$櫥褰曪紝浼氭墽琛屽洖璋� + if (data) { + // 鐧诲綍鎴愬姛锛岃嚜鍔ㄨ褰晅oken鍜岀敤鎴蜂俊鎭紝骞惰繑鍥瀟rue + child.showDialog() + wx.hideLoading() + } else { + // 鍑虹幇閿欒锛岃繑鍥瀎alse + } + }) + } else { + // 濡傛灉鏄涓�娆$櫥褰曪紝浼氳烦杞嚦缁戝畾鐢ㄦ埛淇℃伅椤甸潰锛屽~鍐欏畬鐢ㄦ埛淇℃伅鍚庤繘琛岀櫥褰曞苟鍌ㄥ瓨token鍜岀敤鎴蜂俊鎭紝缁撴潫鍚庤烦杞洖褰撳墠椤甸潰锛堟惡甯﹂〉闈㈠弬鏁帮級 + child.showDialog() + } }, // 璺宠浆缃戝簵 goShop(e) { - const { link } = e.currentTarget.dataset; + const { + link + } = e.currentTarget.dataset; wx.navigateTo({ url: `/packageBookService/pages/bookServices/webpage/index?url=${link}`, }) @@ -453,9 +589,15 @@ if (e.detail.label == '鏁欏璧勬簮' || e.detail.label == '浜戝涔�' || e.detail.label == '浜戞祴璇�') { const checkData = this.data.cmsDatas.find(item => item.refCode == e.detail.value) if (checkData) { - if ((e.detail.value == 'jsek_teachingResources' && !this.data.teach.length) - || (e.detail.value == 'jsek_cloudLearning' && !this.data.learn.length) - || (e.detail.value == 'questionBank' && !this.data.test.length)) { + if (e.detail.value == 'jsek_cloudLearning') { + this.setData({ + 'buyResourceData.productLinkPath': checkData.productLinkPath, + 'buyResourceData.refCode': checkData.refCode + }) + } + if ((e.detail.value == 'jsek_teachingResources' && !this.data.teach.length) || + (e.detail.value == 'jsek_cloudLearning' && !this.data.learn.length) || + (e.detail.value == 'questionBank' && !this.data.test.length)) { this.getResourceData(checkData) } } else { @@ -464,14 +606,18 @@ }) } } else if (e.detail.label == '浜戠瑪璁�') { - const token = wx.getStorageSync('jsek-token') + const token = wx.getStorageSync(app.config.tokenKey) const child = this.selectComponent('#note') child.handleSubmitTitle() if (token) { child.changeLoading() child.getNoteList() } - + } else if (e.detail.label == '鐢靛瓙涔�') { + const child = this.selectComponent('#eBook') + if (child) { + child.getProgress() + } } }, // 鑾峰彇璧勬簮鎵�灞炲垎绫� @@ -536,22 +682,26 @@ item.checked = false }) const list = await this.getAllResource(res.datas.cmsDatas[0].datas) + let result = [] if (type.refCode == 'jsek_teachingResources') { + this.findChildIds(list, result) this.setData({ teach: list, - loading: false + loading: false, + openTeachids: result }) - this.findChildIds(this.data.teach, this.data.openTeachids = []) + console.log('鏁欏璧勬簮', this.data.teach, this.data.applyState); } else if (type.refCode == 'jsek_cloudLearning') { - res.datas.cmsDatas[0].datas.forEach(item => { - item.checked = false - }) - const list = await this.getAllResource(res.datas.cmsDatas[0].datas) + // res.datas.cmsDatas[0].datas.forEach(item => { + // item.checked = false + // }) + // const list = await this.getAllResource(res.datas.cmsDatas[0].datas) + this.findChildIds(list, result) this.setData({ learn: list, - loading: false + loading: false, + openLearnids: result }) - this.findChildIds(this.data.learn, this.data.openLearnids = []) } } else { // 鏃犳暟鎹� @@ -601,7 +751,8 @@ isDownload: [], jsek_resourceBrief: [], jsek_link: [], - accessType: [] + accessType: [], + learnSelectType: [] }, pading: { start: 0, @@ -644,12 +795,12 @@ for (let i = 0; i < data.length; i++) { if (index < 3) { const item = data[i] - if (item.childrenFolderCount > 0) { + if (item.children && item.children.length > 0) { result.push(item.id) for (let j = 0; j < item.children.length; j++) { if (index < 3) { const childrenItme = item.children[j] - if (item.childrenCount > 0) { + if (item.children && item.children.length > 0) { result.push(childrenItme.id) index += 1 } @@ -657,7 +808,7 @@ break } } - } else if (item.childrenCount > 0) { + } else if (item.children && item.children.length > 0) { result.push(item.id) index += 1 } @@ -669,54 +820,61 @@ // 鍥句功娣诲姞璐墿杞� async addBookShopcCar() { - const token = wx.getStorageSync('jsek-token') - if (!token) { - return wx.getUserProfile({ - desc: '鐢ㄦ埛鐧诲綍', - success: (res) => { - console.log(res); - } - }) - } + if (!this.data.expire) { + const token = wx.getStorageSync('jsek-token') + if (!token) { + return wx.getUserProfile({ + desc: '鐢ㄦ埛鐧诲綍', + success: (res) => { + console.log(res); + } + }) + } - const shoppingCartGetId = [] + const shoppingCartGetId = [] - let query = { - start: 0, - size: 999, - filterList: [], - searchList: [] - } - const res = await app.MG.store.getShoppingCartProductList(query) - res.datas.forEach((item) => { - shoppingCartGetId.push(item.saleMethod.id) - }) - console.log(shoppingCartGetId, 'shoppingCartGetId'); - console.log(this.data.selectedIds, '閿�鍞柟寮廼d'); - const determine = shoppingCartGetId.some((item) => item == this.data.selectedIds) - console.log(determine); - if (!determine) { let query = { - requests: [ - { + start: 0, + size: 9999, + filterList: [], + searchList: [] + } + const res = await app.MG.store.getShoppingCartProductList(query) + res.datas.forEach((item) => { + shoppingCartGetId.push(item.saleMethod.id) + }) + console.log(shoppingCartGetId, 'shoppingCartGetId'); + console.log(this.data.selectedIds, '閿�鍞柟寮廼d'); + const determine = shoppingCartGetId.some((item) => item == this.data.selectedIds) + console.log(determine); + if (!determine) { + let query = { + requests: [{ saleMethodId: this.data.selectedIds, storeEventId: null, agentCode: '鐢靛瓙涔�' - } - ] - } - const addRes = app.MG.store.addShoppingCart(query) - this.showSuccessToast() + }] + } + 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: 'success', - direction: 'column', - }); + wx.showToast({ + title: "鍟嗗搧涓嶅湪鏈夋晥鏈�", + icon: 'none', + duration: 1000, + }) } + }, @@ -730,19 +888,16 @@ }); }, - - async buyBook() { + console.log(this.data.bookItemDetail.defaultSaleMethodId, 'this.data.bookItemDetail.defaultSaleMethodId'); if (!this.data.expire) { let bookOrdersId = '' let query = { remarks: '鐢靛瓙涔�', - requests: [ - { - saleMethodId: this.data.bookItemDetail.defaultSaleMethodId ? this.data.bookItemDetail.defaultSaleMethodId : this.data.bookDetail.defaultSaleMethodId, - count: 1 - } - ] + requests: [{ + saleMethodId: this.data.bookItemDetail.defaultSaleMethodId ? this.data.bookItemDetail.defaultSaleMethodId : this.data.bookDetail.defaultSaleMethodId, + count: 1 + }] } // 鍙戣捣璁㈠崟鍒濆鍖栬姹傚苟绛夊緟缁撴灉 const res = await app.MG.store.initOrder(query) @@ -768,7 +923,7 @@ }, // 鑾峰彇鏁欏璧勬簮涓嬭浇鏄惁鐢宠閫氳繃 - getApplyInfo(id) { + async getApplyInfo(id) { // 鑾峰彇褰撳墠鏃堕棿 const currentDate = new Date() let query = { @@ -781,7 +936,7 @@ appRefCode: app.config.appRefCode, topicIdOrRefCode: 'productDownLoad' } - app.MG.ugc.getTopicMessageList(query).then((res) => { + await app.MG.ugc.getTopicMessageList(query).then((res) => { const applyResource = res.datas.find((item) => { let content = [] try { @@ -837,13 +992,23 @@ } }) this.setData({ - applyResourceLoading: false + applyResourceState: false, }) + wx.hideLoading() }, // 鐢宠鏁欏璧勬簮 applyResource() { + if (this.data.applyResourceState) { + return wx.showToast({ + icon: 'error', + title: '璇峰嬁閲嶅鐐瑰嚮', + }) + } this.setData({ - applyResourceLoading: true + applyResourceState: true + }) + wx.showLoading({ + title: '鍔犺浇涓�', }) // let role = userStore.userInfo ? userStore.userInfo.role : null // if (role) { @@ -856,22 +1021,21 @@ cmsTypeRefCode: '', newDataListRequest: [], name: this.data.bookDetail.name, // name涓虹敵璇风殑涔︽湰鍚嶇О - content: JSON.stringify([ - { - name: this.data.bookDetail.name, - id: this.data.bookDetail.id, - // defaultSaleMethodId: bookData.value.defaultSaleMethodId, - icon: this.data.bookDetail.icon - } - ]) + content: JSON.stringify([{ + name: this.data.bookDetail.name, + id: this.data.bookDetail.id, + // defaultSaleMethodId: bookData.value.defaultSaleMethodId, + icon: this.data.bookDetail.icon + }]) } - app.MG.ugc.newTopicMessage(query).then((res) => { + app.MG.ugc.newTopicMessage(query).then(async (res) => { if (res) { wx.showToast({ - title: '鐢宠宸叉彁浜わ紝璇峰緟瀹℃牳閫氳繃鍚庝笅杞�', + title: '鐢宠宸叉彁浜�', + duration: 2000, }) } - this.getApplyInfo(this.data.bookDetail.id) + await this.getApplyInfo(this.data.bookDetail.id) }) // } else { // ElMessageBox.confirm('璇峰厛杩涜鏁欏笀璁よ瘉锛�', '灏婃暚鐨勭敤鎴凤紝鎮ㄥソ锛�', { @@ -884,9 +1048,7 @@ // }) // .catch(() => { }) // } - // } else { - // // logIn() - // } + // } }, // 鏁欏璧勬簮涓嬭浇鍓嶅線PC鎻愮ずDiialog closeTeachDownload() { @@ -1077,54 +1239,57 @@ // 浜戝涔犱竴閿鍙� async getFreeResource() { const child = this.selectComponent('#learn-resource') - const token = wx.getStorageSync('jsek-token') + const token = wx.getStorageSync(app.config.tokenKey) if (!token) { - return wx.getUserProfile({ - desc: '鐢ㄦ埛鐧诲綍', - success: (res) => { - console.log(res); + loginInfo(app, (data) => { + // 濡傛灉涓嶆槸绗竴娆$櫥褰曪紝浼氭墽琛屽洖璋� + if (data) { + // 鐧诲綍鎴愬姛锛岃嚜鍔ㄨ褰晅oken鍜岀敤鎴蜂俊鎭紝骞惰繑鍥瀟rue + } else { + // 鍑虹幇閿欒锛岃繑鍥瀎alse } }) - } - let arr = this.handleTreeData(this.data.learn).filter((item) => this.resourceIsBuy(item)) - let freeIds = arr.filter((item) => { - return item.saleMethod[0].Price == 0 - }) - if (!freeIds.length) return wx.showToast({ - icon: "error", - title: '鏆傛棤鍏嶈垂璧勬簮', - }) - child.changeReceive(true) - let requests = [] - freeIds.forEach((item, index) => { - if (this.resourceIsBuy(item)) { - requests.push({ - saleMethodId: item.saleMethod[0].Id, - count: 1 - }) - } - }) + } else { + let arr = this.handleTreeData(this.data.learn).filter((item) => this.resourceIsBuy(item)) + let freeIds = arr.filter((item) => { + return item.saleMethod[0].Price == 0 + }) + if (!freeIds.length) return wx.showToast({ + icon: "error", + title: '鏆傛棤鍏嶈垂璧勬簮', + }) + child.changeReceive(true) + let requests = [] + freeIds.forEach((item, index) => { + if (this.resourceIsBuy(item)) { + requests.push({ + saleMethodId: item.saleMethod[0].Id, + count: 1 + }) + } + }) - let query = { - remarks: '浜戝涔�', - requests, - } - try { - const initOrderRes = await app.MG.store.initOrder(query) - let parameter = { - orderNum: initOrderRes.orderNumber + let query = { + remarks: '浜戝涔�', + requests, } - // 纭璁㈠崟 - const confirmOrderRes = await app.MG.store.confirmOrder(parameter) - if (confirmOrderRes.orderNumber) { - child.changeReceive(false) - wx.showToast({ - title: '棰嗗彇鎴愬姛', - }) - this.getBookInfo(this.data.bookId) + try { + const initOrderRes = await app.MG.store.initOrder(query) + let parameter = { + orderNum: initOrderRes.orderNumber + } + // 纭璁㈠崟 + const confirmOrderRes = await app.MG.store.confirmOrder(parameter) + if (confirmOrderRes.orderNumber) { + child.changeReceive(false) + wx.showToast({ + title: '棰嗗彇鎴愬姛', + }) + this.getBookInfo(this.data.bookId) + } + } catch (error) { + console.log(error) } - } catch (error) { - console.log(error) } }, // 浜戝涔犱竴閿喘涔� @@ -1214,9 +1379,9 @@ if (new RegExp('(' + k + ')').test(fmt)) { fmt = fmt.replace( RegExp.$1, - RegExp.$1.length == 1 - ? (o)[k] - : ('00' + (o)[k]).substr(('' + (o)[k]).length) + RegExp.$1.length == 1 ? + (o)[k] : + ('00' + (o)[k]).substr(('' + (o)[k]).length) ) } } @@ -1237,7 +1402,6 @@ keys: [this.data.bookId] }) .then((res) => { - console.log(JSON.parse(res[0].value)); if (res && res.length) { const mock = JSON.parse(res[0].value) mock.forEach(item => { @@ -1270,12 +1434,10 @@ try { let query = { remarks: '缁勫嵎', - requests: [ - { - saleMethodId: this.data.mockData.id, - count: 1 - } - ] + requests: [{ + saleMethodId: this.data.mockData.id, + count: 1 + }] } if (this.data.flag) { this.setData({ @@ -1290,7 +1452,9 @@ } else { // 0鍏冪洿鎺ラ鍙� // 纭璁㈠崟 - const confirmOrderRes = await app.MG.store.confirmOrder({ orderNum: res.orderNumber }) + const confirmOrderRes = await app.MG.store.confirmOrder({ + orderNum: res.orderNumber + }) if (confirmOrderRes) { wx.showToast({ icon: "success", @@ -1310,96 +1474,119 @@ recordBuyMock() { const num = this.data.mockData.mockList.length const id = tool.uuid(8) - const createDate = new Date().getTime() + const createDate = this.DateFormat(new Date().getTime(), 'yyyy-MM-dd') const mockList = this.data.mockData.mockList - mockList.push({ id, createDate, name: `绗�${num + 1}濂楄瘯鍗穈, state: '0' }) + mockList.push({ + id, + createDate, + name: `绗�${num + 1}濂楄瘯鍗穈, + state: '0' + }) this.setData({ 'mockData.mockList': mockList }) // 璁板綍璐拱鏃堕棿锛屽苟璁剧姸鎬乻tate涓�1锛岃〃绀哄垰璐拱瀹屾垚缁勫嵎 app.MG.identity.setUserKey({ - setKeyRequests: [ - { - domain: 'mockData', - key: this.data.bookDetail.id + '', - value: JSON.stringify(this.data.mockData.mockList) - } - ] + setKeyRequests: [{ + domain: 'mockData', + key: this.data.bookDetail.id + '', + value: JSON.stringify(this.data.mockData.mockList) + }] }) }, // 搴曢儴璐拱鎸夐挳 buyBtn() { - if (this.data.tabValue == 'brief') { + if (this.data.tabValue == 'brief' && !this.data.bookBuy) { this.buyBook() - } - else if (this.data.tabValue == 'jsek_cloudLearning') { + } else if (this.data.tabValue == 'jsek_cloudLearning') { const tree = this.selectComponent('#tree') tree.onCloudShoppingCart() - } else if (this.data.tabValue == 'questionBank') { - this.buyMock() } else { console.log(this.data.tabValue); } }, + goRead() { + if (!this.data.noFile) { + wx.showToast({ + title: '鏆傛棤闃呰鏂囦欢', + icon: 'none', + duration: 2000 + }) + return false; + } + wx.navigateTo({ + url: '/packageBookService/pages/components/webView/index?md5=' + this.data.fileInfo.md5 + '&fileName=' + this.data.fileInfo.bookName + '&fileType=' + this.data.fileInfo.fileType + '&freePage=' + this.data.fileInfo.freePage + '&bookBuy=' + this.data.bookBuy + }) + + }, + //鏍蜂功鐢宠 - //鐢宠鐢靛瓙鏍蜂功 - appplyElectronicBook() { - console.log(this.data.bookDetail) - if (this.data.bookDetail.isApplyBook == 2 || this.data.bookDetail.isApplyBook == 4) { - let role = this.data.userInfo != null ? this.data.userInfo.role : null - if (role) { - if (role == 'Teacher') { - if (this.data.noFile) { - this.getSelectBookCount() - } else { - wx.showToast({ - title: "鏆傛棤鐢靛瓙涔︽枃浠�,璇疯仈绯荤鐞嗗憳!", - icon: 'none', - duration: 1000, - }) + //鑾峰彇宸茬敵璇风焊璐ㄦ牱涔� + getAlreadyPBookList() { + const data = { + start: 0, + size: 9999, + topicIdOrRefCode: 'applyEntityBook', + appRefCode: app.config.appRefCode, + sort: { + type: 'Desc', + field: 'CreateDate' + } + } + app.MG.ugc.getTopicMessageList(data).then((res) => { + let list = []; + res.datas.map((item) => { + if (item.content) { + item.content = JSON.parse(item.content) + } + list.push(item) + }) + this.setData({ + alreadyPaperBookList: list, + }); + }) + }, + //鑾峰彇宸茬敵璇风數瀛愭牱涔� + getAlreadyEBookList() { + const data = { + start: 0, + size: 9999, + topicIdOrRefCode: 'applyBook', + appRefCode: app.config.appRefCode, + sort: { + type: 'Desc', + field: 'CreateDate' + } + } + app.MG.ugc.getTopicMessageList(data).then((res) => { + let list = [] + if (res.datas.length > 0) { + res.datas.map((item) => { + if (item.feedBack) { + item.feedBack = JSON.parse(item.feedBack) + if (item.feedBack.endDate) { + let times = new Date(item.feedBack.endDate + ' 23:59:59').getTime() + let currentDate = new Date().getTime() + if (times < currentDate) { + item.isExpiry = true + } + } } - } else { - wx.showModal({ - title: '灏婃暚鐨勭敤鎴凤紝鎮ㄥソ锛�', //鎻愮ず鐨勬爣棰� - content: '璇峰厛杩涜鏁欏笀璁よ瘉锛�', //鎻愮ず鐨勫唴瀹� - success: function (res) { - if (res.confirm) { - wx.navigateTo({ - url: "/packageDomain/pages/teacherCertification/index", - }); - } else if (res.cancel) { - } - } - }) - } + if (item.content) { + item.content = JSON.parse(item.content) + } + if (item.state != 'Reject') { + list.push(item) + } + }) + this.setData({ + alreadyElectronicBookList: list, + }); } - } + }) }, - //鐢宠绾歌川鏍蜂功 - appplyPaperBook() { - if (this.data.bookDetail.isApplyBook == 3 || this.data.bookDetail.isApplyBook == 4) { - let role = this.data.userInfo != null ? this.data.userInfo.role : null - if (role) { - if (role == 'Teacher') { - this.getSelectPaperBookCount() - } else { - wx.showModal({ - title: '灏婃暚鐨勭敤鎴凤紝鎮ㄥソ锛�', //鎻愮ず鐨勬爣棰� - content: '璇峰厛杩涜鏁欏笀璁よ瘉锛�', //鎻愮ず鐨勫唴瀹� - success: function (res) { - if (res.confirm) { - wx.navigateTo({ - url: "/packageDomain/pages/teacherCertification/index", - }); - } else if (res.cancel) { - } - } - }) - } - } - } - }, + //鑾峰彇褰撳墠宸茬敵璇锋鏁帮紙绾歌川锛� getSelectPaperBookCount() { app.MG.app @@ -1411,7 +1598,6 @@ this.setData({ paperBookCount: res.totalCount - res.usedCount }) - this.getAlreadyBookList(this.data.bookDetail, 'pBook') }) }, //鑾峰彇褰撳墠宸茬敵璇锋鏁帮紙鐢靛瓙锛� @@ -1425,196 +1611,214 @@ this.setData({ ebookCount: res.totalCount - res.usedCount }) - this.getAlreadyBookList(this.data.bookDetail, 'eBook') }) }, - //鑾峰彇宸茬敵璇风殑鏍蜂功鍒楄〃 - getAlreadyBookList(item, type) { - let topicIdOrRefCode = null - if (type == 'eBook') { - topicIdOrRefCode = 'applyBook' - } else { - topicIdOrRefCode = 'applyEntityBook' - } - const data = { - start: 0, - size: 9999, - topicIdOrRefCode, - appRefCode: app.config.appRefCode, - sort: { - type: 'Desc', - field: 'CreateDate' - } - } - app.MG.ugc.getTopicMessageList(data).then((res) => { - let itemAttr = null - let isHas = false - itemAttr = { - id: item.id, - title: item.name || '--', - icon: item.icon, - checked: false, - defaultSaleMethodId: item.defaultSaleMethodId, - md5: item.datas.Icon, - author: item.author || '--', - price: item.price || '--', - isbn: item.isbn || '--', - publicationDate: item.publicationDate - } - res.datas.map((item) => { - if (item.feedBack) { - item.feedBack = JSON.parse(item.feedBack) - if (item.feedBack.endDate) { - const currentDate = new Date() - let times = new Date(item.feedBack.endDate + ' 23:59:59').getTime() - if (times < currentDate.getTime()) { - item.isExpiry = true - } + + //鐢宠鐢靛瓙鏍蜂功 + appplyElectronicBook() { + console.log(this.data.bookDetail) + if (this.data.bookDetail.isApplyBook == 2 || this.data.bookDetail.isApplyBook == 4) { + let role = this.data.userInfo != null ? this.data.userInfo.role : null + if (role) { + if (role == 'Teacher') { + if (!this.data.noFile) { + wx.showToast({ + title: "鏆傛棤鐢靛瓙涔︽枃浠�,璇疯仈绯荤鐞嗗憳!", + icon: 'none', + duration: 1000, + }) + return } - } - if (item.content) { - item.content = JSON.parse(item.content) - item.content.map((e) => (item.productId = e.id)) - } - }) - let objVal = null - if (type != 'eBook') { - objVal = res.datas.find( - (i) => i.productId == item.id && i.state != 'Reject' && i.state == 'WaitAudit' - ) - } else { - objVal = res.datas.find((i) => i.productId == item.id && i.state != 'Reject') - } - if (objVal && !objVal.isExpiry && type == 'eBook') { - wx.showToast({ - title: "鎮ㄥ凡鐢宠璇ユ牱涔�", - icon: 'none', - duration: 1000, - }) - } else if (objVal && type != 'eBook') { - wx.showToast({ - title: "鎮ㄥ凡鐢宠璇ユ牱涔�", - icon: 'none', - duration: 1000, - }) - } else { - if (type == 'eBook') { - if (this.data.ebookCount > 0) { - const eBookData = this.data.electronicBookList - if (eBookData.length == 2) { - wx.showToast({ - title: "姣忔鏈�澶氬彧鍙敵璇�2鏈牱涔�", - icon: 'none', - duration: 1000, - }) - return false - } - if (eBookData.length > 0) { - for (let i = 0; i < eBookData.length; i++) { - if (eBookData[i].id == item.id) { - isHas = true - } - } - if (!isHas) { - wx.showToast({ - title: "娣诲姞鎴愬姛锛屽湪鏍蜂功鐢宠鍗曠瓑鎮ㄥ摝~", - icon: "none", - duration: 1000, - }) - this.setData({ - electronicBookList: [...this.data.electronicBookList, ...[itemAttr]], - num: this.data.electronicBookList.length + this.data.paperBookList.length - }) - wx.setStorageSync("electronicBookList", this.data.electronicBookList); - } else { - wx.showToast({ - title: "璇ヤ功宸插湪娓呭崟鍒楄〃涓�", - icon: "none", - duration: 1000, - }) - } - } else { - wx.showToast({ - title: "娣诲姞鎴愬姛锛屽湪鏍蜂功鐢宠鍗曠瓑鎮ㄥ摝~", - icon: "none", - duration: 1000, - }) - this.setData({ - electronicBookList: [itemAttr], - num: 1 + this.data.paperBookList.length - }) - wx.setStorageSync("electronicBookList", [itemAttr]); - } - } else { + if (this.data.ebookCount == 0) { wx.showToast({ title: "鎮ㄧ殑鐢靛瓙鏍蜂功鐢宠娆℃暟宸茬敤灏斤紝鑻ヨ缁х画锛岃鑱旂郴绠$悊鍛橈紒", icon: "none", duration: 1000, }) + return false; } - } else { - if (this.data.paperBookCount > 0) { - const pBookData = this.data.paperBookList - if (pBookData.length == 2) { - wx.showToast({ - title: "姣忔鏈�澶氬彧鍙敵璇�2鏈牱涔�", - icon: 'none', - duration: 1000, - }) - return false - } - if (pBookData.length > 0) { - for (let i = 0; i < pBookData.length; i++) { - if (pBookData[i].id == item.id) { - isHas = true - } - } - if (!isHas) { - wx.showToast({ - title: "娣诲姞鎴愬姛锛屽湪鏍蜂功鐢宠鍗曠瓑鎮ㄥ摝~", - icon: 'none', - duration: 1000, - }) - this.setData({ - paperBookList: [...this.data.paperBookList, ...[itemAttr]], - num: this.data.paperBookList.lenght + this.data.electronicBookList.length - }) - wx.setStorageSync("paperBookList", this.data.paperBookList); - } else { - wx.showToast({ - title: "璇ヤ功宸插湪娓呭崟鍒楄〃涓�", - icon: "none", - duration: 1000, - }) - } - } else { - wx.showToast({ - title: "娣诲姞鎴愬姛锛屽湪鏍蜂功鐢宠鍗曠瓑鎮ㄥ摝~", - icon: 'none', - duration: 1000, - }) - this.setData({ - paperBookList: [itemAttr], - num: 1 + this.data.electronicBookList.length - }) - wx.setStorageSync("paperBookList", [itemAttr]); - } - } else { + if (this.data.electronicBookList.length >= 2) { wx.showToast({ - title: "鎮ㄧ殑绾歌川鏍蜂功鐢宠娆℃暟宸茬敤灏斤紝鑻ヨ缁х画锛岃鑱旂郴绠$悊鍛橈紒", - icon: 'none', + title: "姣忔鏈�澶氬彧鍙敵璇�2鏈牱涔�", + icon: "none", duration: 1000, }) + return false; } + let isHas = this.data.electronicBookList.find((eitem) => eitem.id == this.data.bookDetail.id) + if (isHas) { + wx.showToast({ + title: "璇ヤ功宸插湪娓呭崟鍒楄〃涓�", + icon: "none", + duration: 1000, + }) + return false; + } + let isApply = this.data.alreadyElectronicBookList.find((eitem) => eitem.id == this.data.bookDetail.id) + if (isApply) { + wx.showToast({ + title: "璇ヤ功宸茬敵璇凤紒", + icon: "none", + duration: 1000, + }) + return false; + } + this.addBookFun(this.data.bookDetail, "eBook") + } else { + wx.showModal({ + title: '灏婃暚鐨勭敤鎴凤紝鎮ㄥソ锛�', //鎻愮ず鐨勬爣棰� + content: '璇峰厛杩涜鏁欏笀璁よ瘉锛�', //鎻愮ず鐨勫唴瀹� + success: function (res) { + if (res.confirm) { + wx.navigateTo({ + url: "/packageDomain/pages/teacherCertification/index", + }); + } else if (res.cancel) {} + } + }) } } + } else { + wx.showToast({ + title: "璇ヤ功涓嶈兘鐢宠鐢靛瓙鏍蜂功", + icon: 'none', + duration: 1000, + }) + } + }, + //鐢宠绾歌川鏍蜂功 + appplyPaperBook() { + if (this.data.bookDetail.isApplyBook == 3 || this.data.bookDetail.isApplyBook == 4) { + let role = this.data.userInfo != null ? this.data.userInfo.role : null + if (role) { + if (role == 'Teacher') { + // 鐐瑰嚮閫変腑 + if (this.data.paperBookCount == 0) { + wx.showToast({ + title: "鎮ㄧ殑绾歌川鏍蜂功鐢宠娆℃暟宸茬敤灏斤紝鑻ヨ缁х画锛岃鑱旂郴绠$悊鍛橈紒", + icon: "none", + duration: 1000, + }) + return false; + } + if (this.data.paperBookList.length >= 2) { + wx.showToast({ + title: "姣忔鏈�澶氬彧鍙敵璇�2鏈牱涔�", + icon: "none", + duration: 1000, + }) + return false; + } + let isHas = this.data.paperBookList.find((pitem) => pitem.id == this.data.bookDetail.id) + if (isHas) { + wx.showToast({ + title: "璇ヤ功宸插湪娓呭崟鍒楄〃涓�", + icon: "none", + duration: 1000, + }) + return false; + } + let isApply = this.data.alreadyPaperBookList.find((pitem) => pitem.id == this.data.bookDetail.id) + if (isApply) { + wx.showToast({ + title: "璇ヤ功宸茬敵璇凤紒", + icon: "none", + duration: 1000, + }) + return false; + } + this.addBookFun(this.data.bookDetail, "pBook") + } else { + wx.showModal({ + title: '灏婃暚鐨勭敤鎴凤紝鎮ㄥソ锛�', //鎻愮ず鐨勬爣棰� + content: '璇峰厛杩涜鏁欏笀璁よ瘉锛�', //鎻愮ず鐨勫唴瀹� + success: function (res) { + if (res.confirm) { + wx.navigateTo({ + url: "/packageDomain/pages/teacherCertification/index", + }); + } else if (res.cancel) {} + } + }) + } + } + } else { + wx.showToast({ + title: "璇ヤ功涓嶈兘鐢宠绾歌川鏍蜂功", + icon: 'none', + duration: 1000, + }) + } + }, + // 娣诲姞鏍蜂功 + addBookFun(item, type) { + let itemAttr = null + const eList = this.data.electronicBookList; + const pList = this.data.paperBookList; + itemAttr = { + id: item.id, + title: item.name || '-', + icon: item.icon, + checked: false, + defaultSaleMethodId: item.defaultSaleMethodId, + md5: item.datas.Icon, + author: item.author || '-', + price: item.price || '-', + isbn: item.isbn || '-', + publicationDate: item.publicationDate + } + if (type == 'eBook') { + eList.push(itemAttr) + this.setData({ + electronicBookList: eList, + }) + wx.setStorageSync("electronicBookList", eList); + } else { + pList.push(itemAttr) + this.setData({ + paperBookList: pList, + }) + wx.setStorageSync("paperBookList", pList); + } + this.setData({ + num: this.data.num + 1 + }) + wx.showToast({ + title: "娣诲姞鎴愬姛锛屽湪鏍蜂功鐢宠鍗曠瓑鎮ㄥ摝~", + icon: "none", + duration: 1000, }) }, + //鍘绘牱涔︾敵璇峰崟 goApply() { wx.navigateTo({ url: "/packageDomain/pages/sampleBookList/applicationForm/index", }); }, - -}) + handleTree() { + // const child = this.selectComponent('#teach-tree') + let tree + // let openIds = child.data.openIds + if (this.data.tabValue == 'jsek_teachingResources') { + tree = this.data.teach + } else { + tree = this.data.learn + } + for (let index = 0; index < tree.length; index++) { + const item = tree[index]; + if (item.children && item.children.length > 0) { + const num = this.data.openTeachids.findIndex(citem => item.id == citem) + if (num >= 0) { + item.open = true + } else { + item.open = false + } + this.handleTree(item.children) + } + } + this.setData({ + teach: tree + }) + }, +}) \ No newline at end of file -- Gitblit v1.9.1