TRX 1 vuosi sitten
vanhempi
commit
41a0e34dd8

+ 3 - 0
FullCardServer/src/main/java/com/zhongshu/card/server/core/domain/payment/ExpenseFlow.java

@@ -216,6 +216,9 @@ public class ExpenseFlow extends SuperMain {
     @Schema(description = "退款处理备注")
     private String refuseRemark;
 
+    @Schema(description = "退款订单号")
+    private String refundNo;
+
     @Schema(description = "退款账单流量")
     private List<String> refundTransactionIds = new ArrayList<String>();
 

+ 3 - 2
FullCardServer/src/main/java/com/zhongshu/card/server/core/service/payment/ExpenseFlowServiceImpl.java

@@ -199,6 +199,7 @@ public class ExpenseFlowServiceImpl extends SuperService implements ExpenseFlowS
         if (entity.getMode() != null) {
             if (entity.getMode() == 0) {
                 entity.setOrderModeType(OrderModeType.Consume);
+                // 支付
                 payCallService.pay(entity);
                 expenseFlowDao.save(entity);
             } else if (entity.getMode() == 2) {
@@ -760,8 +761,8 @@ public class ExpenseFlowServiceImpl extends SuperService implements ExpenseFlowS
         if (ObjectUtils.isEmpty(expenseFlow)) {
             return ResultContent.buildSuccess(String.format(ResultMessage.DATA_NOT_EXIST, param.getId()));
         }
-        if (expenseFlow.getOrderType() == OrderState.HAVE_PAID) {
-            return ResultContent.buildFail(String.format("订单状态不是已支付状态,不能退款"));
+        if (expenseFlow.getOrderType() != OrderState.HAVE_PAID) {
+            return ResultContent.buildFail(String.format("未支付成功,不能退款"));
         }
         ResultContent resultContent = payCallService.refund(expenseFlow, param);
         if (resultContent.isFailed()) {

+ 5 - 1
FullCardServer/src/main/java/com/zhongshu/card/server/core/service/payment/PayCallService.java

@@ -15,6 +15,7 @@ import com.zhongshu.card.server.core.domain.payment.ExpenseFlow;
 import com.zhongshu.card.server.core.service.base.SuperService;
 import com.zhongshu.card.server.core.service.pay.BalancePayService;
 import com.zhongshu.card.server.core.service.user.OperationLogsService;
+import com.zhongshu.card.server.core.util.NextNoUtil;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.ObjectUtils;
 import org.apache.commons.lang3.StringUtils;
@@ -160,6 +161,7 @@ public class PayCallService extends SuperService {
                 entity.setRefundState(RefundState.Refunded);
                 entity.setRefuseRemark("退款成功");
                 expenseFlowDao.save(entity);
+                return ResultContent.buildSuccess();
             } else {
                 return ResultContent.buildFail(resultContent.getMsg());
             }
@@ -174,9 +176,11 @@ public class PayCallService extends SuperService {
      * @return
      */
     public ResultContent<List<TransactionLogModel>> walletRefund(ExpenseFlow entity, ExpenseRefundParam param) {
+        String refundNo = NextNoUtil.getNextPaymentNo(null);
+        entity.setRefundNo(refundNo);
         com.github.microservice.pay.client.ret.ResultContent<List<TransactionLogModel>> resultContent = balancePayService.refund(
                 entity.getProjectOid(), entity.getShopOid(), entity.getUserId(),
-                entity.getPaymentNo(), entity.getPayAmount(), param.getRemark());
+                refundNo, entity.getPayAmount(), param.getRemark());
         if (resultContent.getState() == ResultState.Success) {
             return ResultContent.buildSuccess(resultContent.getContent());
         } else {