- 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>
33 lines
830 B
JavaScript
33 lines
830 B
JavaScript
/**
|
|
* 支付中心概览专用的 ECharts 按需入口(由 tools/build-pay-charts.mjs 打包)。
|
|
*
|
|
* 只注册概览页用到的图表与组件,打包为 IIFE 并挂到 window.echarts。
|
|
* 产物:assets/js/runtime/libs/echarts-pay.min.js(入库,后台只在 aksrt_pay 页入队)。
|
|
*/
|
|
import * as echarts from 'echarts/core';
|
|
import { LineChart, BarChart, PieChart } from 'echarts/charts';
|
|
import {
|
|
GridComponent,
|
|
TooltipComponent,
|
|
LegendComponent,
|
|
DataZoomComponent,
|
|
AxisPointerComponent,
|
|
AriaComponent,
|
|
} from 'echarts/components';
|
|
import { SVGRenderer } from 'echarts/renderers';
|
|
|
|
echarts.use([
|
|
LineChart,
|
|
BarChart,
|
|
PieChart,
|
|
GridComponent,
|
|
TooltipComponent,
|
|
LegendComponent,
|
|
DataZoomComponent,
|
|
AxisPointerComponent,
|
|
AriaComponent,
|
|
SVGRenderer,
|
|
]);
|
|
|
|
window.echarts = echarts;
|