// pages/order/confirmOrder/confirmOrder.js import { API } from "../../../service/api"; import {formatPrice} from "../../../utils/utils"; Page({ /** * 页面的初始数据 */ data: { prods:[], totalPrice:0, // 订单总金额 address:"" }, // 获取地址列表 getAddressList(){ API.getAddressList().then(res=>{ let address = res.userAddressList.filter(item=>item.defaultFlag === "1"); if(address.length === 0){ address = res.userAddressList[0]; }else{ address = address[0]; } this.setData({ address }) }) }, // 去地址管理页面 goAddressMange(){ wx.navigateTo({ url: '/pages/my/addressManage/addressManage', }) }, // 确认订单 submitOrder(){ let data = { orderItemDTOS:this.data.orderItemDTOS, userAddressId:this.data.address.userAddressId } API.createOrder(data).then(res=>{ this.requestPayment(res.orderPaySignDTO); }) }, // 拉起微信支付 requestPayment(paymentParams) { wx.requestPayment({ timeStamp: paymentParams.timeStamp, nonceStr: paymentParams.nonceStr, package: paymentParams.prepayId, signType: "MD5", paySign: paymentParams.wxpaySign, success(res) { console.log('支付成功', res); wx.showToast({ title: '支付成功' }); // 跳转到订单详情或返回 }, fail(err) { console.error('支付失败', err); wx.showToast({ title: '支付取消', icon: 'none' }); } }); }, /** * 生命周期函数--监听页面加载 */ onLoad(options) { let list = JSON.parse(decodeURIComponent(options.prods)); let total = 0; let orderItemDTOS = []; list.forEach(item=>{ total += item.quantity*item.price; orderItemDTOS.push({ cartsId:item.cartsId, mercId:item.mercId || item.mercProdId, prodId:item.id, prodAttrId:item.prodAttrId, count:item.quantity }) }) this.setData({ prods:list, totalPrice:formatPrice(total), orderItemDTOS }) }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady() { }, /** * 生命周期函数--监听页面显示 */ onShow() { this.getAddressList(); }, /** * 生命周期函数--监听页面隐藏 */ onHide() { }, /** * 生命周期函数--监听页面卸载 */ onUnload() { }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh() { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom() { }, /** * 用户点击右上角分享 */ onShareAppMessage() { } })