mirror of
https://gitee.com/hhyykk/ipms-sjy.git
synced 2025-08-08 07:11:53 +08:00
promotion:优化价格计算的接口,增加 orderPrice 字段
This commit is contained in:
@@ -36,7 +36,8 @@ public interface PriceConvert {
|
||||
orderItem.setPayPrice(orderItem.getOriginalPrice()).setOrderDividePrice(orderItem.getOriginalPrice());
|
||||
priceCalculate.getOrder().getItems().add(orderItem);
|
||||
// 补充价格信息到 Order 中
|
||||
order.setOriginalPrice(order.getOriginalPrice() + orderItem.getOriginalPrice()).setPayPrice(order.getOriginalPrice());
|
||||
order.setOriginalPrice(order.getOriginalPrice() + orderItem.getOriginalPrice())
|
||||
.setOrderPrice(order.getOriginalPrice()).setPayPrice(order.getOriginalPrice());
|
||||
});
|
||||
return priceCalculate;
|
||||
}
|
||||
|
@@ -420,13 +420,16 @@ public class PriceServiceImpl implements PriceService {
|
||||
*/
|
||||
private void modifyOrderItemPayPrice(PriceCalculateRespDTO.OrderItem orderItem, Integer newPayPrice,
|
||||
PriceCalculateRespDTO priceCalculate) {
|
||||
// diffPayPrice 等于额外增加的商品级的优惠
|
||||
int diffPayPrice = orderItem.getPayPrice() - newPayPrice;
|
||||
// 设置 OrderItem 价格相关字段
|
||||
orderItem.setDiscountPrice(orderItem.getDiscountPrice() + diffPayPrice);
|
||||
orderItem.setPayPrice(newPayPrice);
|
||||
orderItem.setOrderDividePrice(orderItem.getPayPrice() - orderItem.getOrderPartPrice());
|
||||
// 设置 Order 相关相关字段
|
||||
priceCalculate.getOrder().setPayPrice(priceCalculate.getOrder().getPayPrice() - diffPayPrice);
|
||||
PriceCalculateRespDTO.Order order = priceCalculate.getOrder();
|
||||
order.setPayPrice(order.getPayPrice() - diffPayPrice);
|
||||
order.setOrderPrice(order.getOrderPrice() - diffPayPrice);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@@ -64,6 +64,7 @@ public class PriceServiceTest extends BaseMockitoUnitTest {
|
||||
// 断言 Order 部分
|
||||
PriceCalculateRespDTO.Order order = priceCalculate.getOrder();
|
||||
assertEquals(order.getOriginalPrice(), 200);
|
||||
assertEquals(order.getOrderPrice(), 180);
|
||||
assertEquals(order.getDiscountPrice(), 0);
|
||||
assertEquals(order.getPointPrice(), 0);
|
||||
assertEquals(order.getDeliveryPrice(), 0);
|
||||
@@ -126,6 +127,7 @@ public class PriceServiceTest extends BaseMockitoUnitTest {
|
||||
// 断言 Order 部分
|
||||
PriceCalculateRespDTO.Order order = priceCalculate.getOrder();
|
||||
assertEquals(order.getOriginalPrice(), 350);
|
||||
assertEquals(order.getOrderPrice(), 210);
|
||||
assertEquals(order.getDiscountPrice(), 0);
|
||||
assertEquals(order.getPointPrice(), 0);
|
||||
assertEquals(order.getDeliveryPrice(), 0);
|
||||
@@ -217,6 +219,7 @@ public class PriceServiceTest extends BaseMockitoUnitTest {
|
||||
// 断言 Order 部分
|
||||
PriceCalculateRespDTO.Order order = priceCalculate.getOrder();
|
||||
assertEquals(order.getOriginalPrice(), 470);
|
||||
assertEquals(order.getOrderPrice(), 470);
|
||||
assertEquals(order.getDiscountPrice(), 130);
|
||||
assertEquals(order.getPointPrice(), 0);
|
||||
assertEquals(order.getDeliveryPrice(), 0);
|
||||
@@ -314,6 +317,7 @@ public class PriceServiceTest extends BaseMockitoUnitTest {
|
||||
// 断言 Order 部分
|
||||
PriceCalculateRespDTO.Order order = priceCalculate.getOrder();
|
||||
assertEquals(order.getOriginalPrice(), 350);
|
||||
assertEquals(order.getOrderPrice(), 350);
|
||||
assertEquals(order.getDiscountPrice(), 0);
|
||||
assertEquals(order.getPointPrice(), 0);
|
||||
assertEquals(order.getDeliveryPrice(), 0);
|
||||
@@ -386,6 +390,7 @@ public class PriceServiceTest extends BaseMockitoUnitTest {
|
||||
// 断言 Order 部分
|
||||
PriceCalculateRespDTO.Order order = priceCalculate.getOrder();
|
||||
assertEquals(order.getOriginalPrice(), 470);
|
||||
assertEquals(order.getOrderPrice(), 470);
|
||||
assertEquals(order.getDiscountPrice(), 0);
|
||||
assertEquals(order.getPointPrice(), 0);
|
||||
assertEquals(order.getDeliveryPrice(), 0);
|
||||
|
Reference in New Issue
Block a user