fix(order): 修复超时与异常过渡态下的状态机流转及权限断层
This commit is contained in:
@@ -121,11 +121,21 @@ const {
|
||||
const showDisputePopup = ref(false)
|
||||
const showCounterPopup = ref(false)
|
||||
const showRejectPopup = ref(false)
|
||||
const isOwnerCheckoutPending = computed(() => {
|
||||
if (!order.value || !isOwner.value) return false
|
||||
return (
|
||||
order.value.status === 'pending_checkout_confirm' ||
|
||||
(order.value.status === 'abnormal' &&
|
||||
(order.value.handoff_status === 'owner_checkout_confirm_timeout' ||
|
||||
order.value.handoff_status === 'owner_return_confirm_timeout' ||
|
||||
order.value.handoff_status === 'pending_owner_checkout'))
|
||||
)
|
||||
})
|
||||
const showCheckoutCounterAction = computed(
|
||||
() =>
|
||||
!!order.value &&
|
||||
canCounterCheckout.value &&
|
||||
((isOwner.value && order.value.status === 'pending_checkout_confirm') ||
|
||||
(isOwnerCheckoutPending.value ||
|
||||
(isRenter.value && order.value.status === 'pending_checkout_accept'))
|
||||
)
|
||||
|
||||
@@ -263,12 +273,21 @@ async function copyListingCode() {
|
||||
<!-- Handoff Panel: Owner Handoff Info Submission -->
|
||||
<section
|
||||
v-if="
|
||||
isOwner && order.status === 'pending_handoff' && order.handoff_status === 'pending_owner'
|
||||
isOwner &&
|
||||
(order.status === 'pending_handoff' || order.status === 'abnormal') &&
|
||||
(order.handoff_status === 'pending_owner' || order.handoff_status === 'owner_timeout')
|
||||
"
|
||||
class="card-section action-card"
|
||||
>
|
||||
<h3 class="section-title">提交交接说明</h3>
|
||||
<p class="action-hint">提交登录所需的账号密码、密保注意事项或扫码交接联系方式。</p>
|
||||
<p
|
||||
v-if="order.handoff_status === 'owner_timeout'"
|
||||
class="action-hint"
|
||||
style="color: #e6a23c; font-weight: 500"
|
||||
>
|
||||
当前交接已超时,请尽快补提交交接说明避免订单被关闭。
|
||||
</p>
|
||||
<p v-else class="action-hint">提交登录所需的账号密码、密保注意事项或扫码交接联系方式。</p>
|
||||
<van-field
|
||||
v-model="handoffContent"
|
||||
rows="3"
|
||||
@@ -354,12 +373,14 @@ async function copyListingCode() {
|
||||
<OrderCheckoutSummary
|
||||
v-if="
|
||||
order.checkout &&
|
||||
[
|
||||
'pending_checkout_confirm',
|
||||
'pending_checkout_accept',
|
||||
'checkout_disputing',
|
||||
'completed',
|
||||
].includes(order.status)
|
||||
(
|
||||
[
|
||||
'pending_checkout_confirm',
|
||||
'pending_checkout_accept',
|
||||
'checkout_disputing',
|
||||
'completed',
|
||||
].includes(order.status) || order.status === 'abnormal'
|
||||
)
|
||||
"
|
||||
variant="mobile"
|
||||
:order="order"
|
||||
@@ -369,11 +390,18 @@ async function copyListingCode() {
|
||||
|
||||
<!-- Owner Action: Confirm Checkout / Make Counter Adjustment Proposal -->
|
||||
<section
|
||||
v-if="isOwner && order.status === 'pending_checkout_confirm'"
|
||||
v-if="isOwnerCheckoutPending"
|
||||
class="card-section action-card"
|
||||
>
|
||||
<h3 class="section-title">结账处理</h3>
|
||||
<p class="action-hint">
|
||||
<p
|
||||
v-if="order.handoff_status === 'owner_checkout_confirm_timeout'"
|
||||
class="action-hint"
|
||||
style="color: #e6a23c; font-weight: 500"
|
||||
>
|
||||
结账确认已超时,你可以直接同意当前方案完结,或修改方案交对方确认。
|
||||
</p>
|
||||
<p v-else class="action-hint">
|
||||
{{
|
||||
checkoutRoundLabel || '请核对消耗与扣款'
|
||||
}}。确认无误后同意完结;也可修改方案交对方确认(最多 6
|
||||
|
||||
Reference in New Issue
Block a user