perf(modal): unify cancellable frontend modal flows

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
2026-08-05 02:04:55 +08:00
co-authored by Claude Fable 5
parent 25ce1d8f43
commit 5375ad6429
36 changed files with 2623 additions and 1806 deletions
+14
View File
@@ -61,6 +61,12 @@ class OrderCenterRest {
'permission_callback' => [$this, 'require_logged_in'],
'args' => $route_args,
]);
register_rest_route($namespace, '/orders/' . $order_number . '/refresh', [
'methods' => \WP_REST_Server::CREATABLE,
'callback' => [$this, 'refresh'],
'permission_callback' => [$this, 'require_logged_in'],
'args' => $route_args,
]);
register_rest_route($namespace, '/orders/' . $order_number, [
'methods' => \WP_REST_Server::READABLE,
'callback' => [$this, 'get_order'],
@@ -108,6 +114,14 @@ class OrderCenterRest {
: $this->error((string) ($result['message'] ?? __('关闭订单失败', 'aksrt')), 400);
}
public function refresh(\WP_REST_Request $request): \WP_REST_Response {
$order = UserOrders::get_instance()->refresh_order(
get_current_user_id(),
sanitize_text_field((string) $request->get_param('order_number'))
);
return $order ? $this->success(['data' => $order]) : $this->error(__('订单不存在', 'aksrt'), 404);
}
public function get_order(\WP_REST_Request $request): \WP_REST_Response {
$order = UserOrders::get_instance()->get_order_detail_view(
get_current_user_id(),