From 04c7b0163caeae4ab1c5da62e301fa993101cfad Mon Sep 17 00:00:00 2001
From: 闫增涛 <1829501689@qq.com>
Date: 星期一, 31 三月 2025 10:40:45 +0800
Subject: [PATCH] bug修改

---
 pages/cart/index.js |  208 +++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 165 insertions(+), 43 deletions(-)

diff --git a/pages/cart/index.js b/pages/cart/index.js
index 546e1c1..4a4ceb1 100644
--- a/pages/cart/index.js
+++ b/pages/cart/index.js
@@ -1,11 +1,19 @@
 const app = getApp();
-// import { getPublicImage } from '@/assets/js/middleGround/tool.js'
-import { getPublicImage } from '../../assets/js/middleGround/tool';
+import {
+  loginInfo
+} from '../../assets/js/login';
+import {
+  getPublicImage
+} from '../../assets/js/middleGround/tool';
 import Toast from 'tdesign-miniprogram/toast/index';
 
-import { loginInfo } from '../../assets/js/login';
+
 Page({
   data: {
+    price: '',
+    loading: true,
+    hidden: true,
+    swipeOpened: false,
     onDisabled: false,
     imgUrl: [],
     shoppingCartData: [],
@@ -17,27 +25,63 @@
     start: 1,
     totalSize: '',
     isMore: null,
+    bookId: '',
+    bookName: ''
   },
 
   onLoad(options) {
-
     wx.setNavigationBarTitle({
       title: '璐墿杞�'
     });
-    this.shoppingCartGet();
-    console.log(this.data.shoppingCartData.length, 'this.data.shoppingCartData.length');
-
+    // this.shoppingCartGet();
+    this.setData({
+      swipeOpened: true
+    })
   },
   onShow() {
+    loginInfo(app, (data) => {
+      if (data) {
+        this.shoppingCartGet();
+      } else {
+        wx.switchTab({
+          url: '/pages/home/home',
+        })
+      }
+    })
+    this.setData({
+      swipeOpened: false
+    })
     if (typeof this.getTabBar === 'function' && this.getTabBar()) {
       this.getTabBar().setData({
         active: 3
       })
     }
-    this.shoppingCartGet();
-    this.setData({ totalPrice: 0.00, selectedCount: 0, checkAll: false, })
+    this.setData({
+      totalPrice: 0.00,
+      selectedCount: 0,
+      checkAll: false,
+    })
+  },
 
-
+  // 閲戦鏄剧ず.00鏍煎紡
+  numFormat(value) {
+    if (!value) return "0.00";
+    value = Number(value).toFixed(2);
+    var intPart = Math.trunc(value); // 鑾峰彇鏁存暟閮ㄥ垎
+    var intPartFormat = intPart
+      .toString()
+      .replace(/(\d)(?=(?:\d{3})+$)/g, "$1,"); // 灏嗘暣鏁伴儴鍒嗛�笁涓�鏂�
+    var floatPart = ".00"; // 棰勫畾涔夊皬鏁伴儴鍒�
+    var value2Array = value.split(".");
+    // =2琛ㄧず鏁版嵁鏈夊皬鏁颁綅
+    if (value2Array.length === 2) {
+      floatPart = value2Array[1].toString(); // 鎷垮埌灏忔暟閮ㄥ垎
+      if (floatPart.length === 1) {
+        return `${intPartFormat}.${floatPart}0`;
+      }
+      return `${intPartFormat}.${floatPart}`;
+    }
+    return intPartFormat + floatPart;
   },
   onDelete(e) {
     const item = e.currentTarget.dataset.item;
@@ -45,7 +89,15 @@
       ids: [item.id]
     }).then(res => {
       this.shoppingCartGet();
-      wx.showToast({ title: '鍒犻櫎鍥句功鎴愬姛', icon: 'none' });
+      wx.showToast({
+        title: '鍒犻櫎鍥句功鎴愬姛',
+        icon: 'none'
+      });
+      this.setData({
+        totalPrice: 0.00,
+        selectedCount: 0,
+        checkAll: false,
+      })
     });
   },
 
