fix(realname): ActivateByRealname 按 ExpiryBase 选择计时基准 REALNAME-04
- from_purchase:用 PackageUsage.CreatedAt(购买时刻)作为激活时间起点 - from_activation(默认):用实名被触发的当前时刻作为激活时间起点
This commit is contained in:
@@ -113,8 +113,14 @@ func (s *ActivationService) ActivateByRealname(ctx context.Context, carrierType
|
||||
}
|
||||
}
|
||||
|
||||
// 激活套餐
|
||||
activatedAt := now
|
||||
// REALNAME-04: 按 ExpiryBase 选择激活计时基准
|
||||
// from_purchase:购买时起算,用 PackageUsage 创建时间;否则用实名触发当前时刻
|
||||
var activatedAt time.Time
|
||||
if pkg.ExpiryBase == "from_purchase" {
|
||||
activatedAt = usage.CreatedAt
|
||||
} else {
|
||||
activatedAt = now
|
||||
}
|
||||
expiresAt := CalculateExpiryTime(pkg.CalendarType, activatedAt, pkg.DurationMonths, pkg.DurationDays)
|
||||
|
||||
// 计算下次重置时间
|
||||
|
||||
Reference in New Issue
Block a user