提交 6fdec474 authored 作者: YunaiV's avatar YunaiV

前端:商品订单价格修复

上级 8e38bf00
......@@ -72,7 +72,7 @@ const OrderContent = props => {
};
const renderGoods = orderItems => {
return orderItems.map(({ skuName, skuImage, quantity, price }) => {
return orderItems.map(({ skuName, skuImage, quantity, presentPrice, presentTotal }) => {
return (
<div key={skuName} className={styles.orderGoods}>
<img alt={skuName} className={`${styles.image}`} src={skuImage} />
......@@ -84,7 +84,7 @@ const OrderContent = props => {
<div className={styles.contentItem}>
<div>{quantity}</div>
<div>
{price / 100} /{quantity * (price / 100)}
{presentPrice / 100.0} /{presentTotal / 100.0}
</div>
</div>
</div>
......@@ -114,7 +114,7 @@ const OrderContent = props => {
</div>
<div className={styles.contentItem}>
<div className={styles.columnName}>(实付金额)</div>
<div>{payAmount / 100}</div>
<div>{item.presentPrice / 100}</div>
<div>
{status === 1 ? <a onClick={() => handleUpdatePayAmount(props)}>修改价格</a> : ''}
</div>
......
......@@ -190,14 +190,6 @@ const routes = [
requireAuth: true,
}
},
{
path: '/order/success',
component: () => import('../page/shipping/order-success'),
meta: {
title: '确认订单',
requireAuth: true,
}
},
{
name: 'category',
component: () => import('../page/category/index'),
......
......@@ -19,8 +19,10 @@
<div style="margin: 10px;">
<van-button size="large" type="primary" style="height: 45px;line-height:45px;" @click="submit">登录</van-button>
</div>
<div>1. 新注册的手机号验证后自动创建账户</div>
<div>2. 默认验证码是 9999</div>
<van-panel title="友情提示">
<van-cell>1. 新注册的手机号验证后自动创建账户</van-cell>
<van-cell>2. 默认验证码是 9999</van-cell>
</van-panel>
</div>
</div>
</div>
......
<template>
<div class="order-success">
<headerNav title="提交成功"/>
<sapn>TODO 支付成功</sapn>
<router-link :to="'/user/order'">
<van-button size="small" type="danger">订单列表</van-button>
</router-link>
</div>
</template>
<script>
import {createOrder} from '../../api/order';
export default {
data() {
return {
}
},
methods: {
},
activated() {
},
};
</script>
<style lang="less">
.order-success {
text-align: center;
}
</style>
......@@ -177,24 +177,26 @@
}).then(result => {
if (result) {
// const { orderNo } = result;
this.$router.push({ //核心语句
path:`/order/success`, //跳转的路径
query:{ //路由传参时push和query搭配使用 ,作用时传递参数
...result,
}
});
// this.$router.push({ //核心语句
// path:`/order/success`, //跳转的路径
// query:{ //路由传参时push和query搭配使用 ,作用时传递参数
// ...result,
// }
// });
this.$router.push('/pay?appId=POd4RC6a&orderId=' + result.id + '&returnUrl=' + encodeURI('/user/order/info/' + result.id));
}
});
} else if (this.from === 'cart') {
createOrderFromCart(userAddressId, couponCardId, remark).then(result => {
if (result) {
// const { orderNo } = result;
this.$router.push({ //核心语句
path:`/order/success`, //跳转的路径
query:{ //路由传参时push和query搭配使用 ,作用时传递参数
...result,
}
});
// this.$router.push({ //核心语句
// path:`/order/success`, //跳转的路径
// query:{ //路由传参时push和query搭配使用 ,作用时传递参数
// ...result,
// }
// });
this.$router.push('/pay?appId=POd4RC6a&orderId=' + result.id + '&returnUrl=' + encodeURI('/user/order/info/' + result.id));
}
});
}
......
......@@ -45,13 +45,36 @@ public class OrderItemBO implements Serializable {
*/
private Integer quantity;
/**
* 价格(分)
* 原始单价,单位:分。
*/
private Integer price;
private Integer originPrice;
/**
* 支付金额(实付金额)
* 购买单价,单位:分
*/
private Integer payAmount;
private Integer buyPrice;
/**
* 最终价格,单位:分。
*/
private Integer presentPrice;
/**
* 购买总金额,单位:分
*
* 用途类似 {@link #presentTotal}
*/
private Integer buyTotal;
/**
* 优惠总金额,单位:分。
*/
private Integer discountTotal;
/**
* 最终总金额,单位:分。
*
* 注意,presentPrice * quantity 不一定等于 presentTotal 。
* 因为,存在无法整除的情况。
* 举个例子,presentPrice = 8.33 ,quantity = 3 的情况,presentTotal 有可能是 24.99 ,也可能是 25 。
* 所以,需要存储一个该字段。
*/
private Integer presentTotal;
///
/// 时间信息
......
......@@ -343,8 +343,8 @@ public class OrderServiceImpl implements OrderService {
.setUserId(orderCreateDTO.getUserId())
.setItems(new ArrayList<>(skus.size()))
.setCouponCardId(orderCreateDTO.getCouponCardId());
for (ProductSkuDetailBO item : skus) {
calcOrderPriceDTO.getItems().add(new CalcOrderPriceDTO.Item(item.getId(), item.getQuantity(), true));
for (OrderCreateItemDTO item : orderCreateDTO.getOrderItems()) {
calcOrderPriceDTO.getItems().add(new CalcOrderPriceDTO.Item(item.getSkuId(), item.getQuantity(), true));
}
// 执行计算
return cartService.calcOrderPrice(calcOrderPriceDTO);
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论