@extends('admin.layouts.app') @section('title', '订阅详情') @section('page_title', '订阅详情') @section('content') @php // 统一构造平台订单跳转链接:避免手写拼接导致编码/漏字段问题 // 注意:这里使用相对路径,避免测试/不同 APP_URL 环境下生成绝对域名导致断言与展示不一致 // 同时:自动附带 back 参数,保证“从订阅详情跳到订单列表/治理后能回到订阅详情并保留上下文” $platformOrdersBaseUrl = '/admin/platform-orders'; // back 参数用于“返回上一页(保留上下文)”,但 back 本身不应再包含 back(避免无限嵌套导致 URL 膨胀) $currentQuery = request()->query(); unset($currentQuery['back']); $selfWithoutBack = '/' . ltrim(request()->path(), '/'); if (count($currentQuery) > 0) { $selfWithoutBack .= '?' . \Illuminate\Support\Arr::query($currentQuery); } $makePlatformOrderUrl = function (array $query) use ($platformOrdersBaseUrl, $selfWithoutBack) { // 若调用方显式传了 back,则不覆盖;否则默认回到当前订阅详情页(剔除 back,避免嵌套) $query = $query + ['back' => $selfWithoutBack]; return $platformOrdersBaseUrl . '?' . \Illuminate\Support\Arr::query($query); }; @endphp @php // 用于构建“保留当前上下文”的订阅列表跳转链接(从订阅详情跳回列表后可一键返回本订阅详情) $subscriptionShowSelf = '/' . ltrim(request()->path(), '/'); $subscriptionShowQuery = request()->query(); unset($subscriptionShowQuery['back']); if (count($subscriptionShowQuery) > 0) { $subscriptionShowSelf .= '?' . \Illuminate\Support\Arr::query($subscriptionShowQuery); } $makeSubscriptionIndexUrl = function (array $query) use ($subscriptionShowSelf) { $query = $query + ['back' => $subscriptionShowSelf]; return '/admin/site-subscriptions?' . \Illuminate\Support\Arr::query($query); }; @endphp
这里是总台视角的订阅详情页,用于运营排查“订阅状态/到期/关联平台订单/同步记录”。
| ID | 订单号 | 订单状态 | 支付状态 | 应付/已付 | 下单时间 | 生效时间 | 同步状态 | 同步时间 | 失败原因 | 操作 |
|---|---|---|---|---|---|---|---|---|---|---|
| {{ $order->id }} | @php $orderShowUrl = '/admin/platform-orders/' . $order->id . '?' . \Illuminate\Support\Arr::query(['back' => $selfWithoutBack]); @endphp{{ $order->order_no }} | {{ $order->status }} | {{ $order->payment_status }} | ¥{{ number_format((float) $order->payable_amount, 2) }} / ¥{{ number_format((float) $order->paid_amount, 2) }} | {{ optional($order->placed_at)->format('Y-m-d H:i:s') ?: '-' }} | {{ optional($order->activated_at)->format('Y-m-d H:i:s') ?: '-' }} | {{ $syncStatus }} | {{ data_get($order->meta, 'subscription_activation.synced_at') ?: '-' }} | @if($syncStatus === '同步失败') {{ mb_substr($syncErr, 0, 60) }} @else - @endif | 详情 |
| 暂无关联平台订单。 | ||||||||||