BUGFIX: 返回最新的订阅号
This commit is contained in:
@@ -1012,7 +1012,7 @@ public class SendEmailUtil {
|
|||||||
template.setTemplateID(CREDITS_PURCHASE_MERCHANT);
|
template.setTemplateID(CREDITS_PURCHASE_MERCHANT);
|
||||||
JSONObject jsonObject = new JSONObject();
|
JSONObject jsonObject = new JSONObject();
|
||||||
// 设置试用订单相关数据
|
// 设置试用订单相关数据
|
||||||
jsonObject.put("userName", username);
|
jsonObject.put("username", username);
|
||||||
jsonObject.put("quantity", quantity);
|
jsonObject.put("quantity", quantity);
|
||||||
jsonObject.put("totalFee", amount);
|
jsonObject.put("totalFee", amount);
|
||||||
|
|
||||||
|
|||||||
@@ -515,7 +515,7 @@ public class StripeServiceImpl implements StripeService {
|
|||||||
|
|
||||||
public SubscriptionInfo getLatestSubscriptionInfoByAccountId(Long accountId){
|
public SubscriptionInfo getLatestSubscriptionInfoByAccountId(Long accountId){
|
||||||
QueryWrapper<SubscriptionInfo> qw = new QueryWrapper<>();
|
QueryWrapper<SubscriptionInfo> qw = new QueryWrapper<>();
|
||||||
qw.eq("account_id", accountId);
|
qw.eq("account_id", accountId).orderByDesc("id");
|
||||||
List<SubscriptionInfo> subscriptionInfos = subscriptionInfoMapper.selectList(qw);
|
List<SubscriptionInfo> subscriptionInfos = subscriptionInfoMapper.selectList(qw);
|
||||||
if (subscriptionInfos.isEmpty()){
|
if (subscriptionInfos.isEmpty()){
|
||||||
return null;
|
return null;
|
||||||
@@ -541,13 +541,11 @@ public class StripeServiceImpl implements StripeService {
|
|||||||
if (!subscriptionInfo.getCurrentPeriodEnd().equals(subscription.getCurrentPeriodEnd())){
|
if (!subscriptionInfo.getCurrentPeriodEnd().equals(subscription.getCurrentPeriodEnd())){
|
||||||
subscriptionInfo.setCurrentPeriodEnd(subscription.getCurrentPeriodEnd());
|
subscriptionInfo.setCurrentPeriodEnd(subscription.getCurrentPeriodEnd());
|
||||||
subscriptionInfo.setNextPayDate(DateUtil.changeTimeStampFormat(subscription.getCurrentPeriodEnd(), "seconds", CommonConstant.TIME_FORMAT_MMM_dd_yyyy_EEEE));
|
subscriptionInfo.setNextPayDate(DateUtil.changeTimeStampFormat(subscription.getCurrentPeriodEnd(), "seconds", CommonConstant.TIME_FORMAT_MMM_dd_yyyy_EEEE));
|
||||||
if (subscription.getStatus().equals("active")){
|
|
||||||
// 更新账号到期时间
|
// 更新账号到期时间
|
||||||
accountService.updateAccountValidity(subscriptionInfo.getAccountId(), subscriptionInfo.getCurrentPeriodEnd());
|
accountService.updateAccountValidity(subscriptionInfo.getAccountId(), subscriptionInfo.getCurrentPeriodEnd());
|
||||||
// 更新账号身份和积分
|
// 更新账号身份和积分
|
||||||
accountService.updateUserRoleAndCredits(subscriptionInfo.getAccountId(), subscriptionInfo.getType());
|
accountService.updateUserRoleAndCredits(subscriptionInfo.getAccountId(), subscriptionInfo.getType());
|
||||||
log.info("更新 {} 账号到期时间为:{}", subscriptionInfo.getAccountId(), DateUtil.changeTimeStampFormat(subscriptionInfo.getCurrentPeriodEnd(), "seconds", CommonConstant.TIME_FORMAT_MMM_dd_yyyy_EEEE));
|
log.info("更新 {} 账号到期时间为:{}", subscriptionInfo.getAccountId(), DateUtil.changeTimeStampFormat(subscriptionInfo.getCurrentPeriodEnd(), "seconds", CommonConstant.TIME_FORMAT_MMM_dd_yyyy_EEEE));
|
||||||
}
|
|
||||||
flag = true;
|
flag = true;
|
||||||
}
|
}
|
||||||
if (flag){
|
if (flag){
|
||||||
@@ -560,8 +558,8 @@ public class StripeServiceImpl implements StripeService {
|
|||||||
// 取消连续订阅 将订阅从pause状态转为cancel状态(使用定时器,定期检索DB中,过期且不续订的订阅)
|
// 取消连续订阅 将订阅从pause状态转为cancel状态(使用定时器,定期检索DB中,过期且不续订的订阅)
|
||||||
public void cancelSubscription(String subscriptionId, String cancelReason) {
|
public void cancelSubscription(String subscriptionId, String cancelReason) {
|
||||||
Stripe.apiKey = privateKey;
|
Stripe.apiKey = privateKey;
|
||||||
|
log.info("cancel subscription");
|
||||||
Long accountId = UserContext.getUserHolder().getId();
|
Long accountId = UserContext.getUserHolder().getId();
|
||||||
log.info("用户 {} 申请取消连续订阅 {}", accountId, subscriptionId);
|
|
||||||
com.ai.da.mapper.primary.entity.Account account = accountMapper.selectById(accountId);
|
com.ai.da.mapper.primary.entity.Account account = accountMapper.selectById(accountId);
|
||||||
List<Subscription> subscriptions = getSubscription(account.getUserName(), account.getUserEmail());
|
List<Subscription> subscriptions = getSubscription(account.getUserName(), account.getUserEmail());
|
||||||
// 获取status = active的订阅
|
// 获取status = active的订阅
|
||||||
@@ -570,7 +568,7 @@ public class StripeServiceImpl implements StripeService {
|
|||||||
try {
|
try {
|
||||||
Subscription cancel = subscription.cancel();
|
Subscription cancel = subscription.cancel();
|
||||||
cancel.getStatus();
|
cancel.getStatus();
|
||||||
|
log.info("用户 {} 申请取消连续订阅 {}", accountId, subscriptionId);
|
||||||
// 更新数据库
|
// 更新数据库
|
||||||
updateCancelReason(subscriptionId, cancelReason);
|
updateCancelReason(subscriptionId, cancelReason);
|
||||||
} catch (StripeException e) {
|
} catch (StripeException e) {
|
||||||
|
|||||||
Reference in New Issue
Block a user