diff --git a/assets/css/routes/orders.css b/assets/css/routes/orders.css index d2a0f7ee..82e73809 100644 --- a/assets/css/routes/orders.css +++ b/assets/css/routes/orders.css @@ -163,10 +163,15 @@ .aksrt-order-detail__refresh-state p { margin: 0; } .aksrt-order-detail__refresh-state button { grid-column: 2; justify-self: start; } -/* 底部操作区:按钮排布沿用主题 .but-average.modal-buts(禁封申诉弹窗同式),此处仅保留吸底定位与通栏背景。 +/* 底部操作区:按钮排布沿用主题 .but-average.modal-buts,此处仅保留吸底定位与通栏背景。 主题 modal-buts 自带 margin-top:16px,吸底场景下用更高优先级清掉,避免内容与吸底条之间出现空隙。 */ .aksrt-order-detail-modal .aksrt-order-detail__actions { position: sticky; bottom: 0; z-index: 2; margin: 0 -18px; padding: 13px 18px calc(13px + env(safe-area-inset-bottom)); border-top: 1px solid var(--detail-line); background: var(--detail-surface); } -.aksrt-order-detail-modal .aksrt-order-detail__actions.but-average.modal-buts { margin-top: 0; } +.aksrt-order-detail-modal .aksrt-order-detail__actions.but-average.modal-buts { margin-top: 0; gap: 0; } +/* 底部按钮观感与售后弹窗家族对齐(modal-runtime 同款平铺规则):去胶囊底色/边框/圆角, + 文字色区分主次;仅「关闭」单按钮时占满整行,即售后详细「我知道了」的呈现。 */ +.aksrt-order-detail-modal .aksrt-order-detail__actions.but-average.modal-buts > .but { min-height: 38px; border: 0; border-radius: 0; box-shadow: none; background: transparent; color: var(--modal-muted, #777); font-weight: 600; cursor: pointer; --this-bg: transparent; --this-border: transparent; --this-shadow: none; } +.aksrt-order-detail-modal .aksrt-order-detail__actions.but-average.modal-buts > .but.c-blue { background: transparent; border: 0; color: var(--modal-primary, #f04494); } +.aksrt-order-detail-modal .aksrt-order-detail__actions.but-average.modal-buts > .but:only-child { grid-column: 1 / -1; } /* Orders extensions */ .aksrt-orders-page__extra-nav { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 12px; } @@ -205,4 +210,4 @@ html.dark .aksrt-orders-page__stat, html.dark .aksrt-orders-page__card { backgro .aksrt-order-detail__after-sale-meta dt { color: var(--detail-muted); } .aksrt-order-detail__after-sale-meta dd { margin: 0; color: var(--detail-ink); font-size: 12.5px; text-align: right; word-break: break-word; } .aksrt-order-detail__after-sale-field { color: var(--detail-muted); } -.aksrt-order-detail__after-sale-foot { display: flex; flex-wrap: wrap; gap: 8px; } +.aksrt-order-detail__after-sale-foot { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; } diff --git a/assets/js/order-after-sale.js b/assets/js/order-after-sale.js index 825603e9..f5972b1f 100644 --- a/assets/js/order-after-sale.js +++ b/assets/js/order-after-sale.js @@ -604,11 +604,14 @@ return; } - // 再次申请售后:载荷已随按钮渲染,直接开申请表单(时效/工单状态随列表刷新更新)。 + // 再次申请售后:载荷已随按钮渲染。can_reapply 必然伴随 has_application=true, + // 直接走 openApplyFlow 会被 has_application 分流回「售后详细」打转; + // 清除标记落回申请表单分支(expired 超时效拦截仍然生效)。 var reapplyBtn = event.target.closest('[data-aksrt-after-sale-reapply]'); if (reapplyBtn) { event.preventDefault(); var payload = parsePayload(reapplyBtn.getAttribute('data-aksrt-after-sale-payload')); + if (payload && payload.after_sale) payload.after_sale.has_application = false; window.AksrtModalRuntime.close('replace'); openApplyFlow(payload); return; diff --git a/assets/js/order-center.js b/assets/js/order-center.js index 3c12e924..515f68d7 100644 --- a/assets/js/order-center.js +++ b/assets/js/order-center.js @@ -251,9 +251,10 @@ html += ""; } - // 底部按钮与禁封申诉弹窗同式:but-average modal-buts + .but / .but c-blue。 + // 底部按钮与售后详细弹窗同式:but-average modal-buts;「关闭」与「我知道了」 + // 同款(but c-blue),平铺观感由 orders.css 的 footer 按钮规则统一呈现。 html += '