diff --git a/assets/admin/src/schema/sections/payment/order.js b/assets/admin/src/schema/sections/payment/order.js index e12d8712..0f343696 100644 --- a/assets/admin/src/schema/sections/payment/order.js +++ b/assets/admin/src/schema/sections/payment/order.js @@ -22,11 +22,9 @@ export const orderSchema = { payment_show_pay_time: true, payment_order_status_pending: '待支付', payment_order_status_paid: '已支付', - payment_order_status_completed: '已完成', - payment_order_status_cancelled: '已取消', - payment_order_status_refunded: '已退款', payment_order_status_refunding: '退款中', - payment_order_status_processing: '处理中', + payment_order_status_refunded: '已退款', + payment_order_status_closed: '已关闭', pay_service: '', pay_service_icon: '', pay_service_value: '', @@ -71,11 +69,9 @@ export const orderSchema = { fields: [ { key: 'payment_order_status_pending', label: '待支付状态文案', type: 'input', default: '待支付' }, { key: 'payment_order_status_paid', label: '已支付状态文案', type: 'input', default: '已支付' }, - { key: 'payment_order_status_completed', label: '已完成状态文案', type: 'input', default: '已完成' }, - { key: 'payment_order_status_cancelled', label: '已取消状态文案', type: 'input', default: '已取消' }, - { key: 'payment_order_status_refunded', label: '已退款状态文案', type: 'input', default: '已退款' }, { key: 'payment_order_status_refunding', label: '退款中状态文案', type: 'input', default: '退款中' }, - { key: 'payment_order_status_processing', label: '处理中状态文案', type: 'input', default: '处理中' }, + { key: 'payment_order_status_refunded', label: '已退款状态文案', type: 'input', default: '已退款' }, + { key: 'payment_order_status_closed', label: '已关闭状态文案', type: 'input', default: '已关闭' }, ], }, { diff --git a/assets/css/routes/orders.css b/assets/css/routes/orders.css index 920236e5..aed30de8 100644 --- a/assets/css/routes/orders.css +++ b/assets/css/routes/orders.css @@ -55,18 +55,14 @@ .aksrt-orders-page__filter-panel { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin: -2px 0 14px; padding: 12px; border-radius: 10px; background: var(--surface-2, #f4f6f9); } .aksrt-orders-page__filter-panel[hidden] { display: none !important; } -.aksrt-orders-page__filter-label { color: var(--orders-muted); font-size: 12px; font-weight: 650; } -.aksrt-orders-page__type-filters { display: flex; flex-wrap: wrap; gap: 6px; } -.aksrt-orders-page__filter-chip { padding: 5px 9px; border: 1px solid var(--orders-line); border-radius: 999px; background: var(--surface-1, #fff); color: var(--orders-muted); font-size: 12px; text-decoration: none; } +.aksrt-orders-page__filter-group { display: flex; flex: 1 1 100%; gap: 10px; align-items: center; } +.aksrt-orders-page__filter-label { flex: 0 0 58px; color: var(--orders-muted); font-size: 12px; font-weight: 650; } +.aksrt-orders-page__status-filters, .aksrt-orders-page__type-filters { display: flex; flex-wrap: wrap; gap: 6px; } +.aksrt-orders-page__filter-chip { display: inline-flex; gap: 5px; align-items: center; padding: 5px 9px; border: 1px solid var(--orders-line); border-radius: 999px; background: var(--surface-1, #fff); color: var(--orders-muted); font-size: 12px; text-decoration: none; } .aksrt-orders-page__filter-chip.is-active { border-color: var(--color-primary, #3b82f6); background: color-mix(in srgb, var(--color-primary, #3b82f6) 10%, var(--surface-1, #fff)); color: var(--color-primary, #3b82f6); font-weight: 700; } +.aksrt-orders-page__filter-count { display: inline-grid; min-width: 17px; height: 17px; padding: 0 4px; place-items: center; border-radius: 999px; background: var(--color-warning, #c87819); color: #fff; font-size: 10px; line-height: 1; } .aksrt-orders-page__clear { margin-left: auto; color: var(--color-primary, #3b82f6); font-size: 12px; text-decoration: none; } -.aksrt-orders-page__tabs { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; margin: 4px 0 14px; border-bottom: 1px solid var(--orders-line); } -.aksrt-orders-page__tab { position: relative; padding: 11px 8px; color: var(--orders-muted); text-align: center; font-size: 13px; font-weight: 650; text-decoration: none; } -.aksrt-orders-page__tab.is-active { color: var(--orders-ink); } -.aksrt-orders-page__tab.is-active::after { position: absolute; right: 28%; bottom: -1px; left: 28%; height: 2px; border-radius: 2px; background: var(--color-primary, #3b82f6); content: ""; } -.aksrt-orders-page__tab-badge { display: inline-grid; min-width: 17px; height: 17px; place-items: center; border-radius: 50%; background: var(--color-warning, #c87819); color: #fff; font-size: 10px; } - .aksrt-orders-page__list { display: grid; gap: 10px; } .aksrt-orders-page__card { overflow: hidden; border: 1px solid var(--orders-line); border-radius: 13px; background: var(--surface-1, #fff); transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease; } .aksrt-orders-page__card:hover { border-color: color-mix(in srgb, var(--color-primary, #3b82f6) 36%, var(--orders-line)); box-shadow: 0 8px 22px rgba(30, 48, 79, .07); transform: translateY(-1px); } diff --git a/inc/helpers/user-center-renderers/profile-orders.php b/inc/helpers/user-center-renderers/profile-orders.php index 44709a02..15fbf0b1 100644 --- a/inc/helpers/user-center-renderers/profile-orders.php +++ b/inc/helpers/user-center-renderers/profile-orders.php @@ -15,7 +15,7 @@ if ($user_id <= 0) { } $raw_query = [ - 'status' => $_GET['order_status'] ?? '', + 'status' => $_GET['order_status'] ?? 'all', 'type' => $_GET['order_type'] ?? '', 'order_number' => $_GET['order_number'] ?? '', 'page' => $_GET['order_page'] ?? 1, @@ -52,7 +52,7 @@ $orders_url = static function (array $override = []) use ($status, $type, $order return add_query_arg($values, remove_query_arg(['order_tab', 'otab', 'section'], $base)); }; -$tabs = [ +$status_options = [ 'all' => __('全部', 'aksrt'), 'pending' => __('待支付', 'aksrt'), 'paid' => __('已支付', 'aksrt'), @@ -90,24 +90,28 @@ $tabs = [