feat(admin): rebuild the payment center overview with ECharts analytics
- Overview page: realtime today vs. same time yesterday, 6 KPI cards with period-over-period deltas, trend (paid / net / refund curves + order count line), category curves, payment method donut, top 10 paid content, conversion / close / refund rates, todos and shortcuts - Date presets, custom range and category filter via GET aksrt/v1/admin/pay-overview (manage_options + wp_rest nonce) - Metrics: paid amount by paid date including later-refunded orders, refunds by refund date, net = paid - refund; CNY only, points and recharge excluded, foreign-currency orders listed separately; integer cents internally - Daily records cached per month in transients (today/yesterday live), invalidated on order status change and on purge - ECharts 6.1.0 subset bundled to assets/js/runtime/libs/echarts-pay.min.js (npm run build:pay-charts), loaded only on the overview page - Split payment-attempt methods out of OrderRepositoryCore into OrderRepositoryAttempts; remove dead get_stats(), cash_decimal(), Order::get_stats() and the old .aksrt-native-links styles Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
d98f8d7975
commit
9805a371d8
19 files changed
+2203
-405
No files matched your search
@@ -227,6 +227,10 @@ if (class_exists('AKSRT\\Payment\\CommissionLedger')) {
|
||||
if (class_exists('AKSRT\\Payment\\InviteCode')) {
|
||||
\AKSRT\Payment\InviteCode::get_instance()->init();
|
||||
}
|
||||
// 支付中心统计的按天缓存:订单状态变化 / 删除时失效(需前后台都挂载,回调不走后台)
|
||||
if (class_exists('AKSRT\\Payment\\OrderAnalyticsDaily')) {
|
||||
\AKSRT\Payment\OrderAnalyticsDaily::get_instance()->init();
|
||||
}
|
||||
if (class_exists('\AKSRT\Content\Pay')) {
|
||||
\AKSRT\Content\Pay::get_instance()->init();
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user