|
|
@@ -70,7 +70,14 @@
|
|
|
<span class="amount-highlight">¥{{ formatAmount(row.amount) }}</span>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
- <el-table-column prop="order_state_text" label="状态" width="100" />
|
|
|
+ <el-table-column prop="order_state_text" label="状态" width="120">
|
|
|
+ <template #default="{ row }">
|
|
|
+ <div>
|
|
|
+ <span>{{ row.order_state_text }}</span>
|
|
|
+ <el-tag v-if="isPaymentOverdue(row)" type="danger" size="mini" effect="dark">超时</el-tag>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
<el-table-column label="支付时间" width="150">
|
|
|
<template #default="{ row }">
|
|
|
<div>{{ formatPaymentTime(row.payment_time) }}</div>
|
|
|
@@ -211,6 +218,18 @@ export default {
|
|
|
return bizTypeMap[bizType] || bizType;
|
|
|
},
|
|
|
|
|
|
+ // 判断是否支付超时(超过48小时且订单状态为1)
|
|
|
+ isPaymentOverdue(row) {
|
|
|
+ // 判断支付时间是否超过48小时且订单状态为1
|
|
|
+ if (row.order_state === 1 && row.payment_time) {
|
|
|
+ const paymentTime = new Date(row.payment_time * 1000).getTime();
|
|
|
+ const currentTime = new Date().getTime();
|
|
|
+ const hoursDiff = (currentTime - paymentTime) / (1000 * 60 * 60);
|
|
|
+ return hoursDiff > 48;
|
|
|
+ }
|
|
|
+ return false;
|
|
|
+ },
|
|
|
+
|
|
|
// 获取列表数据
|
|
|
async fetchData() {
|
|
|
if (!this.axiosInstance) {
|