From a9c680d3fcde05afbbca0bb03f95e75027608b22 Mon Sep 17 00:00:00 2001 From: litian <C21AF165> Date: 星期六, 07 九月 2024 15:47:59 +0800 Subject: [PATCH] btn --- pages/digitalCourses/digitalCoursesDetails/index.js | 163 ++++++++++++++++++++++++++++++++++++------------------ 1 files changed, 108 insertions(+), 55 deletions(-) diff --git a/pages/digitalCourses/digitalCoursesDetails/index.js b/pages/digitalCourses/digitalCoursesDetails/index.js index 7066a1d..3101af1 100644 --- a/pages/digitalCourses/digitalCoursesDetails/index.js +++ b/pages/digitalCourses/digitalCoursesDetails/index.js @@ -2,7 +2,7 @@ const app = getApp() import SparkMD5 from 'spark-md5' import FormData from '../../../utils/formdata/index.js'; -// import Wxml2Canvas from 'wxml2canvas'; +import Wxml2Canvas from 'wxml2canvas'; import { worksDataBytool } from "../../../assets/js/toolClass.js"; @@ -85,6 +85,7 @@ closeBtn: false, deleteBtn: false, bookId: '', + bookPath: '', playerList: [], worksInfo: [], isCertificate: {}, @@ -94,12 +95,15 @@ fullName: '', //鍚嶇О userPicture: '' //鐢宠璇佷功鐢ㄦ埛鍥剧墖 }, + userName: '', pictureMd5: '', publishingUnit: '', pubCertificateHide: true, cbzsImg: '', //鍑虹増璇佷功base64 - rzzsImg: '' //璁よ瘉璇佷功base64 - + rzzsImg: '', //璁よ瘉璇佷功base64 + imageWidth: '', //鐢诲湪鐢诲竷涓婄殑鍥剧墖鐨勫搴� + imageHeight: '', //鐢诲湪鐢诲竷涓婄殑鍥剧墖鐨勯珮搴� + website: 'https://jsek.bnuic.com', }, formatDate(dateString) { if (!dateString) { @@ -151,13 +155,25 @@ * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鍔犺浇 */ onLoad(options) { + let parentPath = options.path.split('\\'); + parentPath.pop(); this.setData({ - bookId: options.id + bookId: options.id, + bookPath: parentPath.join('\\') }) + const token = wx.getStorageSync(app.config.tokenKey) + if (!token) { + loginInfo(app, (data) => { + if (data) { + this.digitalCoursesDetailsGet(options.id) + this.getPlayerList() + this.getType() + } else {} + }) + } this.digitalCoursesDetailsGet(options.id) this.getPlayerList() this.getType() - }, /** @@ -282,7 +298,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({ @@ -308,8 +324,16 @@ } }) } - this.getAboutBook(res.datas.productLinkInfo[res.datas.productLinkInfo.length - 1].LinkPath) + if (this.data.bookPath) { + this.getAboutBook(this.data.bookPath) + } else { + this.getAboutBook(res.datas.productLinkInfo[res.datas.productLinkInfo.length - 1].LinkPath) + } this.getCertificateList() + res.datas.content = res.datas.content && res.datas.content.replace('../', app.config.requestCtx + '/').replace( + /\<img/gi, + '<img style="max-width:100%;height:auto;display:block;margin-top:0;margin-bottom:0;"' + ) this.setData({ lecturerList: lecturer, digitalsData: res.datas, @@ -346,7 +370,7 @@ tabValue: value }) if (this.data.tabValue == 1) { - // this.saveAsImage() + this.saveAsImage() } if (this.data.tabValue == 2) { this.getResource() @@ -504,6 +528,7 @@ i.children = [] this.getTreeList(rootList, pathLength + addNum, i.children, i.productLinkPath, addNum) if (i.children.length == 0) { + newArr[0].istry = true delete i.children } } @@ -617,17 +642,19 @@ } }) .then((res) => { - this.setData({ - relationTextBook: res.datas[0] - }) - if (this.data.relationTextBook.purchasedSaleMethodIdList.includes(this.data.relationTextBook.defaultSaleMethodId)) { + if (res.datas.length > 0) { this.setData({ - isTextBookBuy: true + relationTextBook: res.datas[0] }) - } else { - this.setData({ - isTextBookBuy: false - }) + if (this.data.relationTextBook.purchasedSaleMethodIdList.includes(this.data.relationTextBook.defaultSaleMethodId)) { + this.setData({ + isTextBookBuy: true + }) + } else { + this.setData({ + isTextBookBuy: false + }) + } } }) }, @@ -657,6 +684,12 @@ answertype == "collectQuestion" ? "鎴戠殑鏀惰棌" : "鎴戠殑閿欓" }&answerType=${answertype}&storeInfo=${app.config.digitalCourses}`, }); + }, + + onCorrelationBook(e) { + const item = e.currentTarget.dataset.item; + this.digitalCoursesDetailsGet(item.id) + this.getPlayerList() }, // 鑾峰彇鐩稿叧璇剧▼ @@ -823,48 +856,68 @@ }, //鐢宠璇佷功 async saveAsImage() { - let query = wx.createSelectorQuery().in(this); - query.select("#pubCertificate").boundingClientRect(); - query.exec(function (res) { - console.log("View 鐨勪俊鎭細", res[0]); - }); - console.log(value, 123) - let drawImage = new Wxml2Canvas({ - element: 'pubCertificate', // canvas鑺傜偣鐨刬d, - obj: that, // 鍦ㄧ粍浠朵腑浣跨敤鏃讹紝闇�瑕佷紶鍏ュ綋鍓嶇粍浠剁殑this - width: this.width * 2, // 瀹介珮 - height: this.height * 2, - background: '#fff', // 榛樿鑳屾櫙鑹� - progress(percent) { // 缁樺埗杩涘害 - }, + 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() + + }, + drawImage1() { + let that = this; + let drawMyImage = new Wxml2Canvas({ + // width: 230, + // height: 325, + width: that.data.imageWidth, + height: that.data.imageHeight, + element: 'myCanvas', + progress(percent) {}, finish(url) { - console.log("鍒涘缓鐨勫浘鐗�", 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); - // uni.hideLoading() - // 鐢诲け璐ョ殑鍘熷洜 + console.log("鐢熸垚鐨勫浘鐗囧け璐�", res) } }, this); - // const canvas = Wxml2Canvas.wxmlToCanvas(value); - // // 杞崲涓哄浘鐗� - // const img = Wxml2Canvas.canvasToTempImage(canvas); - // const path = Wxml2Canvas.canvasToTempFilePath(canvas); - // console.log(canvas) - // 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 - // }) - this.setData({ - pubCertificateHide: false, - }) + 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() { @@ -1135,7 +1188,7 @@ //璇佷功鏌ョ湅 onClick1() { this.setData({ - images: ['https://jsek.bnuic.com/home/certificate/szkc.jpg'], + images: [this.data.cbzsImg], showIndex: true, visible: true, }) -- Gitblit v1.9.1