From 996f42e3465101fda308f1a18fdb67c836c8e608 Mon Sep 17 00:00:00 2001
From: 闫增涛 <1829501689@qq.com>
Date: 星期一, 17 二月 2025 10:45:53 +0800
Subject: [PATCH] 课程播放进度修复

---
 pages/home/home.js |  138 +++++++++++++++++++++++++++++----------------
 1 files changed, 88 insertions(+), 50 deletions(-)

diff --git a/pages/home/home.js b/pages/home/home.js
index 3bce987..106412b 100644
--- a/pages/home/home.js
+++ b/pages/home/home.js
@@ -1,7 +1,6 @@
 import {
   fetchHome
 } from '../../services/home/home';
-import moment from 'moment'
 import {
   loginInfo
 } from '../../assets/js/login';
@@ -39,16 +38,32 @@
     baseRefresh: {
       value: false
     },
-    loading: true
+    loading: true,
+    showStateMenu: false, // 鏂板勾鍏憡寮圭獥
   },
   onShow() {
     this.setData({
       searchVal: "",
     });
-    console.log(this.data.searchVal)
     this.loadHomePage();
+    const token = wx.getStorageSync(app.config.tokenKey)
+    if (token) {
+      this.getShoppingCartList()
+    }
+    this.init();
+    // const stateMenu = wx.getStorageSync('stateMenu')
+    // if (stateMenu == 'true') {
+    //   this.setData({
+    //     showStateMenu: true
+    //   })
+    //   wx.setStorageSync('stateMenu', 'false')
+    // }
   },
-
+  closeStateMenu() {
+    this.setData({
+      showStateMenu: false
+    })
+  },
   onLoad() {
     this.getBannerList()
     const systInfo = wx.getSystemInfoSync();
@@ -72,9 +87,6 @@
           this.init();
         }
       })
-    } else {
-      this.init();
-      this.registe()
     }
 
   },
