|
|
@@ -97,20 +97,38 @@ export default function OrderSubmitPage() {
|
|
|
|
|
|
// 页面加载时获取订单数据
|
|
|
useEffect(() => {
|
|
|
- // 从购物车获取数据
|
|
|
- const checkoutData = Taro.getStorageSync('checkoutItems')
|
|
|
- const cartData = Taro.getStorageSync('mini_cart')
|
|
|
-
|
|
|
- if (checkoutData && checkoutData.items) {
|
|
|
- setOrderItems(checkoutData.items)
|
|
|
- setTotalAmount(checkoutData.totalAmount)
|
|
|
- } else if (cartData && cartData.items) {
|
|
|
- // 使用购物车数据
|
|
|
- const items = cartData.items
|
|
|
- const total = items.reduce((sum: number, item: CheckoutItem) =>
|
|
|
- sum + (item.price * item.quantity), 0)
|
|
|
- setOrderItems(items)
|
|
|
- setTotalAmount(total)
|
|
|
+ // 从立即购买获取数据
|
|
|
+ const buyNowData = Taro.getStorageSync('buyNow')
|
|
|
+
|
|
|
+ if (buyNowData && buyNowData.goods) {
|
|
|
+ // 使用立即购买的商品数据
|
|
|
+ const goods = buyNowData.goods
|
|
|
+ setOrderItems([{
|
|
|
+ id: goods.id,
|
|
|
+ name: goods.name,
|
|
|
+ price: goods.price,
|
|
|
+ image: goods.image,
|
|
|
+ quantity: goods.quantity
|
|
|
+ }])
|
|
|
+ setTotalAmount(buyNowData.totalAmount)
|
|
|
+ // 清除立即购买数据,避免下次进入时重复使用
|
|
|
+ Taro.removeStorageSync('buyNow')
|
|
|
+ } else {
|
|
|
+ // 从购物车获取数据
|
|
|
+ const checkoutData = Taro.getStorageSync('checkoutItems')
|
|
|
+ const cartData = Taro.getStorageSync('mini_cart')
|
|
|
+
|
|
|
+ if (checkoutData && checkoutData.items) {
|
|
|
+ setOrderItems(checkoutData.items)
|
|
|
+ setTotalAmount(checkoutData.totalAmount)
|
|
|
+ } else if (cartData && cartData.items) {
|
|
|
+ // 使用购物车数据
|
|
|
+ const items = cartData.items
|
|
|
+ const total = items.reduce((sum: number, item: CheckoutItem) =>
|
|
|
+ sum + (item.price * item.quantity), 0)
|
|
|
+ setOrderItems(items)
|
|
|
+ setTotalAmount(total)
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
// 设置默认地址
|