From 56b70cdad0a96691eaf37e04a79ef5e92b892480 Mon Sep 17 00:00:00 2001
From: yiming <m13691596795@163.com>
Date: 星期五, 19 四月 2024 11:14:40 +0800
Subject: [PATCH] bug1

---
 packageDomain/pages/resourceDetails/myAudio/index.js |  124 ++++++++++++++++++++++++++---------------
 1 files changed, 78 insertions(+), 46 deletions(-)

diff --git a/packageDomain/pages/resourceDetails/myAudio/index.js b/packageDomain/pages/resourceDetails/myAudio/index.js
index 15b1a9c..b42f0f1 100644
--- a/packageDomain/pages/resourceDetails/myAudio/index.js
+++ b/packageDomain/pages/resourceDetails/myAudio/index.js
@@ -59,6 +59,7 @@
 
   // 杞寲鏃堕棿
   format(time) {
+
     let minute = Math.floor(time / 60);
     let second = Math.floor(time % 60);
     minute = minute < 10 ? ("0" + minute) : minute;
@@ -139,6 +140,9 @@
 
   /**
    * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鍗歌浇
+   * 
+   * 閫�鍑洪〉闈㈡椂鍊欒皟鐢ㄧ殑
+   * 
    */
   onUnload() {
     // this.setData({
@@ -152,12 +156,14 @@
 
     // myAudio.src = ''
     // myAudio.destroy()
-    // this.setData({
-    //   myAudioPos: '',
-    //   isplay: false, //鏄惁榛樿鎾斁,
-    //   myAudioCurrent: '00:00', // 褰撳墠鎾斁杩涘害
-    //   showData: '',
-    // });
+    this.setData({
+      // myAudioPos: '',
+      isplay: false, //鏄惁榛樿鎾斁,
+      myAudioCurrent: '00:00', // 褰撳墠鎾斁杩涘害
+      showData: '',
+      speed: 1.0,
+    });
+    myAudio.playbackRate = this.data.speed;
     // 鍋滄闊抽鎾斁
     myAudio.stop();
     // 閿�姣� InnerAudioContext 瀹炰緥
@@ -233,7 +239,6 @@
     wx.navigateBack();
   },
   resourceDetailsData() {
-    let datas = ''
     let query = {
       path: '*',
       queryType: '*',
@@ -241,7 +246,6 @@
       cmsPath: this.data.parentProductLinkPath,
       itemFields: {
         SysType: 'CmsFolder',
-        // 璧勬簮绫诲瀷锛岃瘯璇绘枃浠讹紝鏄惁鍏佽涓嬭浇绛夊弬鏁�
         selectType: [],
         freeFile: [],
         file: [],
@@ -258,54 +262,58 @@
         size: 999
       }
     }
+
     app.MG.store.getProductDetail(query).then(res => {
+      let selectedId = -1; // 鍒濆鍖栭�変腑椤圭储寮�
+      let showDataUrl = '';
+      let titleName = '';
+
       res.datas.cmsDatas[0].datas.forEach((item, index) => {
         if (item.selectType === "audio" || item.learnSelectType === "audio") {
-          this.data.threeLeveData.push(item)
-          this.setData({
-            threeLeveData: this.data.threeLeveData
-          })
+          this.data.threeLeveData.push(item);
+        }
+      });
+      // console.log(this.data.threeLeveData);
+      this.data.threeLeveData.forEach((items, indexs) => {
+        if (this.data.productLinkPath == items.productLinkPath) {
+          selectedId = indexs;
 
         }
-        this.data.threeLeveData.forEach((items, index) => { // 淇敼姝ゅ娣诲姞index鍙傛暟
-          if (this.data.productLinkPath == items.productLinkPath) {
-            datas = items
-            let selectedIndex = index; // 瀛樺偍閫変腑椤圭殑绱㈠紩
-            this.setData({
-              selectedId: selectedIndex // 璁剧疆閫変腑椤圭殑绱㈠紩
-            });
-          }
-
-        });
-        if (this.data.formPath == 'jsek_cloudLearning') {
-          // 杩欓噷澶勭悊浜戝涔犵殑
-          this.setData({
-            showData: app.config.requestCtx + '/file/api/ApiDownloadForAuthorize?md5=' + datas.protectedFile + '&token=' + wx.getStorageSync(app.config.tokenKey),
-            titleName: datas.name
-          })
-          this.pubulicPlayFun()
-        } else {
-          this.setData({
-            showData: app.config.requestCtx + '/file/api/ApiDownload?md5=' + datas.file,
-            titleName: datas.name
-          })
-          this.pubulicPlayFun()
-        }
-
       })
-      this.data.threeLeveData.forEach((item) => {})
+      if (selectedId !== -1) {
+        let datas = this.data.threeLeveData[selectedId];
+
+        if (this.data.formPath == 'jsek_cloudLearning') {
+          showDataUrl = app.config.requestCtx + '/file/api/ApiDownloadForAuthorize?md5=' + datas.protectedFile + '&token=' + wx.getStorageSync(app.config.tokenKey);
+        } else {
+          console.log(datas);
+          showDataUrl = datas.file ? app.config.requestCtx + '/file/api/ApiDownload?md5=' + datas.file : app.config.requestCtx + '/file/api/ApiDownload?md5=' + datas.freeFile
+        }
+        titleName = datas.name;
+      }
+
       this.setData({
+        threeLeveData: this.data.threeLeveData,
+        selectedId: selectedId,
+        showData: showDataUrl,
+        titleName: titleName,
         loading: false,
         hidden: false
-      })
-    })
+      });
+      this.pubulicPlayFun();
+
+    });
   },
