From c192e381734b9caf173c90bb9141dff0326785ee Mon Sep 17 00:00:00 2001 From: QYF-GitLab1 <1940665526@qq.com> Date: 星期四, 17 七月 2025 14:20:11 +0800 Subject: [PATCH] 京师智教小程序的专题活动模块 不做点击进入页面提示复制链接 点击时直接提示“请移步PC端查看” --- packageDomain/pages/resourceDetails/myAudio/index.js | 137 ++++++++++++++++++++++----------------------- 1 files changed, 66 insertions(+), 71 deletions(-) diff --git a/packageDomain/pages/resourceDetails/myAudio/index.js b/packageDomain/pages/resourceDetails/myAudio/index.js index 409ae1c..243bcda 100644 --- a/packageDomain/pages/resourceDetails/myAudio/index.js +++ b/packageDomain/pages/resourceDetails/myAudio/index.js @@ -347,16 +347,15 @@ wx.navigateBack(); }, - // 鍒ゆ柇褰撳墠鐩爣鏄惁宸茶喘涔� - async getCmsDataByQrcode() { + async getBuyCmsItem() { + let cmsItemData = null let query = { - storeInfo: this.data.storeInfo, path: '*', queryType: '*', + cmsType: '*', productId: this.data.bookId, - itemId: this.data.activeId, + cmsPath: this.data.bookDetail.rootCmsItemId, itemFields: { - // 璧勬簮绫诲瀷锛岃瘯璇绘枃浠讹紝鏄惁鍏佽涓嬭浇绛夊弬鏁� selectType: [], freeFile: [], file: [], @@ -373,8 +372,58 @@ size: 999 } } - const data = await app.MG.store.getProductDetail(query) - return data?.datas ?? [] + if (this.data.storeInfo) { + query.storeInfo = this.data.storeInfo + } + const res = await app.MG.store.getProductDetail(query) + let linkData = this.data.productLinkPath.split("\\"); + linkData.reverse() + let dataList = linkData.map(item => { + let data = res.datas.cmsDatas[0].datas.find(citem => citem.id == item); + if (data) return data; + }) + let isBuy = 1; + for (let i = 0; i < dataList.length; i++) { + const dataItem = dataList[i]; + if (dataItem) { + if (dataItem.saleMethod.length > 0) { + isBuy = 2; + if (this.data.bookDetail.purchasedSaleMethodIdList.indexOf(dataItem.saleMethod[0].Id) > -1 || dataItem.saleMethod[0].Price == 0) { + isBuy = 3; + break; + } else { + break; + } + } + } + } + if (isBuy == 2) { + // 鏈喘涔� + if (dataList[0].freeFile) { + cmsItemData = dataList[0] + } else { + wx.hideLoading(); + wx.showModal({ + title: '娓╅Θ鎻愮ず', + content: '璇ヨ祫婧愭湭璐拱锛屽皢杩斿洖璐拱', + success: (res) => { + if (res.confirm) { + if (this.data.source == 'qrcode') { + wx.navigateTo({ + url: `/packageBookService/pages/bookServices/detail/index?id=${this.data.bookDetail.id}&name=${this.data.bookDetail.name}&tabValue=${this.data.formPath}`, + }); + } else { + wx.navigateBack() + } + } + } + }) + } + } else { + cmsItemData = dataList[0] + } + + return cmsItemData }, resourceDetailsData() { @@ -409,61 +458,23 @@ let selectedId = -1; // 鍒濆鍖栭�変腑椤圭储寮� let showDataUrl = ''; let titleName = ''; - res.datas.cmsDatas[0].datas.forEach((item, index) => { - if (item.selectType === "audio" || item.learnSelectType === "audio") { - if (this.data.storeInfo == 'jsek_digitalCourses') { + // ###瑙嗛椤甸潰杩欓噷鍒ゆ柇浜嗘槸鍚﹁喘涔帮紝浣嗛煶棰戣繖閲屾病鏈夊垽鏂紝闇�瑕佸啀鏍稿疄 + if (this.data.storeInfo == 'jsek_digitalCourses') { + res.datas.cmsDatas[0].datas.forEach((item, index) => { + if (item.selectType === "audio" || item.learnSelectType === "audio") { if (item.sysType == 'CmsItem') { this.data.threeLeveData.push(item) } if (item.sysType == 'CmsItem' && item.freeFile) { this.data.threeLeveData.push(item) } - } else { - if (this.data.buyList.length) { - if (this.data.buyList.some(citem => item.productLinkPath.includes(citem.productLinkPath))) { - this.data.threeLeveData.push(item) - } - } else { - if (!item.saleMethod.length) { - // 娌′拱涓旀棤閿�鍞柟寮� - this.data.threeLeveData.push(item) - } else { - // 娌′拱涓旈攢鍞柟寮忚繃鏈�//娌′拱锛岄攢鍞柟寮忎环鏍间负0 - const itemSaleMethod = item.saleMethod.find(citem => citem.SaleType == 'Normal') - if (new Date().getTime() > new Date(itemSaleMethod.EndDate).getTime() || itemSaleMethod.Price == 0) { - this.data.threeLeveData.push(item) - } - // 娌′拱涓斿彧鏈夎瘯璇昏祫婧� - if ((!item.file && !item.protectedFile) && item.freeFile) { - const state = this.data.threeLeveData.find(citem => citem.id == item.id) - if (!state) - this.data.threeLeveData.push(item) - } - } - } } - } - }); - if (this.data.source == 'qrcode') { - let qrData = this.data.threeLeveData.find(ditem => ditem.id == this.data.activeId) - const currentSaleMaths = await this.getCmsDataByQrcode() - // 鍒ゆ柇鏄惁璐拱鐩綍 - const catalg = currentSaleMaths?.saleMethod?.find(i => currentSaleMaths.purchasedSaleMethodIdList.includes(i.Id)) - // 鍒ゆ柇鏄惁璐拱璧勬簮鏈韩 - const ownCms = qrData.saleMethods?.find(i => currentSaleMaths.purchasedSaleMethodIdList.includes(i.Id)) - if (catalg || ownCms) { - this.setData({ - threeLeveData: [qrData] - }) - } else { - this.setData({ - threeLeveData: [] - }) - } + }); } else { - this.setData({ - threeLeveData: this.data.threeLeveData - }) + const itemCms = await this.getBuyCmsItem() + if (itemCms != null) { + this.data.threeLeveData.push(itemCms) + } } if (this.data.threeLeveData.length > 0) { selectedId = this.data.threeLeveData.findIndex(items => items.productLinkPath == this.data.productLinkPath) @@ -487,26 +498,10 @@ toView: 'activeName' + selectedId, }); this.pubulicPlayFun(); - } else { - wx.showModal({ - title: '娓╅Θ鎻愮ず', - content: '璇ヨ祫婧愭湭璐拱锛屽皢杩斿洖璐拱', - success: (res) => { - if (res.confirm) { - if (this.data.source == 'qrcode') { - wx.navigateTo({ - url: `/packageBookService/pages/bookServices/detail/index?id=${this.data.bookDetail.id}&name=${this.data.bookDetail.name}&tabValue=${this.data.formPath}`, - }); - } else { - wx.navigateBack() - } - } - } - }) - } }); }, + onVideo(e) { this.setPlayerList() this.setData({ -- Gitblit v1.9.1