From 8000d61f1b7ecb642bb2af6ceec5d5c9a6b39881 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Thu, 16 Jun 2022 18:14:36 +0800
Subject: [PATCH] fix refund amount
---
src/main/java/cc/mrbird/febs/mall/vo/OrderRefundVo.java | 6 ++++++
src/main/java/cc/mrbird/febs/mall/entity/MallOrderRefund.java | 3 +++
src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java | 4 ++--
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java | 7 +++++++
4 files changed, 18 insertions(+), 2 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/entity/MallOrderRefund.java b/src/main/java/cc/mrbird/febs/mall/entity/MallOrderRefund.java
index 0989a1f..9c0d1ff 100644
--- a/src/main/java/cc/mrbird/febs/mall/entity/MallOrderRefund.java
+++ b/src/main/java/cc/mrbird/febs/mall/entity/MallOrderRefund.java
@@ -4,6 +4,7 @@
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
+import java.math.BigDecimal;
import java.util.Date;
/**
@@ -50,4 +51,6 @@
private String phone;
private String address;
+
+ private BigDecimal amount;
}
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java
index d3e7563..62111f4 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java
@@ -155,7 +155,7 @@
mallOrderInfoMapper.updateById(mallOrderInfo);
if(!"微信支付".equals(mallOrderInfo.getPayMethod()) && !"支付宝支付".equals(mallOrderInfo.getPayMethod())){
- BigDecimal amount = mallOrderInfo.getAmount().add(mallOrderInfo.getCarriage());
+ BigDecimal amount = mallOrderRefund.getAmount();
//用户钱包增加对应的余额
iApiMallMemberWalletService.addBalance(amount, mallOrderInfo.getMemberId());
@@ -223,7 +223,7 @@
mallOrderInfo.setStatus(6);
mallOrderInfoMapper.updateById(mallOrderInfo);
- BigDecimal refundAmount = mallOrderInfo.getAmount();
+ BigDecimal refundAmount = mallOrderRefund.getAmount();
//用户钱包增加对应的余额
iApiMallMemberWalletService.addBalance(refundAmount, mallOrderInfo.getMemberId());
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
index 6cd4738..6b4d1a8 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
@@ -413,6 +413,13 @@
MallOrderRefund orderRefund = mallOrderRefundMapper.selectOrderRefundByOrderId(orderInfo.getId());
if (orderRefund == null) {
+ // 未发货则退运费,发货了则不退
+ if (orderInfo.getStatus() == 2) {
+ orderRefund.setAmount(orderInfo.getAmount().add(orderInfo.getCarriage()));
+ } else {
+ orderRefund.setAmount(orderInfo.getAmount());
+ }
+
orderRefund = new MallOrderRefund();
orderRefund.setOrderId(orderInfo.getId());
orderRefund.setMemberId(member.getId());
diff --git a/src/main/java/cc/mrbird/febs/mall/vo/OrderRefundVo.java b/src/main/java/cc/mrbird/febs/mall/vo/OrderRefundVo.java
index e2eb562..ad1a93f 100644
--- a/src/main/java/cc/mrbird/febs/mall/vo/OrderRefundVo.java
+++ b/src/main/java/cc/mrbird/febs/mall/vo/OrderRefundVo.java
@@ -48,4 +48,10 @@
@ApiModelProperty(value = "收货地址")
private String address;
+
+ @ApiModelProperty(value = "退款前状态")
+ private Integer beforeStatus;
+
+ @ApiModelProperty(value = "退款金额")
+ private Integer amount;
}
--
Gitblit v1.9.1