Java的Braintree:检查订阅是否有效并已付费。

时间:2018-07-31 07:40:25

标签: java payment-gateway braintree

我正在致力于将Braintree支付集成到基于Spring-MVC的应用程序中。我们的应用程序中有订阅,按月收费,除非用户取消。但是,在某些情况下,下一个结算周期可能无法付款,因此我们想取消所提供的服务。

我采用的方法是获取当前处于活动状态的所有订阅的列表,并跟踪其状态。基于此,我们要么让该服务存在,要么运行取消代码。 这种方法足以满足下面提到的方法吗?

代码:

 @Override
    @Scheduled(cron = "0 4 5 * * ?")
    public void checkIfSubscriptionIsActive() {
        List<Payment> paymentList = this.paymentDAO.getAllPayments();
        for(Payment payment : paymentList){
            Subscription subscription = gateway.subscription().find(payment.getPaypalId());
            if(subscription!=null){
                Subscription.Status status = subscription.getStatus();
                if(status!=null){
                    if(status.toString().equals("Canceled")||(status.toString().equals("Expired"))||
                            (status.toString().equals("Past Due"))||(status.toString().equals("Pending"))||
                            (status.toString().equals("Unrecognized"))){
                        //Cancel service code
                    }
                }
            }
        }
    }

0 个答案:

没有答案