优化订单管理代管展示
This commit is contained in:
@@ -18,6 +18,7 @@ const filters = reactive<AdminOrderQuery>({
|
||||
keyword: '',
|
||||
status: '',
|
||||
handoff_status: '',
|
||||
handoff_mode: '',
|
||||
settlement_status: '',
|
||||
})
|
||||
const loading = ref(false)
|
||||
@@ -54,6 +55,11 @@ const handoffStatusOptions = [
|
||||
{ label: '客服标记异常', value: 'admin_abnormal' },
|
||||
] as const
|
||||
|
||||
const handoffModeOptions = [
|
||||
{ label: '正常订单', value: 'owner' },
|
||||
{ label: '平台代管', value: 'platform' },
|
||||
] as const
|
||||
|
||||
const settlementStatusOptions = [
|
||||
{ label: '未结算', value: 'unsettled' },
|
||||
{ label: '待结算', value: 'pending' },
|
||||
@@ -75,6 +81,7 @@ async function loadOrders() {
|
||||
keyword: filters.keyword?.trim(),
|
||||
status: filters.status,
|
||||
handoff_status: filters.handoff_status,
|
||||
handoff_mode: filters.handoff_mode,
|
||||
settlement_status: filters.settlement_status,
|
||||
})
|
||||
orders.value = result.items
|
||||
@@ -97,6 +104,7 @@ function resetFilters() {
|
||||
filters.keyword = ''
|
||||
filters.status = ''
|
||||
filters.handoff_status = ''
|
||||
filters.handoff_mode = ''
|
||||
filters.settlement_status = ''
|
||||
void queryOrders()
|
||||
}
|
||||
@@ -113,6 +121,10 @@ function money(value: unknown) {
|
||||
function userText(value: string | number | undefined) {
|
||||
return value || '-'
|
||||
}
|
||||
|
||||
function isPlatformManaged(row: Order) {
|
||||
return row.handoff_mode === 'platform' || row.settlement_mode === 'platform_managed'
|
||||
}
|
||||
</script>
|
||||
|
||||
<template>
|
||||
@@ -172,6 +184,22 @@ function userText(value: string | number | undefined) {
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="订单类型">
|
||||
<el-select
|
||||
v-model="filters.handoff_mode"
|
||||
clearable
|
||||
placeholder="全部"
|
||||
style="width: 130px"
|
||||
@change="queryOrders"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in handoffModeOptions"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="结算状态">
|
||||
<el-select
|
||||
v-model="filters.settlement_status"
|
||||
@@ -225,7 +253,8 @@ function userText(value: string | number | undefined) {
|
||||
<template #default="{ row }">
|
||||
<div class="stacked-cell compact">
|
||||
<span>租客 {{ userText(row.renter_phone || row.renter_id) }}</span>
|
||||
<span>号主 {{ userText(row.owner_phone || row.owner_id) }}</span>
|
||||
<span v-if="isPlatformManaged(row)" class="platform-managed-owner">号主 平台代管</span>
|
||||
<span v-else>号主 {{ userText(row.owner_phone || row.owner_id) }}</span>
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
@@ -349,6 +378,11 @@ function userText(value: string | number | undefined) {
|
||||
gap: 2px;
|
||||
}
|
||||
|
||||
.stacked-cell .platform-managed-owner {
|
||||
color: #d97706;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.money-cell {
|
||||
align-items: flex-end;
|
||||
}
|
||||
|
||||
@@ -172,6 +172,7 @@ export interface AdminOrderQuery {
|
||||
keyword?: string
|
||||
status?: string
|
||||
handoff_status?: string
|
||||
handoff_mode?: string
|
||||
settlement_status?: string
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user