@@ -114,6 +126,9 @@
       path: 'jsek_banner\\jsek_homeBannerApplet',
       fields: {
         jsek_link: []
+      },
+      coverSize: {
+        width: 400
       },
       paging: {
         start: 0,
@@ -203,8 +218,8 @@
     }
     app.MG.store.getProductList(obj).then((res) => {
       res.datas.forEach((item) => {
-        item.liveTime = item.liveTime ? moment(item.liveTime).format("MM-DD HH:mm:ss") : '';
-        item.startTime = item.startTime ? moment(item.startTime).format("MM-DD HH:mm:ss") : '';
+        item.liveTime = item.liveTime ? item.liveTime.substring(5) : '';
+        item.startTime = item.startTime ? item.startTime.substring(5) : '';
         item.price = item.price ? item.price.toFixed(2) : item.price;
       });
       this.setData({
@@ -270,6 +285,7 @@
     app.MG.store.getProductList(obj).then((res) => {
       res.datas.forEach((item) => {
         item.price = item.price ? item.price.toFixed(2) : item.price;
+        item.isbuy = item.purchasedSaleMethodIdList.indexOf(item.defaultSaleMethodId) > -1
       });
       this.setData({
         courseList: res.datas
@@ -399,6 +415,7 @@
     app.MG.store.getProductList(obj).then((res) => {
       res.datas.forEach((item) => {
         item.price = item.price ? item.price.toFixed(2) : item.price;
+        item.isbuy = item.purchasedSaleMethodIdList.indexOf(item.defaultSaleMethodId) > -1
       });
       this.setData({
         textbookList: res.datas
@@ -453,10 +470,17 @@
     //   duration: 1000
     // })
     const item = e.currentTarget.dataset.book
-    console.log(item);
+    // 缃戦〉绫诲瀷璺宠浆鍒扮綉鍧�澶嶅埗椤碉紝鍥犱负url浼犲弬涓嶈兘浼� 甯﹀弬鏁扮殑缃戠粶鍦板潃锛屾墍浠ユ澶勮鎶婄綉缁滃湴鍧�閲岀殑浼犲弬鎽樺嚭鏉ワ紝鏀惧埌url閲�
+    let urlData = ''
+    const flags = item.jsek_link.indexOf("?")
+    if (flags > -1) {
+      urlData = item.jsek_link.slice(flags + 1, item.jsek_link.length)
+    }
+    let url = '/packageBookService/pages/bookServices/linkPage/index'
     wx.navigateTo({
-      url: '/pages/specialDiscussion/webView/index?link=' + item.jsek_link
-    });
+      url: urlData ? url + `?path=${item.jsek_link.slice(0,flags)}` + '&' + urlData : url + `?path=${item.jsek_link}`
+    })
+
   },
   goCourseDetail(e) {
     // return wx.showToast({
@@ -508,51 +532,59 @@
       })
     })
   },
-  addCart(e) {
+  async addCart(e) {
     const {
       info
     } = e.currentTarget.dataset;
     if (wx.getStorageSync(app.config.tokenKey)) {
-      let query = {
-        start: 0,
-        size: 999,
-        filterList: [],
-        searchList: []
-      }
-      try {
-        if (
-          this.data.shoppingCartGetId.includes(
-            info.defaultSaleMethodId
-          )
-        ) {
-          wx.showToast({
-            title: "璇ヤ功宸插湪璐墿杞︼紝璇峰嬁閲嶅娣诲姞绌�",
-            icon: 'none',
-            duration: 1000
-          })
-        } else {
-          let query = {
-            requests: [{
-              saleMethodId: info.defaultSaleMethodId,
-              storeEventId: null,
-              agentCode: '鐢靛瓙涔�'
-            }]
-          }
-          const addRes = app.MG.store.addShoppingCart(query)
-          if (addRes) {
+      if (info.isbuy) {
+        wx.showToast({
+          title: "璇ュ晢鍝佸凡璐拱",
+          icon: 'none',
+          duration: 1000
+        })
+      } else {
+        let query = {
+          start: 0,
+          size: 999,
+          filterList: [],
+          searchList: []
+        }
+        try {
+          if (
+            this.data.shoppingCartGetId.includes(
+              info.defaultSaleMethodId
+            )
+          ) {
             wx.showToast({
-              title: "娣诲姞鎴愬姛",
-              icon: 'success',
+              title: "璇ュ晢鍝佸凡鍦ㄨ喘鐗╄溅锛岃鍕块噸澶嶆坊鍔�",
+              icon: 'none',
               duration: 1000
             })
+          } else {
+            let query = {
+              requests: [{
+                saleMethodId: info.defaultSaleMethodId,
+                storeEventId: null,
+                agentCode: '鐢靛瓙涔�'
+              }]
+            }
+            const addRes = await app.MG.store.addShoppingCart(query)
+            if (addRes) {
+              wx.showToast({
+                title: "娣诲姞鎴愬姛",
+                icon: 'success',
+                duration: 1000
+              })
+            }
+            this.getShoppingCartList()
           }
-          this.getShoppingCartList()
+
+        } catch (error) {
+          console.error('鍑洪敊浜嗭細', error)
         }
-      } catch (error) {
-        console.error('鍑洪敊浜嗭細', error)
       }
     }
-
   },
   onMoreGuide(e) {
     let type = e.currentTarget.dataset.info
@@ -628,10 +660,16 @@
       success(res) {
         console.log(res);
         if (res.errMsg == "scanCode:ok" && res.path || res.result) {
-          let path = res.path || res.result
-          wx.redirectTo({
-            url: '/' + path,
-          })
+          if (res.path) {
+            let path = res.path || res.result
+            wx.redirectTo({
+              url: '/' + path,
+            })
+          } else {
+            wx.redirectTo({
+              url: '/pages/scanResult/index?result=' + res.result,
+            })
+          }
         }
       }
     })

--
Gitblit v1.9.1