fix:充值订单和业务订单bug修复

This commit is contained in:
old burden 2026-04-21 15:57:35 +08:00
parent 4800af812d
commit 8fcdb74507
2 changed files with 56 additions and 8 deletions

View File

@ -1,6 +1,22 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="88px"> <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="88px">
<el-form-item label="订单号" prop="orderNum">
<el-input
v-model="queryParams.orderNum"
placeholder="请输入订单号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="用户ID" prop="userId">
<el-input
v-model="queryParams.userId"
placeholder="请输入用户ID"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="团队名称" prop="deptName"> <el-form-item label="团队名称" prop="deptName">
<el-input <el-input
v-model="queryParams.deptName" v-model="queryParams.deptName"
@ -14,6 +30,11 @@
<el-option v-for="item in orderTypeOptions" :key="item.value" :label="item.label" :value="item.value" /> <el-option v-for="item in orderTypeOptions" :key="item.value" :label="item.label" :value="item.value" />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="状态" prop="status">
<el-select v-model="queryParams.status" placeholder="全部" clearable style="width: 140px">
<el-option v-for="item in statusOptions" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
@ -38,13 +59,13 @@
<el-table-column label="ID" align="center" prop="id" width="72" /> <el-table-column label="ID" align="center" prop="id" width="72" />
<el-table-column label="团队名称" align="center" prop="deptName" min-width="140" show-overflow-tooltip /> <el-table-column label="团队名称" align="center" prop="deptName" min-width="140" show-overflow-tooltip />
<el-table-column label="用户ID" align="center" prop="userId" width="100" /> <el-table-column label="用户ID" align="center" prop="userId" width="100" />
<el-table-column label="类型" align="center" width="100"> <el-table-column label="订单号"" align="center" prop="orderNum" width="100" />
<el-table-column label="积分" align="center" prop="amount" width="100" />
<el-table-column label="状态" align="center" width="100">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ orderTypeLabel(scope.row.orderType) }}</span> <span>{{ statusLabel(scope.row.status) }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="金额(元)" align="center" prop="money" width="100" />
<el-table-column label="积分" align="center" prop="amount" width="100" />
<el-table-column label="结果预览" min-width="220"> <el-table-column label="结果预览" min-width="220">
<template slot-scope="scope"> <template slot-scope="scope">
<div v-if="extractVideoUrl(scope.row.result)"> <div v-if="extractVideoUrl(scope.row.result)">
@ -110,11 +131,19 @@ export default {
{ label: "充值", value: 0 }, { label: "充值", value: 0 },
{ label: "退款", value: 1 } { label: "退款", value: 1 }
], ],
statusOptions: [
{ label: "进行中", value: 0 },
{ label: "完成", value: 1 },
{ label: "失败", value: 2 }
],
queryParams: { queryParams: {
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 10,
orderNum: null,
userId: null,
deptName: null, deptName: null,
orderType: null orderType: null,
status: null
} }
} }
}, },
@ -127,6 +156,11 @@ export default {
const hit = this.orderTypeOptions.find(o => o.value === n) const hit = this.orderTypeOptions.find(o => o.value === n)
return hit ? hit.label : "—" return hit ? hit.label : "—"
}, },
statusLabel(status) {
const n = status !== undefined && status !== null ? Number(status) : null
const hit = this.statusOptions.find(o => o.value === n)
return hit ? hit.label : "—"
},
extractVideoUrl(result) { extractVideoUrl(result) {
if (!result) return "" if (!result) return ""
if (typeof result === "string") { if (typeof result === "string") {

View File

@ -9,7 +9,7 @@
</el-form-item> </el-form-item>
<el-form-item label="状态" prop="status"> <el-form-item label="状态" prop="status">
<el-select v-model="queryParams.status" clearable placeholder="状态"> <el-select v-model="queryParams.status" clearable placeholder="状态">
<el-option label="进行中" :value="0" /><el-option label="已完成" :value="1" /><el-option label="失败" :value="2" /> <el-option v-for="item in statusOptions" :key="item.value" :label="item.label" :value="item.value" />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
@ -22,8 +22,12 @@
<el-table-column label="ID" prop="id" width="70" /> <el-table-column label="ID" prop="id" width="70" />
<el-table-column label="订单号" prop="orderNum" min-width="120" show-overflow-tooltip /> <el-table-column label="订单号" prop="orderNum" min-width="120" show-overflow-tooltip />
<el-table-column label="用户ID" prop="userId" width="90" /> <el-table-column label="用户ID" prop="userId" width="90" />
<el-table-column label="金额" prop="amount" width="90" /> <el-table-column label="积分" prop="amount" width="90" />
<el-table-column label="状态" prop="status" width="80" /> <el-table-column label="状态" width="80">
<template slot-scope="s">
<span>{{ statusLabel(s.row.status) }}</span>
</template>
</el-table-column>
<el-table-column label="结果预览" min-width="220"> <el-table-column label="结果预览" min-width="220">
<template slot-scope="s"> <template slot-scope="s">
<div v-if="extractVideoUrl(s.row.result)"> <div v-if="extractVideoUrl(s.row.result)">
@ -72,6 +76,11 @@ export default {
total: 0, total: 0,
detailVisible: false, detailVisible: false,
detailData: {}, detailData: {},
statusOptions: [
{ label: '进行中', value: 0 },
{ label: '完成', value: 1 },
{ label: '失败', value: 2 }
],
queryParams: { pageNum: 1, pageSize: 10, orderNum: undefined, userId: undefined, status: undefined } queryParams: { pageNum: 1, pageSize: 10, orderNum: undefined, userId: undefined, status: undefined }
} }
}, },
@ -117,6 +126,11 @@ export default {
} }
return '' return ''
}, },
statusLabel(status) {
const n = status !== undefined && status !== null ? Number(status) : null
const hit = this.statusOptions.find(item => item.value === n)
return hit ? hit.label : '-'
},
handleDetail(row) { handleDetail(row) {
this.detailData = row || {} this.detailData = row || {}
this.detailVisible = true this.detailVisible = true