소스 검색

do not issue refunds for non-refundable payment types

tags/v0.1.8
Jonathan Cobb 5 년 전
부모
커밋
cfa9259c1b
2개의 변경된 파일6개의 추가작업 그리고 0개의 파일을 삭제
  1. +2
    -0
      bubble-server/src/main/java/bubble/model/bill/PaymentMethodType.java
  2. +4
    -0
      bubble-server/src/main/java/bubble/service/bill/StandardRefundService.java

+ 2
- 0
bubble-server/src/main/java/bubble/model/bill/PaymentMethodType.java 파일 보기

@@ -13,4 +13,6 @@ public enum PaymentMethodType {

@JsonCreator public static PaymentMethodType fromString(String v) { return enumFromString(PaymentMethodType.class, v); }

public boolean refundable() { return this == credit; }

}

+ 4
- 0
bubble-server/src/main/java/bubble/service/bill/StandardRefundService.java 파일 보기

@@ -40,6 +40,10 @@ public class StandardRefundService extends SimpleDaemon implements RefundService
for (AccountPlan accountPlan : pendingPlans) {
try {
final AccountPaymentMethod paymentMethod = paymentMethodDAO.findByUuid(accountPlan.getPaymentMethod());
if (!paymentMethod.getPaymentMethodType().refundable()) {
log.info("process: not issuing refund for plan "+accountPlan.getUuid()+" because paymentMethodType="+paymentMethod.getPaymentMethodType());
continue;
}
final CloudService paymentCloud = cloudDAO.findByUuid(paymentMethod.getCloud());
final PaymentServiceDriver paymentDriver = paymentCloud.getPaymentDriver(configuration);
paymentDriver.refund(accountPlan.getUuid());


불러오는 중...
취소
저장