stripe 一次订阅 bug修复

This commit is contained in:
2025-02-18 15:00:57 +08:00
parent 11ffa66851
commit a940863799

View File

@@ -39,7 +39,7 @@ import java.math.RoundingMode;
import java.time.Instant; import java.time.Instant;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.time.ZoneOffset; import java.time.ZoneOffset;
import java.time.temporal.ChronoUnit; import java.time.ZonedDateTime;
import java.util.*; import java.util.*;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@@ -557,17 +557,20 @@ public class StripeServiceImpl implements StripeService {
&& amount.equals(ProductEnum.DailySubscription.getPrice() * 100)){ && amount.equals(ProductEnum.DailySubscription.getPrice() * 100)){
interval = "day"; interval = "day";
// 获取一天后的时间戳(秒级) // 获取一天后的时间戳(秒级)
currentPeriodEnd = Instant.now().plus(1, ChronoUnit.DAYS).getEpochSecond(); ZonedDateTime now = ZonedDateTime.now();
currentPeriodEnd = now.plusDays(1).toEpochSecond();
}else if (description.equals(ProductEnum.MonthlySubscription.getName()) }else if (description.equals(ProductEnum.MonthlySubscription.getName())
&& amount.equals(ProductEnum.MonthlySubscription.getPrice() * 100)){ && amount.equals(ProductEnum.MonthlySubscription.getPrice() * 100)){
interval = "month"; interval = "month";
// 获取一天后的时间戳(秒级) // 获取一天后的时间戳(秒级)
currentPeriodEnd = Instant.now().plus(1, ChronoUnit.MONTHS).getEpochSecond(); ZonedDateTime now = ZonedDateTime.now();
currentPeriodEnd = now.plusMonths(1).toEpochSecond();
}else if (description.equals(ProductEnum.AnnualSubscription.getName()) }else if (description.equals(ProductEnum.AnnualSubscription.getName())
&& amount.equals(ProductEnum.AnnualSubscription.getPrice() * 100)){ && amount.equals(ProductEnum.AnnualSubscription.getPrice() * 100)){
interval = "year"; interval = "year";
// 获取一天后的时间戳(秒级) // 获取一天后的时间戳(秒级)
currentPeriodEnd = Instant.now().plus(1, ChronoUnit.YEARS).getEpochSecond(); ZonedDateTime now = ZonedDateTime.now();
currentPeriodEnd = now.plusYears(1).toEpochSecond();
}else { }else {
log.error("未知订阅类型"); log.error("未知订阅类型");
return false; return false;
@@ -956,7 +959,7 @@ public class StripeServiceImpl implements StripeService {
qwSI.eq("order_no", orderNo); qwSI.eq("order_no", orderNo);
subscriptionInfo = subscriptionInfoMapper.selectOne(qwSI); subscriptionInfo = subscriptionInfoMapper.selectOne(qwSI);
if (Objects.isNull(subscriptionInfo)){ if (Objects.isNull(subscriptionInfo)){
log.info("根据order_no{}查询到的subscriptionInfo为空", orderNo); log.info("不发送邮件,原因:【根据order_no{}查询到的subscriptionInfo为空", orderNo);
return false; return false;
} }
}else { }else {