From 85fb718ae06cb0b5a74782cb6cbd081bfc870fcb Mon Sep 17 00:00:00 2001 From: litian <C21AF165> Date: 星期一, 16 十二月 2024 10:12:55 +0800 Subject: [PATCH] 出版日期 --- pages/digitalCourses/digitalCoursesDetails/index.js | 225 +++++++++++++++++++++++++++++++++++++------------------- 1 files changed, 149 insertions(+), 76 deletions(-) diff --git a/pages/digitalCourses/digitalCoursesDetails/index.js b/pages/digitalCourses/digitalCoursesDetails/index.js index 21b05e9..fb2dde1 100644 --- a/pages/digitalCourses/digitalCoursesDetails/index.js +++ b/pages/digitalCourses/digitalCoursesDetails/index.js @@ -4,13 +4,15 @@ import FormData from '../../../utils/formdata/index.js'; import Wxml2Canvas from 'wxml2canvas'; import { - worksDataBytool + worksDataBytool, + UpdateworksDataBytool } from "../../../assets/js/toolClass.js"; import moment from 'moment' import Toast from "tdesign-miniprogram/toast"; import { loginInfo } from '../../../assets/js/login'; +import wxbarcode from 'wxbarcode' Page({ /** @@ -103,7 +105,10 @@ rzzsImg: '', //璁よ瘉璇佷功base64 imageWidth: '', //鐢诲湪鐢诲竷涓婄殑鍥剧墖鐨勫搴� imageHeight: '', //鐢诲湪鐢诲竷涓婄殑鍥剧墖鐨勯珮搴� - website: 'https://jsek.bnuic.com', + website: 'https://jsek.bnuic.com/home/#/digitalCourses', + wxShareUrl: '', + imgUrl: '', + imgUrl1: '' }, formatDate(dateString) { if (!dateString) { @@ -174,10 +179,9 @@ this.digitalCoursesDetailsGet(options.id) this.getPlayerList() this.getType() - this.setData({ - userName: JSON.parse(wx.getStorageSync(app.config.userInfoKey)).name, - }) - console.log('1', options.id); + // this.setData({ + // userName: JSON.parse(wx.getStorageSync(app.config.userInfoKey)).name, + // }) }, /** @@ -191,11 +195,12 @@ * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鏄剧ず */ onShow() { - if (this.data.tabValue == 2) { + if (this.data.tabValue == 2 && this.data.selectActive == 'learn') { + console.log(12333) this.getPlayerList() this.getResource() + this.getRelationBook() } - }, /** @@ -239,6 +244,7 @@ keys: [this.data.bookId + ''] }) .then((res) => { + console.log(1, res); if (res.length > 0) { this.setData({ playerList: JSON.parse(res[0].value) @@ -247,6 +253,7 @@ }) }, digitalCoursesDetailsGet(digitalTextId) { + let that = this; let query = { path: '*', queryType: '*', @@ -305,7 +312,7 @@ expire: res.false }) } - res.datas.publicationDate = moment(res.datas.publicationDate).format('YYYY骞碝M鏈�') + res.datas.publicationDate = res.datas.publicationDate ? moment(res.datas.publicationDate).format('YYYY骞碝M鏈�') : '' res.datas.price = res.datas.price.toFixed(2) res.datas.oldPrice = res.datas.oldPrice.toFixed(2) wx.setNavigationBarTitle({ @@ -333,8 +340,34 @@ ) this.setData({ digitalsData: res.datas, - loading: false + loading: false, + wxShareUrl: app.config.shareUrl + '?id=' + res.datas.id + '&path=' + this.data.bookPath + '&type=course' }) + if (this.data.wxShareUrl) { + wxbarcode.qrcode('qrcode', this.data.wxShareUrl, 160, 160); + wxbarcode.qrcode('qrcode1', this.data.wxShareUrl, 160, 160); + setTimeout(() => { + wx.canvasToTempFilePath({ + canvasId: 'qrcode', + success: function (res) { + // res.tempFilePath 鍖呭惈鐢熸垚鐨勫浘鐗囨枃浠惰矾寰� + that.setData({ + imgUrl: res.tempFilePath + }) + } + }); + wx.canvasToTempFilePath({ + canvasId: 'qrcode1', + success: function (res) { + // res.tempFilePath 鍖呭惈鐢熸垚鐨勫浘鐗囨枃浠惰矾寰� + + that.setData({ + imgUrl1: res.tempFilePath + }) + } + }); + }, 1000) + } }) }, //鑾峰彇涓昏浜� @@ -447,7 +480,8 @@ selectChange(event) { const value = event.target.dataset.value this.setData({ - selectActive: value + selectActive: value, + testCount: 0 }) this.getResource() }, @@ -501,12 +535,17 @@ if (this.data.selectActive === 'learn') { let list = [] // 娴嬭瘯 6浣�// 姝e紡 5浣�// 娴嬭瘯璋冪敤浼�20锛屽唴閮�7 姝e紡璋冪敤浼�17 鍐呴儴浼�6 - let addNum = query.cmsPath.length > 5 ? 7 : query.cmsPath.length > 6 ? 8 : 6 - const num = query.cmsPath.length + addNum if (learn.some((item) => item.sysType == 'CmsFolder')) { - this.getTreeList(learn, num, list, '\\', addNum) - list = this.ensureTreeConsistency(list) + // 1.鍙湁鐩綍锛屾病鏈夎祫婧� + if (!learn.some((item) => item.sysType == 'CmsItem')) { + list = learn + } else { + // 2.鐩綍鍜岃祫婧愰兘鏈� + this.getTreeList(learn, list, query.cmsPath) + list = this.ensureTreeConsistency(list) + } } else { + // 3.鍙湁璧勬簮锛屾病鏈夌洰褰� list = learn } let result = []; @@ -516,22 +555,18 @@ learnList: list, openTeachids: result, }); - console.log(1, this.data.learnList, this.data.playerList) } } else { 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 - const num = query.cmsPath.length + addNum - this.getTreeList(data, num, list, '\\', addNum) + this.getTreeList(data, list, query.cmsPath) list = this.ensureTreeConsistency(list) let result = []; - this.findChildIds(list[0].children, result) - this.countLeafNodes(list[0].children) + this.findChildIds(list[0]?.children, result) + this.countLeafNodes(list[0]?.children) this.setData({ testList: list[0].children, openTeachids: result, @@ -560,10 +595,9 @@ }) }, // 鎵佸钩鍖栨暟鎹浆鎹ree - getTreeList(rootList, pathLength, newArr, path, addNum) { + getTreeList(rootList, newArr, path) { for (const item of rootList) { - // 姝ゅ鍘熸湰 item.productLinkPath.length == pathLength 浣� productLinkPath 闀垮害涓埆涔﹀瓨鍦�4銆�5浣嶄氦閿� - if ((pathLength - item.productLinkPath.length >= 0 && pathLength - item.productLinkPath.length <= 3) && item.productLinkPath.includes(path)) { + if (path == item.productLinkPath.replace('\\' + item.id, '')) { if (item.sysType == 'CmsItem') { if (item.selectType == 'webpage') { item.disabled = true @@ -578,15 +612,16 @@ } // newArr.push(item) // 鍦ㄦ彃鍏ヨ繃绋嬩腑瀵规暟鎹繘琛屾帓搴� - newArr = this.insertAndSortObjectsByProductLinkPath(newArr, item, addNum) + newArr = this.insertAndSortObjectsByProductLinkPath(newArr, item) + // 鎻掕繘鏁扮粍鍚� 浠庡師鏁版嵁涓垹闄� + rootList = rootList.filter(nitem => nitem.id != item.id) } } //缁欐暟缁勯噷闈㈠啀娣诲姞涓�涓猚hildren鐨勭┖鏁扮粍 for (const i of newArr) { i.children = [] - this.getTreeList(rootList, pathLength + addNum, i.children, i.productLinkPath, addNum) + this.getTreeList(rootList, i.children, i.productLinkPath) if (i.children.length == 0) { - newArr[0].istry = true delete i.children } } @@ -610,29 +645,21 @@ }, // 鎺掑簭鏁扮粍 鎸夌収productLinkPath - insertAndSortObjectsByProductLinkPath(array, newObj, addNum) { + insertAndSortObjectsByProductLinkPath(array, newObj) { // 鏌ユ壘鏂板璞″簲璇ユ彃鍏ョ殑浣嶇疆 - let insertIndex = array.findIndex(obj => Number(newObj.productLinkPath.substring(newObj.productLinkPath.length - addNum, newObj.productLinkPath.length)) < Number(obj.productLinkPath.substring(obj.productLinkPath.length - addNum, obj.productLinkPath.length))); - + let insertIndex = array.findIndex(obj => newObj.id < obj.id); // 濡傛灉娌℃湁鎵惧埌鍚堥�傜殑浣嶇疆锛屽垯鏀惧湪鏁扮粍鏈熬 if (insertIndex === -1) { insertIndex = array.length; } // 鎻掑叆鏂板璞″埌鏁扮粍 array.splice(insertIndex, 0, newObj); - // 娴嬭瘯6 姝e紡5 // 瀵规暟缁勮繘琛屾帓搴� array.sort((a, b) => { - if (Number(a.productLinkPath.substring(a.productLinkPath.length - addNum, a.productLinkPath.length)) < Number(b.productLinkPath.substring(b.productLinkPath.length - addNum, b.productLinkPath.length))) { - return -1; - } - if (Number(a.productLinkPath.substring(a.productLinkPath.length - addNum, a.productLinkPath.length)) > Number(b.productLinkPath.substring(b.productLinkPath.length - addNum, b.productLinkPath.length))) { - return 1; - } - // a must be equal to b + if (a.id < b.id) return -1; + if (a.id > b.id) return 1; return 0; }); - // 杩斿洖鏇存柊鍚庣殑鏁扮粍 return array; }, @@ -668,6 +695,7 @@ //鍦ㄧ嚎娴嬭瘯鑾峰彇鏈�鍚庝竴涓妭鐐规暟閲� countLeafNodes(tree) { + tree.forEach(node => { if (!node.children || node.children.length === 0) { this.setData({ @@ -834,7 +862,7 @@ Toast({ context: this, selector: "#t-toast", - message: "璇ヤ功宸插湪璐墿杞︼紝璇峰嬁閲嶅娣诲姞", + message: "璇ヨ绋嬪凡鍦ㄨ喘鐗╄溅锛岃鍕块噸澶嶆坊鍔�", theme: "warning", direction: "column", }); @@ -938,7 +966,9 @@ }, ) .exec() - this.drawImage() + setTimeout(() => { + this.drawImage() + }, 500) query .select('#textCertificate') .fields({ @@ -957,7 +987,9 @@ }, ) .exec() - this.drawImage1() + setTimeout(() => { + this.drawImage1() + }, 500) }, drawImage() { let that = this; @@ -1054,7 +1086,7 @@ app.MG.ugc.getTopicMessageList(data).then((res) => { res.datas.map((item) => { item.content = JSON.parse(item.content) - if (item.content.id == this.data.bookId) { + if (item.content.bookId == this.data.bookId) { this.setData({ isCertificate: item, userName: item.content.userName, @@ -1062,11 +1094,8 @@ }) } }) - }) }, - - onCertificate() { if (!this.data.isBuy) { @@ -1205,37 +1234,81 @@ userName: this.data.userInfo.fullName, userPicture: this.data.pictureMd5, studyTime: this.data.digitalsData.beginDate + '-' + year + '-' + month + '-' + today, - website: this.data.website + website: this.data.website, + wxShareUrl: this.data.wxShareUrl } - data = { - topicIdOrRefCode: 'applyCourseCertificate', - name: this.data.userInfo.fullName, - content: JSON.stringify(bookInfo), - state: 'WaitAudit', - cmsTypeRefCode: 'jsek_courseCertificate', - type: 'applyCourse', - newDataListRequest: worksDataBytool(this.data.worksInfo, this.data.userInfo) + + if (this.data.isCertificate.id) { + let dataRequests = UpdateworksDataBytool( + this.data.worksInfo, + [this.data.isCertificate], + this.data.userInfo + ) + + data = { + id: this.data.isCertificate.id, + topicIdOrRefCode: 'applyCourseCertificate', + name: this.data.userInfo.fullName, + content: JSON.stringify(bookInfo), + state: 'WaitAudit', + cmsTypeRefCode: 'jsek_courseCertificate', + type: 'applyCourse', + newDataRequests: dataRequests.newData, + updateDataRequests: dataRequests.updateData, + delDataRequest: { + ids: [] + } + } + app.MG.ugc + .updateTopicMessage(data) + .then((res) => { + wx.showToast({ + title: "宸叉彁浜ょ敵璇�", + icon: "none", + duration: 1000, + }); + this.setData({ + "userInfo.fullName": "", + dialogBox: false, + scrollJudge: true + }) + this.getCertificateList() + }) + .catch(() => { + btnLoading.value = false + }) + + } else { + data = { + topicIdOrRefCode: 'applyCourseCertificate', + name: this.data.userInfo.fullName, + content: JSON.stringify(bookInfo), + state: 'WaitAudit', + cmsTypeRefCode: 'jsek_courseCertificate', + type: 'applyCourse', + newDataListRequest: worksDataBytool(this.data.worksInfo, this.data.userInfo) + } + app.MG.ugc + .newTopicMessage(data) + .then((res) => { + wx.showToast({ + title: "宸叉彁浜ょ敵璇�", + icon: "none", + duration: 1000, + }); + this.setData({ + "userInfo.fullName": "", + dialogBox: false, + scrollJudge: true + }) + this.getCertificateList() + }) + .catch(() => { + this.setData({ + "userInfo.fullName": "", + }) + }) } - app.MG.ugc - .newTopicMessage(data) - .then((res) => { - wx.showToast({ - title: "宸叉彁浜ょ敵璇�", - icon: "none", - duration: 1000, - }); - this.setData({ - "userInfo.fullName": "", - dialogBox: false, - scrollJudge: true - }) - this.getCertificateList() - }) - .catch(() => { - this.setData({ - "userInfo.fullName": "", - }) - }) } else { wx.showToast({ title: "濮撳悕涓嶈兘涓虹┖", -- Gitblit v1.9.1