@@ -57,37 +109,66 @@
       searchList: []
     };
     app.MG.store.getShoppingCartProductList(query).then(res => {
-
+      console.log(res.datas);
       this.setData({
         totalSize: res.totalSize
       })
-
       res.datas.forEach(item => {
-        // console.log(item, 'item456');
-        item.imgUrl = getPublicImage(item.productMonWithLinkDto.product.icon, '', '160');
-
         this.setData({
-          type: item.saleMethod.type == 'createProductItemSaleMethod' ? 'item' : 'product'
+          bookId: res.id,
+          bookName: res.name,
+          price: item.saleMethod.price.toFixed(2),
         })
+        item.imgUrl = getPublicImage(item.productMonWithLinkDto.product.icon, '', '160');
+        // this.setData({
+        //   type: item.saleMethod.type == 'createProductItemSaleMethod' ? 'item' : 'product'
+        // })
+        const type = item.saleMethod.type == 'createProductItemSaleMethod' ? 'item' : 'product';
+        item.type = type; // 灏唗ype璁剧疆涓篿tem瀵硅薄鐨勫睘鎬э紝鑰屼笉鏄娇鐢╯etData
+        item.name = item.linkCmsItems[0].name ? item.productMonWithLinkDto.product.name + ':' + item.linkCmsItems[0].name : item.productMonWithLinkDto.product.name
+        item.saleMethod.price = this.numFormat(item.saleMethod.price)
+        if (item.productMonWithLinkDto.links[0].storeRefCode == 'jsek_digitalTextbooks') {
+          item.typeTxt = '鏁板瓧鏁欐潗'
+          item.productType = "鏁板瓧鏁欐潗"
+        } else if (item.productMonWithLinkDto.links[0].storeRefCode == 'jsek_digitalCourses') {
+          item.typeTxt = '鏁板瓧璇剧▼'
+          item.productType = "鏁板瓧璇剧▼"
+        } else {
+          item.typeTxt = '鐢靛瓙涔�'
+          item.productType = "鍥句功鏈嶅姟-鐢靛瓙涔�"
 
+          if (item.saleMethod.type == 'createProductItemSaleMethod' || item.saleMethod.type == 'createProductFolderSaleMethod') {
+            if (item.linkCmsItems[0].refCode == 'questionBank') {
+              item.typeTxt = '浜戞祴璇�'
+              item.productType = '鍥句功鏈嶅姟-浜戞祴璇�'
+            } else {
+              item.typeTxt = '浜戝涔�'
+              item.productType = "鍥句功鏈嶅姟-浜戝涔�"
+            }
+          }
+        }
+        // 
       });
 
       this.setData({
         shoppingCartData: res.datas
       });
-
-
       if (this.data.shoppingCartData.length === 0) {
-        console.log(11111);
         this.setData({
           onDisabled: true
         })
       } else {
-        console.log(2222);
         this.setData({
           onDisabled: false
         })
       }
+      setTimeout(() => {
+        this.setData({
+          loading: false,
+          hidden: false,
+        })
+      }, 600)
+
     });
     wx.stopPullDownRefresh()
 
