Expiry governance: nudge renewal requires subscription context

This commit is contained in:
萝卜
2026-03-15 02:23:19 +00:00
parent e66ac765e0
commit 41463407aa
4 changed files with 82 additions and 0 deletions

View File

@@ -31,6 +31,7 @@ class PlatformOrderController extends Controller
// 支持从其它页面(例如订阅详情)带默认值跳转过来,提高运营效率
$orderTypeFromQuery = $request->query('order_type');
$requireSubscription = (string) $request->query('require_subscription', '') === '1';
$defaults = [
'merchant_id' => (int) $request->query('merchant_id', 0),
@@ -59,6 +60,11 @@ class PlatformOrderController extends Controller
$siteSubscription = SiteSubscription::query()->with(['merchant', 'plan'])->find($siteSubscriptionId);
}
// 治理口径当来源页要求“续费必须绑定订阅”时若未带订阅ID则强制回退为新购避免误导。
if ($requireSubscription && $siteSubscriptionId <= 0) {
$defaults['order_type'] = 'new_purchase';
}
// 续费下单场景:若带了 site_subscription_id但未显式指定 merchant/plan则从订阅上补齐默认值。
// 目的:让“从订阅维度跳转到下单页”的链路更稳,不必每次手工二次选择。
if ($siteSubscription) {