|
@@ -37,16 +37,16 @@
|
|
|
placeholder="请选择消费类型"
|
|
placeholder="请选择消费类型"
|
|
|
style="width: 200px"
|
|
style="width: 200px"
|
|
|
>
|
|
>
|
|
|
- <el-option label="充值" value="1" />
|
|
|
|
|
- <el-option label="消费" value="2" />
|
|
|
|
|
- <el-option label="补贴" value="3" />
|
|
|
|
|
- <el-option label="退款" value="4" />
|
|
|
|
|
|
|
+ <el-option label="充值" :value="1" />
|
|
|
|
|
+ <el-option label="消费" :value="2" />
|
|
|
|
|
+ <!-- <el-option label="补贴" :value="3" /> -->
|
|
|
|
|
+ <el-option label="退款" :value="4" />
|
|
|
</el-select>
|
|
</el-select>
|
|
|
</div>
|
|
</div>
|
|
|
- <div class="condition">
|
|
|
|
|
|
|
+ <!-- <div class="condition">
|
|
|
<span>审核结果 : </span>
|
|
<span>审核结果 : </span>
|
|
|
<el-select
|
|
<el-select
|
|
|
- v-model="searchInput.vertifyState"
|
|
|
|
|
|
|
+ v-model="searchInput.type"
|
|
|
class="m-2"
|
|
class="m-2"
|
|
|
placeholder="请选择审核结果"
|
|
placeholder="请选择审核结果"
|
|
|
style="width: 200px"
|
|
style="width: 200px"
|
|
@@ -55,7 +55,7 @@
|
|
|
<el-option label="通过" :value="1" />
|
|
<el-option label="通过" :value="1" />
|
|
|
<el-option label="拒绝" :value="2" />
|
|
<el-option label="拒绝" :value="2" />
|
|
|
</el-select>
|
|
</el-select>
|
|
|
- </div>
|
|
|
|
|
|
|
+ </div> -->
|
|
|
<div class="condition">
|
|
<div class="condition">
|
|
|
<span>订单时间 : </span>
|
|
<span>订单时间 : </span>
|
|
|
<el-date-picker
|
|
<el-date-picker
|
|
@@ -95,7 +95,7 @@
|
|
|
><el-icon> <Refresh /> </el-icon><span>重置</span></el-button
|
|
><el-icon> <Refresh /> </el-icon><span>重置</span></el-button
|
|
|
>
|
|
>
|
|
|
</div>
|
|
</div>
|
|
|
- <!-- <el-button
|
|
|
|
|
|
|
+ <el-button
|
|
|
color="rgba(61, 81, 232, 1)"
|
|
color="rgba(61, 81, 232, 1)"
|
|
|
class="import"
|
|
class="import"
|
|
|
type="primary"
|
|
type="primary"
|
|
@@ -106,7 +106,7 @@
|
|
|
alt=""
|
|
alt=""
|
|
|
/>
|
|
/>
|
|
|
<span>导出表单</span></el-button
|
|
<span>导出表单</span></el-button
|
|
|
- > -->
|
|
|
|
|
|
|
+ >
|
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
<el-dialog
|
|
<el-dialog
|
|
@@ -129,9 +129,9 @@
|
|
|
label-position="left"
|
|
label-position="left"
|
|
|
status-icon
|
|
status-icon
|
|
|
>
|
|
>
|
|
|
- <el-form-item label="审核结果 :" prop="vertifyState">
|
|
|
|
|
|
|
+ <el-form-item label="审核结果 :" prop="type">
|
|
|
<el-select
|
|
<el-select
|
|
|
- v-model="ruleForm.vertifyState"
|
|
|
|
|
|
|
+ v-model="ruleForm.type"
|
|
|
class="m-2"
|
|
class="m-2"
|
|
|
placeholder="请选择审核结果"
|
|
placeholder="请选择审核结果"
|
|
|
style="width: 280px"
|
|
style="width: 280px"
|
|
@@ -192,7 +192,7 @@
|
|
|
充值
|
|
充值
|
|
|
</div>
|
|
</div>
|
|
|
<div v-if="scope.row.consumeType == 2">消费</div>
|
|
<div v-if="scope.row.consumeType == 2">消费</div>
|
|
|
- <div v-if="scope.row.consumeType == 3">补贴</div>
|
|
|
|
|
|
|
+ <!-- <div v-if="scope.row.consumeType == 3">补贴</div> -->
|
|
|
<div style="color: red" v-if="scope.row.consumeType == 4">
|
|
<div style="color: red" v-if="scope.row.consumeType == 4">
|
|
|
退款
|
|
退款
|
|
|
</div>
|
|
</div>
|
|
@@ -200,8 +200,14 @@
|
|
|
</el-table-column>
|
|
</el-table-column>
|
|
|
<el-table-column align="center" prop="account4" label="交易金额">
|
|
<el-table-column align="center" prop="account4" label="交易金额">
|
|
|
</el-table-column>
|
|
</el-table-column>
|
|
|
- <el-table-column align="center" prop="account1" label="主余额" />
|
|
|
|
|
- <el-table-column align="center" prop="account2" label="补贴余额" />
|
|
|
|
|
|
|
+ <!-- <el-table-column align="center" prop="account1" label="主余额" /> -->
|
|
|
|
|
+ <!-- <el-table-column align="center" prop="account2" label="补贴余额" /> -->
|
|
|
|
|
+ <el-table-column
|
|
|
|
|
+ width="100"
|
|
|
|
|
+ align="center"
|
|
|
|
|
+ prop="createTime"
|
|
|
|
|
+ label="订单时间"
|
|
|
|
|
+ />
|
|
|
<el-table-column align="center" prop="account3" label="可用余额" />
|
|
<el-table-column align="center" prop="account3" label="可用余额" />
|
|
|
<el-table-column align="center" prop="by_num" label="交通卡类型">
|
|
<el-table-column align="center" prop="by_num" label="交通卡类型">
|
|
|
<template #default="scope">
|
|
<template #default="scope">
|
|
@@ -212,34 +218,36 @@
|
|
|
</el-table-column>
|
|
</el-table-column>
|
|
|
<el-table-column align="center" prop="mobile" label="手机号码" />
|
|
<el-table-column align="center" prop="mobile" label="手机号码" />
|
|
|
<el-table-column align="center" prop="username" label="用户名" />
|
|
<el-table-column align="center" prop="username" label="用户名" />
|
|
|
- <el-table-column align="center" prop="car_number" label="审核结果">
|
|
|
|
|
|
|
+ <!-- <el-table-column align="center" prop="car_number" label="审核结果">
|
|
|
<template #default="scope">
|
|
<template #default="scope">
|
|
|
- <div v-if="scope.row.vertifyState == 0">待审核</div>
|
|
|
|
|
- <div style="color: #67c23a" v-if="scope.row.vertifyState == 1">
|
|
|
|
|
|
|
+ <div v-if="scope.row.type == 0">待审核</div>
|
|
|
|
|
+ <div style="color: #67c23a" v-if="scope.row.type == 1">
|
|
|
通过
|
|
通过
|
|
|
</div>
|
|
</div>
|
|
|
- <div style="color: red" v-if="scope.row.vertifyState == 2">
|
|
|
|
|
|
|
+ <div style="color: red" v-if="scope.row.type == 2">
|
|
|
拒绝
|
|
拒绝
|
|
|
</div>
|
|
</div>
|
|
|
</template>
|
|
</template>
|
|
|
</el-table-column>
|
|
</el-table-column>
|
|
|
- <el-table-column show-overflow-tooltip align="center" prop="remark" label="审核理由" />
|
|
|
|
|
<el-table-column
|
|
<el-table-column
|
|
|
- width="100"
|
|
|
|
|
|
|
+ show-overflow-tooltip
|
|
|
align="center"
|
|
align="center"
|
|
|
- prop="createTime"
|
|
|
|
|
- label="创建时间"
|
|
|
|
|
- />
|
|
|
|
|
- <el-table-column align="center" label="操作" width="150">
|
|
|
|
|
|
|
+ prop="remark"
|
|
|
|
|
+ label="审核理由"
|
|
|
|
|
+ /> -->
|
|
|
|
|
+
|
|
|
|
|
+ <!-- <el-table-column align="center" label="操作" width="150">
|
|
|
<template #default="scope">
|
|
<template #default="scope">
|
|
|
- <el-button v-if="scope.row.vertifyState == 0" link type="primary" @click="info(scope.row)">
|
|
|
|
|
|
|
+ <el-button
|
|
|
|
|
+ v-if="scope.row.type == 0"
|
|
|
|
|
+ link
|
|
|
|
|
+ type="primary"
|
|
|
|
|
+ @click="info(scope.row)"
|
|
|
|
|
+ >
|
|
|
<div class="look">审核</div>
|
|
<div class="look">审核</div>
|
|
|
</el-button>
|
|
</el-button>
|
|
|
- <!-- <el-button link type="danger" @click="del(scope.row)">
|
|
|
|
|
- <div class="del">删除</div>
|
|
|
|
|
- </el-button> -->
|
|
|
|
|
</template>
|
|
</template>
|
|
|
- </el-table-column>
|
|
|
|
|
|
|
+ </el-table-column> -->
|
|
|
</el-table>
|
|
</el-table>
|
|
|
</div>
|
|
</div>
|
|
|
<div class="pagination">
|
|
<div class="pagination">
|
|
@@ -272,8 +280,8 @@
|
|
|
<span style="color: red">{{ sumMoney.recharge }}</span> 元 ;
|
|
<span style="color: red">{{ sumMoney.recharge }}</span> 元 ;
|
|
|
消费汇总:
|
|
消费汇总:
|
|
|
<span style="color: red">{{ sumMoney.consume }}</span> 元 ;
|
|
<span style="color: red">{{ sumMoney.consume }}</span> 元 ;
|
|
|
- 补贴汇总:
|
|
|
|
|
- <span style="color: red">{{ sumMoney.allowance }}</span> 元 ;
|
|
|
|
|
|
|
+ <!-- 补贴汇总:
|
|
|
|
|
+ <span style="color: red">{{ sumMoney.allowance }}</span> 元 ; -->
|
|
|
退款汇总:
|
|
退款汇总:
|
|
|
<span style="color: red">{{ sumMoney.refund }}</span> 元
|
|
<span style="color: red">{{ sumMoney.refund }}</span> 元
|
|
|
</div>
|
|
</div>
|
|
@@ -306,6 +314,7 @@ const searchInput = reactive({
|
|
|
consumeType: "", // 消费类型 // 1充值,2消费,3补贴,4退款
|
|
consumeType: "", // 消费类型 // 1充值,2消费,3补贴,4退款
|
|
|
username: "", // 用户名
|
|
username: "", // 用户名
|
|
|
orderTime: "", // 订单时间
|
|
orderTime: "", // 订单时间
|
|
|
|
|
+ type: "", // 0普通用户,1教师,2贫困生
|
|
|
});
|
|
});
|
|
|
|
|
|
|
|
// 表格数据
|
|
// 表格数据
|
|
@@ -334,12 +343,12 @@ const ruleFormRef = ref();
|
|
|
|
|
|
|
|
const ruleForm = reactive({
|
|
const ruleForm = reactive({
|
|
|
id: "",
|
|
id: "",
|
|
|
- vertifyState: "",
|
|
|
|
|
|
|
+ type: "",
|
|
|
remark: "",
|
|
remark: "",
|
|
|
});
|
|
});
|
|
|
// 表单验证
|
|
// 表单验证
|
|
|
const rules = reactive({
|
|
const rules = reactive({
|
|
|
- vertifyState: [
|
|
|
|
|
|
|
+ type: [
|
|
|
{
|
|
{
|
|
|
required: true,
|
|
required: true,
|
|
|
message: "审核结果不能为空",
|
|
message: "审核结果不能为空",
|
|
@@ -370,17 +379,15 @@ const getList = async () => {
|
|
|
data.createStart = searchInput.orderTime[0];
|
|
data.createStart = searchInput.orderTime[0];
|
|
|
data.createEnd = searchInput.orderTime[1];
|
|
data.createEnd = searchInput.orderTime[1];
|
|
|
}
|
|
}
|
|
|
- data.vertifyState = searchInput.vertifyState;
|
|
|
|
|
- if (searchInput.consumeType) {
|
|
|
|
|
- data.consumeType = searchInput.consumeType;
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ data.type = searchInput.type;
|
|
|
|
|
+ data.consumeType = searchInput.consumeType;
|
|
|
if (searchInput.username) {
|
|
if (searchInput.username) {
|
|
|
data.username = searchInput.username;
|
|
data.username = searchInput.username;
|
|
|
}
|
|
}
|
|
|
data.page = currentPage.value;
|
|
data.page = currentPage.value;
|
|
|
data.rows = pageSize.value;
|
|
data.rows = pageSize.value;
|
|
|
let res = await axios({
|
|
let res = await axios({
|
|
|
- method: "post",
|
|
|
|
|
|
|
+ method: "get",
|
|
|
url: api.value + "/cardlist.action",
|
|
url: api.value + "/cardlist.action",
|
|
|
headers: {
|
|
headers: {
|
|
|
token: sessionStorage.getItem("token"),
|
|
token: sessionStorage.getItem("token"),
|
|
@@ -414,13 +421,8 @@ const getMoney = async () => {
|
|
|
data.createStart = searchInput.orderTime[0];
|
|
data.createStart = searchInput.orderTime[0];
|
|
|
data.createEnd = searchInput.orderTime[1];
|
|
data.createEnd = searchInput.orderTime[1];
|
|
|
}
|
|
}
|
|
|
- if (searchInput.type) {
|
|
|
|
|
- data.type = searchInput.type;
|
|
|
|
|
- }
|
|
|
|
|
- data.vertifyState = searchInput.vertifyState;
|
|
|
|
|
- if (searchInput.consumeType) {
|
|
|
|
|
- data.consumeType = searchInput.consumeType;
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ data.type = searchInput.type;
|
|
|
|
|
+ data.consumeType = searchInput.consumeType;
|
|
|
if (searchInput.username) {
|
|
if (searchInput.username) {
|
|
|
data.username = searchInput.username;
|
|
data.username = searchInput.username;
|
|
|
}
|
|
}
|
|
@@ -435,10 +437,10 @@ const getMoney = async () => {
|
|
|
console.log(res, "交通卡明细流水");
|
|
console.log(res, "交通卡明细流水");
|
|
|
if (res.data.code == 200) {
|
|
if (res.data.code == 200) {
|
|
|
let s = res.data.data;
|
|
let s = res.data.data;
|
|
|
- sumMoney.recharge = s.recharge.money;
|
|
|
|
|
- sumMoney.consume = s.consume.money;
|
|
|
|
|
- sumMoney.allowance = s.allowance.money;
|
|
|
|
|
- sumMoney.refund = s.refund.money;
|
|
|
|
|
|
|
+ sumMoney.recharge = s.recharge.money.toFixed(2);
|
|
|
|
|
+ sumMoney.consume = s.consume.money.toFixed(2);
|
|
|
|
|
+ sumMoney.allowance = s.allowance.money.toFixed(2);
|
|
|
|
|
+ sumMoney.refund = s.refund.money.toFixed(2);
|
|
|
} else {
|
|
} else {
|
|
|
ElMessage({
|
|
ElMessage({
|
|
|
type: "error",
|
|
type: "error",
|
|
@@ -462,7 +464,7 @@ const search = lodash.debounce(() => {
|
|
|
const resetInput = lodash.debounce(() => {
|
|
const resetInput = lodash.debounce(() => {
|
|
|
searchInput.orderNum = "";
|
|
searchInput.orderNum = "";
|
|
|
searchInput.type = "";
|
|
searchInput.type = "";
|
|
|
- searchInput.vertifyState = "";
|
|
|
|
|
|
|
+ searchInput.type = "";
|
|
|
searchInput.consumeType = "";
|
|
searchInput.consumeType = "";
|
|
|
searchInput.orderTime = "";
|
|
searchInput.orderTime = "";
|
|
|
searchInput.username = "";
|
|
searchInput.username = "";
|
|
@@ -479,9 +481,9 @@ const handleSelectionChange = (val) => {
|
|
|
const info = (row) => {
|
|
const info = (row) => {
|
|
|
console.log(row);
|
|
console.log(row);
|
|
|
centerDialogVisible.value = true;
|
|
centerDialogVisible.value = true;
|
|
|
- ruleForm.vertifyState=""
|
|
|
|
|
- ruleForm.remark=""
|
|
|
|
|
- ruleForm.id=row.id
|
|
|
|
|
|
|
+ ruleForm.type = "";
|
|
|
|
|
+ ruleForm.remark = "";
|
|
|
|
|
+ ruleForm.id = row.id;
|
|
|
};
|
|
};
|
|
|
const editClose = () => {
|
|
const editClose = () => {
|
|
|
centerDialogVisible.value = false;
|
|
centerDialogVisible.value = false;
|
|
@@ -493,7 +495,7 @@ const submitAdd = async (formEl) => {
|
|
|
if (valid) {
|
|
if (valid) {
|
|
|
let data = new FormData();
|
|
let data = new FormData();
|
|
|
data.set("id", ruleForm.id);
|
|
data.set("id", ruleForm.id);
|
|
|
- data.set("vertifyState", ruleForm.vertifyState); //前面的key记得对应!
|
|
|
|
|
|
|
+ data.set("type", ruleForm.type); //前面的key记得对应!
|
|
|
data.set("remark", ruleForm.remark);
|
|
data.set("remark", ruleForm.remark);
|
|
|
let res = await axios({
|
|
let res = await axios({
|
|
|
method: "post",
|
|
method: "post",
|
|
@@ -506,6 +508,7 @@ const submitAdd = async (formEl) => {
|
|
|
// console.log(res, "添加账号");
|
|
// console.log(res, "添加账号");
|
|
|
if (res.data.code == 200) {
|
|
if (res.data.code == 200) {
|
|
|
getList();
|
|
getList();
|
|
|
|
|
+ getMoney();
|
|
|
ElMessage({
|
|
ElMessage({
|
|
|
type: "success",
|
|
type: "success",
|
|
|
showClose: true,
|
|
showClose: true,
|
|
@@ -572,30 +575,26 @@ const del = (row) => {
|
|
|
|
|
|
|
|
// 导出按钮
|
|
// 导出按钮
|
|
|
const downLoad = lodash.debounce(async () => {
|
|
const downLoad = lodash.debounce(async () => {
|
|
|
- let data = new FormData();
|
|
|
|
|
- if (searchInput.car_number) {
|
|
|
|
|
- data.set("car_number", searchInput.car_number);
|
|
|
|
|
- }
|
|
|
|
|
- if (searchInput.yy_date) {
|
|
|
|
|
- data.set("yy_date", searchInput.yy_date);
|
|
|
|
|
|
|
+ let data = {};
|
|
|
|
|
+ if (searchInput.orderNum) {
|
|
|
|
|
+ data.orderNum = searchInput.orderNum;
|
|
|
}
|
|
}
|
|
|
- if (searchInput.createTime) {
|
|
|
|
|
- data.set("startTime", searchInput.createTime[0]);
|
|
|
|
|
- data.set("endTime", searchInput.createTime[1]);
|
|
|
|
|
|
|
+ if (searchInput.orderTime) {
|
|
|
|
|
+ data.createStart = searchInput.orderTime[0];
|
|
|
|
|
+ data.createEnd = searchInput.orderTime[1];
|
|
|
}
|
|
}
|
|
|
- if (searchInput.route) {
|
|
|
|
|
- data.set("route", searchInput.route);
|
|
|
|
|
|
|
+ data.type = searchInput.type;
|
|
|
|
|
+ data.consumeType = searchInput.consumeType;
|
|
|
|
|
+ if (searchInput.username) {
|
|
|
|
|
+ data.username = searchInput.username;
|
|
|
}
|
|
}
|
|
|
- data.set("mobile", searchInput.mobile);
|
|
|
|
|
- data.set("state", searchInput.state);
|
|
|
|
|
- // data.set("yy_date", searchInput.yy_date);
|
|
|
|
|
let res = await axios({
|
|
let res = await axios({
|
|
|
- method: "post",
|
|
|
|
|
- url: api.value + "/carBook/brectoExcel.action",
|
|
|
|
|
|
|
+ method: "get",
|
|
|
|
|
+ url: api.value + "/cardtoExcel.action",
|
|
|
headers: {
|
|
headers: {
|
|
|
token: sessionStorage.getItem("token"),
|
|
token: sessionStorage.getItem("token"),
|
|
|
},
|
|
},
|
|
|
- data: data,
|
|
|
|
|
|
|
+ params: data,
|
|
|
});
|
|
});
|
|
|
console.log(res);
|
|
console.log(res);
|
|
|
if (res.data.code == 200) {
|
|
if (res.data.code == 200) {
|
|
@@ -608,6 +607,7 @@ const downLoad = lodash.debounce(async () => {
|
|
|
// elt.style.display = "none";
|
|
// elt.style.display = "none";
|
|
|
// document.body.appendChild(elt);
|
|
// document.body.appendChild(elt);
|
|
|
// elt.click();
|
|
// elt.click();
|
|
|
|
|
+
|
|
|
var downloadPath =
|
|
var downloadPath =
|
|
|
"https://car.meiyishuoo.com/ride-sharing" + res.data.downurl;
|
|
"https://car.meiyishuoo.com/ride-sharing" + res.data.downurl;
|
|
|
console.log("获得地址数据:", downloadPath);
|
|
console.log("获得地址数据:", downloadPath);
|