+
   onVideo(e) {
+    // myAudio.destroy();
+
     this.setData({
       myAudioCurrent: '00:00',
       myAudioPos: '',
       isplay: false
     })
+
     const item = e.currentTarget.dataset.item
     if (this.data.showData != '') {
       this.setData({
@@ -324,10 +332,15 @@
           this.pubulicPlayFun()
 
         } else {
+          console.log(item.file, 'item.file');
+          console.log(item.freeFile, 'item.freeFile');
+
           this.setData({
-            showData: app.config.requestCtx + '/file/api/ApiDownload?md5=' + item.file
+            showData: item.file ? app.config.requestCtx + '/file/api/ApiDownload?md5=' + item.file : app.config.requestCtx + '/file/api/ApiDownload?md5=' + item.freeFile
           })
           this.pubulicPlayFun()
+          console.log(this.data.showData, 'showData');
+
         }
       }
     }
@@ -452,7 +465,7 @@
       this.setData({
         "pageCount.total": res.totalSize,
         noteList: res.datas,
-        loading: false
+        // loading: false
       })
       // console.log('绗旇鍒楄〃', res.datas);
     })
@@ -591,26 +604,39 @@
   },
   // 鎾斁鍏叡浠g爜
   pubulicPlayFun() {
+
+    // debugger
+    console.log(myAudio.src, 'myAudio.src');
+    console.log(this.data.showData, 'this.data.showData');
+    this.setData({
+      speed: 1.0,
+    })
+    myAudio.playbackRate = this.data.speed;
+
     myAudio.src = this.data.showData
+
     // console.log(myAudio.src);
     // 鍦╫nCanplay閲岃幏鍙栧苟璁剧疆闊抽鏃堕暱鍜屾挱鏀捐繘搴�
     myAudio.onCanplay(() => {
+
+
+
       myAudio.duration; //蹇呴』鍐欙紝涓嶇劧鑾峰彇涓嶅埌
-
       setTimeout(() => {
-
         this.setData({
           myAudioDuration: this.format(myAudio.duration),
           myAudioCurrent: this.format(myAudio.currentTime)
         });
-
       }, 100);
     });
+
+    console.log(this.data.myAudioDuration);
+    console.log(this.data.myAudioCurrent);
 
     // 鎾斁瀹屾垚澶勭悊锛屾寜閽彉涓�涓�
     myAudio.onEnded((res) => {
       this.setData({
-        isplay: false
+        isplay: true
       })
     });
 
@@ -622,8 +648,13 @@
         myAudioPos: myAudio.currentTime / myAudio.duration * 100,
         myAudioCurrent: this.format(myAudio.currentTime),
         myAudioDuration: this.format(myAudio.duration),
+
       });
     })
+    console.log(this.data.myAudioCurrent);
+    console.log(this.data.myAudioDuration);
+    console.log(this.data.myAudioPos);
+
 
     myAudio.play();
   },
@@ -731,6 +762,7 @@
     this.setData({
       myAudioPos: position,
       myAudioCurrent: this.format(currentTime)
+
     })
   },
 

--
Gitblit v1.9.1