会员列表新增订单汇总

This commit is contained in:
gyq 2025-01-14 13:32:54 +08:00
parent 65d61c5ebc
commit eb33ef97b1
4 changed files with 214 additions and 3 deletions

14
src/api/viplist.js Normal file
View File

@ -0,0 +1,14 @@
import $http from "@/utils/httpRequest";
/**
* 根据交易订单号获取汇总信息
* @param {*} params
* @returns
*/
export function queryByTradeNo(params) {
return $http({
url: "/order/queryByTradeNo",
method: "get",
params
});
}

View File

@ -4,8 +4,8 @@ export const productUrl='dj-admin';
// const baseUrl = "http://192.168.1.7:8100/czg/"
// const baseUrl = "https://api.tianjinzhitongdaohe.com/czg/"
// const baseUrl = "https://web-api.hnsiyao.cn/czg/" //测试
const baseUrl = "https://web.hnsiyao.cn/czg/" // 线上
const baseUrl = "https://web-api.hnsiyao.cn/czg/" //测试
// const baseUrl = "https://web.hnsiyao.cn/czg/" // 线上
export default{
baseUrl

View File

@ -0,0 +1,191 @@
<template>
<div>
<el-form :model="queryForm" inline @submit.native.prevent="queryByTradeNo">
<el-form-item label="订单号" prop="outTradeNo">
<el-input v-model="queryForm.outTradeNo" placeholder="请输入订单号查询" style="width: 500px;"></el-input>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="queryByTradeNo" :loading="loading">查询</el-button>
<el-button @click="resetHandle">重置</el-button>
</el-form-item>
</el-form>
<div class="order_info">
<div class="item">
<div class="title">
用户信息
</div>
<template v-if="orderInfo.userInfo">
<div class="row">
<span> 昵称</span>{{ orderInfo.userInfo.userName }}
</div>
<div class="row">
<span> 支付宝账号</span>{{ orderInfo.userInfo.userName }}
</div>
<div class="row">
支付宝姓名{{ orderInfo.userInfo.zhiFuBaoName }}
</div>
</template>
<div class="empty" v-else>空空如也~</div>
</div>
<div class="item">
<div class="title">
<span>实名认证信息</span>
</div>
<template v-if="orderInfo.authInfo">
<div class="row">
<span>真实姓名</span> {{ orderInfo.authInfo.certName }}
</div>
<div class="row">
<span>身份证号</span> {{ orderInfo.authInfo.certNo }}
</div>
<div class="row">
<span>银行名称</span> {{ orderInfo.authInfo.bankName }}
</div>
<div class="row">
<span>银行卡号</span> {{ orderInfo.authInfo.accountNo }}
</div>
<div class="row">
<span>预留手机号</span> {{ orderInfo.authInfo.mobile }}
</div>
</template>
<div class="empty" v-else>空空如也~</div>
</div>
<div class="item">
<div class="title">
提现信息
</div>
<template v-if="orderInfo.withdrawTotal">
<div class="row">
<span>成功合计</span> {{ orderInfo.withdrawTotal.success.total }}
</div>
<div class="row">
<span>成功笔数</span> {{ orderInfo.withdrawTotal.success.count }}
</div>
<div class="row">
<span>失败合计</span> {{ orderInfo.withdrawTotal.fail.count }}
</div>
<div class="row">
<span>失败笔数</span> {{ orderInfo.withdrawTotal.fail.count }}
</div>
<div class="row">
<span>审核中合计</span> {{ orderInfo.withdrawTotal.auditing.count }}
</div>
<div class="row">
<span>审核中笔数</span> {{ orderInfo.withdrawTotal.auditing.count }}
</div>
<div class="row">
<span>其他合计</span> {{ orderInfo.withdrawTotal.other.count }}
</div>
<div class="row">
<span>其他笔数</span> {{ orderInfo.withdrawTotal.other.count }}
</div>
</template>
<div class="empty" v-else>空空如也~</div>
</div>
<div class="item">
<div class="title">
支付信息
</div>
<template v-if="orderInfo.payTotal">
<div class="row">
<span>成功合计</span> {{ orderInfo.payTotal.success.total }}
</div>
<div class="row">
<span>成功笔数</span> {{ orderInfo.payTotal.success.count }}
</div>
<div class="row">
<span>失败合计</span> {{ orderInfo.payTotal.fail.count }}
</div>
<div class="row">
<span>失败笔数</span> {{ orderInfo.payTotal.fail.count }}
</div>
<div class="row">
<span>未付款合计</span> {{ orderInfo.payTotal.unpaid.count }}
</div>
<div class="row">
<span>未付款笔数</span> {{ orderInfo.payTotal.unpaid.count }}
</div>
</template>
<div class="empty" v-else>空空如也~</div>
</div>
</div>
</div>
</template>
<script>
import { queryByTradeNo } from '@/api/viplist.js'
export default {
data() {
return {
loading: false,
queryForm: {
// outTradeNo: '7ed7edc900884b6dabf871a330c3e13b-1075149450307057439'
outTradeNo: ''
},
orderInfo: ''
}
},
methods: {
//
resetHandle() {
this.queryForm.outTradeNo = ''
this.orderInfo = ''
},
//
async queryByTradeNo() {
try {
if (!this.queryForm.outTradeNo) return
this.loading = true
const res = await queryByTradeNo({ outTradeNo: this.queryForm.outTradeNo })
if (res.data.code == 0) {
this.orderInfo = res.data.data
} else {
this.orderInfo = ''
this.$message.error(res.data.msg)
}
} catch (error) {
this.orderInfo = ''
console.log(error);
}
this.loading = false
}
}
}
</script>
<style scoped lang="scss">
.order_info {
display: grid;
grid-template-columns: repeat(2, auto);
grid-template-rows: repeat(2, auto);
grid-column-gap: 15px;
grid-row-gap: 15px;
.item {
border: 1px solid #ececec;
padding: 15px;
background-color: #fff;
.title {
font-weight: bold;
}
.row {
margin-top: 10px;
span {
color: #555;
}
}
.empty {
height: 100%;
display: flex;
align-items: center;
justify-content: center;
color: #999;
padding-bottom: 15px;
}
}
}
</style>

View File

@ -39,6 +39,9 @@
<el-tab-pane label="实名用户" name="realName">
<RealNameList ref="RealNameList" />
</el-tab-pane>
<el-tab-pane label="订单汇总" name="orderInfo">
<OrderInfo ref="OrderInfo" />
</el-tab-pane>
<el-dialog title="添加" :visible.sync="dialogFormVisible" center>
<div style="margin-bottom: 10px;">
<span style="width: 200px;display: inline-block;text-align: right;">会员类型</span>
@ -91,13 +94,16 @@
</template>
<script>
import RealNameList from './components/realNameList.vue'
import OrderInfo from './components/orderInfo.vue'
export default {
components: {
RealNameList
RealNameList,
OrderInfo
},
data() {
return {
activeName: 'first',
// activeName: 'orderInfo',
page: 1,
limit: 10,
classify: 1,