From db7fdd2cd77a20876d534ae020477b39b5f74faa Mon Sep 17 00:00:00 2001
From: litian <C21AF165>
Date: 星期三, 17 四月 2024 18:33:28 +0800
Subject: [PATCH] 字

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

diff --git a/packageDomain/pages/resourceDetails/myAudio/index.js b/packageDomain/pages/resourceDetails/myAudio/index.js
index 0221d5a..60b7fc6 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,16 +156,18 @@
 
     // 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 瀹炰緥
-    myAudio.destroy();
+    // myAudio.destroy();
   },
   count(timeStr) {
     const data = {
@@ -240,7 +246,6 @@
       cmsPath: this.data.parentProductLinkPath,
       itemFields: {
         SysType: 'CmsFolder',
-        // 璧勬簮绫诲瀷锛岃瘯璇绘枃浠讹紝鏄惁鍏佽涓嬭浇绛夊弬鏁�
         selectType: [],
         freeFile: [],
         file: [],
@@ -257,50 +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.forEach((items, index) => { // 淇敼姝ゅ娣诲姞index鍙傛暟
-            if (this.data.productLinkPath == items.productLinkPath) {
-              if (this.data.formPath == 'jsek_cloudLearning') {
-                // 杩欓噷澶勭悊浜戝涔犵殑
-                this.setData({
-                  showData: app.config.requestCtx + '/file/api/ApiDownloadForAuthorize?md5=' + items.protectedFile + '&token=' + wx.getStorageSync(app.config.tokenKey),
-                  titleName: items.name
-                })
-                this.pubulicPlayFun()
-              } else {
-                this.setData({
-                  showData: app.config.requestCtx + '/file/api/ApiDownload?md5=' + items.file,
-                  titleName: items.name
-                })
-                this.pubulicPlayFun()
-              }
-              let selectedIndex = index; // 瀛樺偍閫変腑椤圭殑绱㈠紩
-              this.setData({
-                selectedId: selectedIndex // 璁剧疆閫変腑椤圭殑绱㈠紩
-              });
-            }
-          });
+          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((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({
@@ -319,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');
+
         }
       }
     }
@@ -447,7 +465,7 @@
       this.setData({
         "pageCount.total": res.totalSize,
         noteList: res.datas,
-        loading: false
+        // loading: false
       })
       // console.log('绗旇鍒楄〃', res.datas);
     })
@@ -586,15 +604,24 @@
   },
   // 鎾斁鍏叡浠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; //蹇呴』鍐欙紝涓嶇劧鑾峰彇涓嶅埌
-      this.setData({
-        myAudioDuration: this.format(myAudio.duration),
-      })
 
+
+
+      myAudio.duration; //蹇呴』鍐欙紝涓嶇劧鑾峰彇涓嶅埌
       setTimeout(() => {
         this.setData({
           myAudioDuration: this.format(myAudio.duration),
@@ -602,6 +629,9 @@
         });
       }, 100);
     });
+
+    console.log(this.data.myAudioDuration);
+    console.log(this.data.myAudioCurrent);
 
     // 鎾斁瀹屾垚澶勭悊锛屾寜閽彉涓�涓�
     myAudio.onEnded((res) => {
@@ -613,13 +643,17 @@
 
     //杩涘害鏉″彉鍖�   
     myAudio.onTimeUpdate(() => {
-      console.log(this.format(myAudio.duration));
+      // console.log(this.format(myAudio.duration));
       this.setData({
         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();
   },

--
Gitblit v1.9.1