yiming
2024-04-02 312fd09aaf90c0e52ab61bde22d0edbf105baa5e
pages/cart/index.js
@@ -1,7 +1,13 @@
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';
Page({
  data: {
@@ -34,7 +40,11 @@
      })
    }
    this.shoppingCartGet();
    this.setData({ totalPrice: 0.00, selectedCount: 0, checkAll: false, })
    this.setData({
      totalPrice: 0.00,
      selectedCount: 0,
      checkAll: false,
    })
  },
@@ -44,7 +54,10 @@
      ids: [item.id]
    }).then(res => {
      this.shoppingCartGet();
      wx.showToast({ title: '删除图书成功', icon: 'none' });
      wx.showToast({
        title: '删除图书成功',
        icon: 'none'
      });
    });
  },
@@ -62,12 +75,16 @@
      })
      res.datas.forEach(item => {
        // console.log(item, 'item456');
        console.log(item, 'item456');
        item.imgUrl = getPublicImage(item.productMonWithLinkDto.product.icon, '', '160');
        this.setData({
          type: item.saleMethod.type == 'createProductItemSaleMethod' ? 'item' : 'product'
        })
        // this.setData({
        //   type: item.saleMethod.type == 'createProductItemSaleMethod' ? 'item' : 'product'
        // })
        const type = item.saleMethod.type == 'createProductItemSaleMethod' ? 'item' : 'product';
        item.type = type; // 将type设置为item对象的属性,而不是使用setData
        // debugger
      });
@@ -107,7 +124,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) {
@@ -139,33 +158,75 @@
      totalPrice: totalPrice.toFixed(2)
    });
  },
  goPaymentPage() {
    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, 456);
        const url = '/pages/cart/paymentPage/index?orderNumber=' + res.orderNumber
        wx.navigateTo({
          url
        });
    // 首页测试登录功能,后续注释
    // 检查登录状态
    const token = wx.getStorageSync(app.config.tokenKey)
    if (!token) {
      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);
          console.log('选中的商品 id:', selectedIds);
          if (selectedIds.length) {
            let data = {
              linkIds: selectedIds
            }
            app.MG.store.shoppingCartCreateOrder(data).then(res => {
              const url = '/pages/cart/paymentPage/index?orderNumber=' + res.orderNumber
              wx.navigateTo({
                url
              });
            })
          } else {
            Toast({
              context: this,
              selector: '#t-toast',
              message: '请选择商品',
              theme: 'warning',
              direction: 'column',
            });
          }
        } else {
          // 出现错误,返回false
        }
      })
    } else {
      Toast({
        context: this,
        selector: '#t-toast',
        message: '请选择商品',
        theme: 'warning',
        direction: 'column',
      });
      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 => {
          const url = '/pages/cart/paymentPage/index?orderNumber=' + res.orderNumber
          wx.navigateTo({
            url
          });
        })
      } else {
        Toast({
          context: this,
          selector: '#t-toast',
          message: '请选择商品',
          theme: 'warning',
          direction: 'column',
        });
      }
    }
  },
  onLogin() {
    wx.navigateTo({
@@ -188,7 +249,8 @@
        this.setData({
          isMore: false
        })
      }, 100)
        console.log('300');
      }, 300)
    }
  },
@@ -196,10 +258,13 @@
  onPullDownRefresh() {
    this.setData({
      start: 1
      start: 1,
      checkAll: false,
      selectedCount: 0,
      totalPrice: 0.00,
    })
    console.log(978);
    this.shoppingCartGet()
  },
});
});