From 8dc4e50769a7ebc5f0a3d766f61aa08b8f23b772 Mon Sep 17 00:00:00 2001 From: litian <C21AF165> Date: 星期五, 06 九月 2024 11:23:21 +0800 Subject: [PATCH] login --- pages/digitalCourses/digitalCoursesDetails/index.js | 234 +++++++++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 182 insertions(+), 52 deletions(-) diff --git a/pages/digitalCourses/digitalCoursesDetails/index.js b/pages/digitalCourses/digitalCoursesDetails/index.js index 5f2bd6e..355702d 100644 --- a/pages/digitalCourses/digitalCoursesDetails/index.js +++ b/pages/digitalCourses/digitalCoursesDetails/index.js @@ -2,8 +2,7 @@ const app = getApp() import SparkMD5 from 'spark-md5' import FormData from '../../../utils/formdata/index.js'; -// import Wxml2Canvas from 'wxml2canvas'; -// const Wxml2Canvas = require('Wxml2Canvas') +import Wxml2Canvas from 'wxml2canvas'; import { worksDataBytool } from "../../../assets/js/toolClass.js"; @@ -60,12 +59,14 @@ testResourceIocn: { name: "/static/images/digitalTextbooks/link-t@3x.png", }, - + relationTextBook: null, + isTextBookBuy: false, dialogBox: false, lecturerList: [], selectActive: 'learn', learnList: [], testList: [], + testCount: 0, openTeachids: [], onlineQuestionsList: [], //鍒嗛〉 @@ -97,8 +98,9 @@ publishingUnit: '', pubCertificateHide: true, cbzsImg: '', //鍑虹増璇佷功base64 - rzzsImg: '' //璁よ瘉璇佷功base64 - + rzzsImg: '', //璁よ瘉璇佷功base64 + imageWidth: '', //鐢诲湪鐢诲竷涓婄殑鍥剧墖鐨勫搴� + imageHeight: '', //鐢诲湪鐢诲竷涓婄殑鍥剧墖鐨勯珮搴� }, formatDate(dateString) { if (!dateString) { @@ -153,10 +155,16 @@ this.setData({ bookId: options.id }) + const token = wx.getStorageSync(app.config.tokenKey) + if (!token) { + loginInfo(app, (data) => { + if (data) {} else {} + }) + } this.digitalCoursesDetailsGet(options.id) this.getPlayerList() this.getType() - this.getCertificateList() + }, /** @@ -219,7 +227,6 @@ this.setData({ playerList: JSON.parse(res[0].value) }) - console.log(this.data.playerList, "playerList") } }) }, @@ -262,7 +269,6 @@ } } app.MG.store.getProductDetail(query).then(async res => { - console.log(res); if (res.datas.purchasedSaleMethodIdList.includes(res.datas.defaultSaleMethodId)) { this.setData({ isBuy: true @@ -283,7 +289,7 @@ expire: res.false }) } - res.datas.publicationDate = moment(res.datas.publicationDate).format('YYYY骞碝M鏈圖D鏃�') + res.datas.publicationDate = moment(res.datas.publicationDate).format('YYYY骞碝M鏈�') res.datas.price = res.datas.price.toFixed(2) wx.setNavigationBarTitle({ @@ -310,7 +316,8 @@ }) } this.getAboutBook(res.datas.productLinkInfo[res.datas.productLinkInfo.length - 1].LinkPath) - + this.getCertificateList() + res.datas.content = res.datas.content.replace('../', app.config.requestCtx + '/') this.setData({ lecturerList: lecturer, digitalsData: res.datas, @@ -346,9 +353,12 @@ this.setData({ tabValue: value }) - console.log(this.data.tabValue); + if (this.data.tabValue == 1) { + this.saveAsImage() + } if (this.data.tabValue == 2) { this.getResource() + this.getRelationBook() } if (this.data.tabValue == 3) { this.selectComponent("#note").getNoteList(); @@ -359,7 +369,6 @@ }, selectChange(event) { - console.log(event) const value = event.target.dataset.value this.setData({ selectActive: value @@ -401,6 +410,7 @@ res.datas.cmsDatas[0].datas.forEach((item) => { if (item.type == 'questionBankFolder' || item.type == 'questionBankItem') { test.push(item) + } else if (item.type != "resourceItem") { this.data.playerList.forEach(pItem => { if (pItem.cmsItemId == item.id) { @@ -438,6 +448,7 @@ const data = test.filter( (item) => item.type == 'questionBankFolder' && item.childrenFolderCount > 0 ) + if (data.length > 0) { let list = [] let addNum = query.cmsPath.length > 5 ? 7 : query.cmsPath.length > 6 ? 8 : 6 @@ -446,6 +457,7 @@ list = this.ensureTreeConsistency(list) let result = []; this.findChildIds(list[0].children, result) + this.countLeafNodes(list[0].children) this.setData({ testList: list[0].children, openTeachids: result, @@ -579,7 +591,83 @@ } }, - // 鑾峰彇鐩稿叧鏁欐潗 + //鍦ㄧ嚎娴嬭瘯鑾峰彇鏈�鍚庝竴涓妭鐐规暟閲� + countLeafNodes(tree) { + tree.forEach(node => { + if (!node.children || node.children.length === 0) { + this.setData({ + testCount: this.data.testCount + 1 + }) + } else { + this.countLeafNodes(node.children); + } + }); + }, + + //鑾峰彇鍏宠仈瀛愬晢鍝�/鏁板瓧鏁欐潗 + getRelationBook() { + app.MG.store.getProductList({ + path: '*', + storeInfo: app.config.digitalCourses, + mainProductId: this.data.digitalsData.id, + queryType: 'Related', // 鏌ヨ绫诲瀷锛� Related锛氭煡璇㈠叧鑱斿晢鍝侊紱SubProduct: 鏌ヨ瀛愬晢鍝侊紱 + paging: { + start: 0, + size: 1 + }, + fields: { + author: [], + publicationDate: [], + isbn: [], + content: [], + Creator: [], + probationPage: [] + } + }) + .then((res) => { + this.setData({ + relationTextBook: res.datas[0] + }) + if (this.data.relationTextBook.purchasedSaleMethodIdList.includes(this.data.relationTextBook.defaultSaleMethodId)) { + this.setData({ + isTextBookBuy: true + }) + } else { + this.setData({ + isTextBookBuy: false + }) + } + }) + }, + + readTextBook() { + 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"); + if (!token) { + return wx.getUserProfile({ + desc: "鐢ㄦ埛鐧诲綍", + success: (res) => { + console.log(res); + }, + }); + } + 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}`, + }); + }, + + // 鑾峰彇鐩稿叧璇剧▼ getAboutBook(path) { let query = { path, @@ -620,7 +708,6 @@ this.setData({ relatedBookData: bookArr }) - console.log(this.data.relatedBookData); } else { this.setData({ relatedBookData: [] @@ -698,7 +785,6 @@ // 鍙戣捣璁㈠崟鍒濆鍖栬姹傚苟绛夊緟缁撴灉 const res = await app.MG.store.initOrder(query); // 鑾峰彇璁㈠崟鍙峰苟璧嬪�肩粰 orderNumber.value - console.log(res, 'res456'); bookOrdersId = res.orderNumber; // 妫�鏌ヨ鍗曞彿鏄惁瀛樺湪 if (bookOrdersId) { @@ -723,9 +809,7 @@ url, }); } - } else { - console.log(222); - } + } else {} } else { wx.showToast({ title: "鍟嗗搧涓嶅湪鏈夋晥鏈�", @@ -747,21 +831,69 @@ }, //鐢宠璇佷功 async saveAsImage() { - await nextTick() - let query = wx.createSelectorQuery(); - let value = query.select("#pubCertificate").boundingClientRect(); - Wxml2Canvas(value).then((canvas) => { - const img = canvas.toDataURL('image/png') - this.setData({ - cbzsImg: img, - }) - }) - // Wxml2Canvas(textCertificate.value).then((canvas1) => { - // const img1 = canvas1.toDataURL('image/png') - // rzzsImg.value = img1 - // }) + const that = this + const query = wx.createSelectorQuery().in(this) + query + .select('#pubCertificate') + .fields({ + // 閫夋嫨闇�瑕佺敓鎴恈anvas鐨勮寖鍥� + size: true, + node: true, + scrollOffset: true, + }, + (data) => { + let width = data.width + let height = data.height + console.log(width, height) + that.setData({ + imageWidth: width, + imageHeight: height, + }) + }, + ) + .exec() + this.drawImage1() - pubCertificateHide.value = false + }, + drawImage1() { + let that = this; + let drawMyImage = new Wxml2Canvas({ + // width: 230, + // height: 325, + width: that.data.imageWidth, + height: that.data.imageHeight, + element: 'myCanvas', + background: '#f0f0f0', + progress(percent) {}, + finish(url) { + console.log("鐢熸垚鐨勫浘鐗囧湴鍧�", url) + wx.getFileSystemManager().readFile({ + filePath: url, + encoding: 'base64', + success: (res) => { + let MyImageBase64 = 'data:image/jpg;base64,' + res.data + console.log('MyImageBase64', MyImageBase64) + that.setData({ + cbzsImg: MyImageBase64, + pubCertificateHide: false, + }) + }, + }) + }, + error(res) { + console.log("鐢熸垚鐨勫浘鐗囧け璐�", res) + } + }, this); + let data = { + list: [{ + type: 'wxml', + class: '.my_canvas .my_draw_canvas', //.my_draw_canvas姣忎釜瑕佺粯鍒跺厓绱犵殑绫诲悕 + limit: '.my_canvas', //my_canvas鏍瑰厓绱犵被鍚� + x: 0, + y: 0 + }] + } + drawMyImage.draw(data, that); }, //鑾峰彇瀛楁 getType() { @@ -794,20 +926,21 @@ }) } }) + }) }, onCertificate() { - // if (!this.data.isBuy) { - // wx.showToast({ - // title: "璇峰厛璐拱锛屼綋楠屽畬鏁存湇鍔�", - // icon: "none", - // duration: 1000, - // }); - // return false - // } + if (!this.data.isBuy) { + wx.showToast({ + title: "璇峰厛璐拱锛屼綋楠屽畬鏁存湇鍔�", + icon: "none", + duration: 1000, + }); + return false + } // if (!this.data.isLearn) { // wx.showToast({ // title: "鎮ㄧ殑瀛︿範浠诲姟杩樻湭瀹屾垚锛屾殏涓嶈兘鐢宠璇佷功锛屽姞娌瑰摝锛�", @@ -816,14 +949,14 @@ // }); // return false // } - // if (this.data.isCertificate && this.data.isCertificate.state == 'WaitAudit') { - // wx.showToast({ - // title: "鎮ㄧ敵璇风殑璇佷功姝e湪瀹℃牳涓�", - // icon: "none", - // duration: 1000, - // }); - // return false - // } + if (this.data.isCertificate && this.data.isCertificate.state == 'WaitAudit') { + wx.showToast({ + title: "鎮ㄧ敵璇风殑璇佷功姝e湪瀹℃牳涓�", + icon: "none", + duration: 1000, + }); + return false + } var page = getCurrentPages().pop(); // 鑾峰彇褰撳墠椤甸潰瀹炰緥 page.setData({ @@ -860,7 +993,6 @@ // encoding: 'binary', //缂栫爜鏍煎紡 success: ress => { //鎴愬姛鐨勫洖璋� - console.log(ress.data, 45613489) let spark = new SparkMD5.ArrayBuffer(); spark.append(ress.data); let md5 = spark.end(false); @@ -890,7 +1022,6 @@ if (res.statusCode == 200) { resolve(res.data); if (res.data) { - console.log(md5, "md5555") that.setData({ 'userInfo.userPicture': app.config.requestCtx + `/file/GetPreViewImage?md5=` + md5, pictureMd5: md5 @@ -1033,7 +1164,7 @@ //璇佷功鏌ョ湅 onClick1() { this.setData({ - images: ['https://jsek.bnuic.com/home/certificate/szkc.jpg'], + images: [this.data.cbzsImg], showIndex: true, visible: true, }) @@ -1049,7 +1180,6 @@ const { trigger } = e.detail; - console.log(trigger); this.setData({ visible: false, }); -- Gitblit v1.9.1