@@ -108,7 +189,9 @@
   },
 
   HandelItemChange(e) {
-    const { item } = e.target.dataset;
+    const {
+      item
+    } = e.target.dataset;
     const items = this.data.shoppingCartData
     items.map(eitem => {
       if (eitem.id == item.id) {
@@ -141,13 +224,7 @@
     });
   },
 
-
-
-
-
   goPaymentPage() {
-
-
     // 棣栭〉娴嬭瘯鐧诲綍鍔熻兘锛屽悗缁敞閲�
     // 妫�鏌ョ櫥褰曠姸鎬�
     const token = wx.getStorageSync(app.config.tokenKey)
@@ -155,8 +232,6 @@
       loginInfo(app, (data) => {
         // 濡傛灉涓嶆槸绗竴娆$櫥褰曪紝浼氭墽琛屽洖璋�
         if (data) {
-
-
           const selectedItems = this.data.shoppingCartData.filter(item => item.checked);
           // console.log(selectedItems, 789);
           const selectedIds = selectedItems.map(item => item.id);
@@ -165,9 +240,8 @@
             let data = {
               linkIds: selectedIds
             }
+            // '&onNorderSaleMethod=' + 
             app.MG.store.shoppingCartCreateOrder(data).then(res => {
-              // console.log(res, 456);
-
 
               const url = '/pages/cart/paymentPage/index?orderNumber=' + res.orderNumber
               wx.navigateTo({
@@ -188,11 +262,31 @@
         }
       })
     } else {
-      // 濡傛灉鏄涓�娆$櫥褰曪紝浼氳烦杞嚦缁戝畾鐢ㄦ埛淇℃伅椤甸潰锛屽~鍐欏畬鐢ㄦ埛淇℃伅鍚庤繘琛岀櫥褰曞苟鍌ㄥ瓨token鍜岀敤鎴蜂俊鎭紝缁撴潫鍚庤烦杞洖褰撳墠椤甸潰锛堟惡甯﹂〉闈㈠弬鏁帮級
+      const selectedItems = this.data.shoppingCartData.filter(item => item.checked);
+      // console.log(selectedItems, 789);
+      const selectedIds = selectedItems.map(item => item.id);
+      console.log('閫変腑鐨勫晢鍝� id:', selectedIds);
+      if (selectedIds.length) {
+        let data = {
+          linkIds: selectedIds
+        }
+        app.MG.store.shoppingCartCreateOrder(data).then(res => {
+          console.log(res.saleMethodLinks[0].orderSaleMethod.id, 'ressss798');
+          const url = '/pages/cart/paymentPage/index?orderNumber=' + res.orderNumber + '&onNorderSaleMethod=' + res.saleMethodLinks[0].orderSaleMethod.id
+          wx.navigateTo({
+            url
+          });
+        })
+      } else {
+        Toast({
+          context: this,
+          selector: '#t-toast',
+          message: '璇烽�夋嫨鍟嗗搧',
+          theme: 'warning',
+          direction: 'column',
+        });
+      }
     }
-
-
-
 
 
 
@@ -202,8 +296,9 @@
       url: '/pages/testLogin/index'
     });
   },
-  //瑙﹀簳鍑芥暟
-  onReachBottom() {
+
+
+  onScrollToLower() {
     if (this.data.shoppingCartData.length < this.data.totalSize) {
       this.setData({
         isMore: true,
@@ -220,17 +315,44 @@
         })
         console.log('300');
       }, 300)
-
     }
   },
   // 涓嬫媺鍑芥暟
   onPullDownRefresh() {
-
     this.setData({
-      start: 1
+      start: 1,
+      checkAll: false,
+      selectedCount: 0,
+      totalPrice: 0.00,
     })
     console.log(978);
     this.shoppingCartGet()
   },
-
-});
+  async onBook(e) {
+    const item = e.currentTarget.dataset.item
+    console.log(item);
+    const type = item.productMonWithLinkDto.links[0].storeRefCode
+    let url = ''
+    if (type == 'jsek_digitalCourses') {
+      // 璇剧▼
+      url = '/pages/digitalCourses/digitalCoursesDetails/index?id=' + item.productMonWithLinkDto.product.id + '&path=' + ''
+    } else if (type == 'jsek_digitalTextbooks') {
+      // 鏁板瓧鏁欐潗
+      url = '/pages/digitalTextbooks/digitalTextbooksDetails/index?id=' + item.productMonWithLinkDto.product.id
+    } else {
+      let parentData = null;
+      parentData = await app.MG.store.getProductBySaleMethod({
+        'saleMethodId': item.saleMethod.id
+      })
+      console.log(parentData)
+      let bookId = item.productMonWithLinkDto.product.id;
+      if (parentData.parentProduct.length > 0) {
+        bookId = parentData.parentProduct[parentData.parentProduct.length - 1].id;
+      }
+      url = '/packageBookService/pages/bookServices/detail/index?id=' + bookId + '&name=' + item.productMonWithLinkDto.product.name
+    }
+    wx.navigateTo({
+      url
+    })
+  }
+});
\ No newline at end of file

--
Gitblit v1.9.1