From 0b04ed8c61813de116127100c5236bb2ff040682 Mon Sep 17 00:00:00 2001
From: QYF-GitLab1 <1940665526@qq.com>
Date: 星期三, 16 七月 2025 21:56:15 +0800
Subject: [PATCH] 资源扫码

---
 packageDomain/pages/resourceDetails/myVideo/index.js |  111 ++++++++++++++++++++++---------------------------------
 1 files changed, 44 insertions(+), 67 deletions(-)

diff --git a/packageDomain/pages/resourceDetails/myVideo/index.js b/packageDomain/pages/resourceDetails/myVideo/index.js
index ea072ff..2ebdf56 100644
--- a/packageDomain/pages/resourceDetails/myVideo/index.js
+++ b/packageDomain/pages/resourceDetails/myVideo/index.js
@@ -330,14 +330,6 @@
     wx.navigateBack();
   },
 
-  // 鍒ゆ柇褰撳墠鐩爣鏄惁宸茶喘涔�
-  async getCmsDataByQrcode() {
-    const query = {
-      cmsItemId: Number(this.data.activeId)
-    };
-    return app.MG.file.checkCmsItem(query)
-  },
-
   resourceDetailsData() {
     this.setData({
       videoLoading: true,
@@ -385,55 +377,57 @@
               }
             }
           } else {
-            if (this.data.productLinkPath == item.productLinkPath) {
-              // 涔颁簡
-              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)
+            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) {
+                    isBuy = 3;
+                    break;
+                  } else {
+                    break;
                   }
-                  //  娌′拱涓斿彧鏈夎瘯璇昏祫婧�
-                  if (!item.file && item.freeFile) this.data.threeLeveData.push(item)
                 }
+              }
+            }
+            if (isBuy == 2) {
+              // 鏈喘涔�
+              if (dataList[0].freeFile) {
+                this.data.threeLeveData.push(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 {
+              if (this.data.productLinkPath == item.productLinkPath) {
+                this.data.threeLeveData.push(dataList[0])
               }
             }
           }
         }
       })
-      if (this.data.source == 'qrcode') {
-        let qrData = this.data.threeLeveData.find(ditem => ditem.id == this.data.activeId)
-        const isBuyCms = await this.getCmsDataByQrcode() // 褰撳墠璧勬簮鎴栫埗绾х洰褰曟槸鍚﹁喘涔�
-        const isDefualtPrice = this.data.bookDetail?.defaultSaleMethod?.price // 褰撳墠涔︾殑浠烽粯璁ら攢鍞柟寮忎环鏍兼槸鍚︿负0
-        const isBuyBook = this.data.bookDetail?.alreadyBuy // 褰撳墠涔︽槸鍚﹁喘涔�
-        if (isBuyCms) {
-          this.setData({
-            threeLeveData: [qrData]
-          })
-        } else {
-          if (isDefualtPrice == 0 || isBuyBook) {
-            this.setData({
-              threeLeveData: [qrData]
-            })
-          } else {
-            this.setData({
-              threeLeveData: []
-            })
-          }
-        }
-      } else {
-        this.setData({
-          threeLeveData: this.data.threeLeveData
-        })
-      }
       if (this.data.threeLeveData.length > 0) {
         this.data.threeLeveData.forEach((items, index) => { // 淇敼姝ゅ娣诲姞index鍙傛暟
           if (this.data.productLinkPath == items.productLinkPath) {
@@ -469,23 +463,6 @@
             }
           }
         });
-      } 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()
-              }
-            }
-          }
-        })
-
       }
       this.setData({
         loading: false,

--
Gitblit v1.9.1