|
@ -6,13 +6,11 @@ import { AiFillRead } from 'vue-icons-plus/ai' |
|
|
import axios from 'axios' |
|
|
import axios from 'axios' |
|
|
import moment from 'moment' |
|
|
import moment from 'moment' |
|
|
import API from '@/util/http.js' |
|
|
import API from '@/util/http.js' |
|
|
|
|
|
|
|
|
const selectData = ref({ |
|
|
const selectData = ref({ |
|
|
jwcode: '', |
|
|
jwcode: '', |
|
|
market: '', |
|
|
market: '', |
|
|
startTime: '', |
|
|
startTime: '', |
|
|
endTime: '', |
|
|
endTime: '', |
|
|
|
|
|
|
|
|
}) |
|
|
}) |
|
|
const permanentBeans = ref(0) |
|
|
const permanentBeans = ref(0) |
|
|
const freeBean = ref(0) |
|
|
const freeBean = ref(0) |
|
@ -329,58 +327,39 @@ onMounted(async function () { |
|
|
}) |
|
|
}) |
|
|
</script> |
|
|
</script> |
|
|
<template> |
|
|
<template> |
|
|
<el-card style="margin-bottom: 20px;margin-top: 10px"> |
|
|
|
|
|
<el-row style="margin-bottom: 10px"> |
|
|
|
|
|
<el-col :span="3"> |
|
|
|
|
|
<div class="head-card-element"> |
|
|
|
|
|
<el-text class="mx-1" size="large">精网号:</el-text> |
|
|
|
|
|
<el-input v-model="selectData.jwcode" placeholder="请输入精网号" style="width: 115px" clearable /> |
|
|
|
|
|
</div> |
|
|
|
|
|
</el-col> |
|
|
|
|
|
<el-col :span="4"> |
|
|
|
|
|
<div class="head-card-element"> |
|
|
|
|
|
<el-text class="mx-1" size="large">所属地区:</el-text> |
|
|
|
|
|
<el-select v-model="selectData.market" placeholder="请选择所属地区" clearable style="width:150px"> |
|
|
|
|
|
|
|
|
<el-card class="condition"> |
|
|
|
|
|
<el-text size="large">精网号:</el-text> |
|
|
|
|
|
<el-input v-model="selectData.jwcode" placeholder="请输入精网号" style="width: 9vw;margin-right:1vw" clearable /> |
|
|
|
|
|
|
|
|
|
|
|
<el-text size="large">所属地区:</el-text> |
|
|
|
|
|
<el-select v-model="selectData.market" placeholder="请选择所属地区" clearable style="width: 9vw;margin-right:1vw"> |
|
|
<el-option v-for="item in market" :key="item" :label="item" :value="item" /> |
|
|
<el-option v-for="item in market" :key="item" :label="item" :value="item" /> |
|
|
</el-select> |
|
|
</el-select> |
|
|
</div> |
|
|
|
|
|
</el-col> |
|
|
|
|
|
<el-col :span="17"> |
|
|
|
|
|
<div class="head-card-element"> |
|
|
|
|
|
<el-text class="mx-1" size="large">充值时间:</el-text> |
|
|
|
|
|
<el-date-picker v-model="getTime" type="datetimerange" range-separator="至" |
|
|
|
|
|
start-placeholder="起始时间" end-placeholder="结束时间" style="width: 350px" |
|
|
|
|
|
@change="handleDatePickerChange" :default-time="defaultTime" /> |
|
|
|
|
|
<el-button @click="getToday()" style="margin-left: 10px" |
|
|
|
|
|
:type="activeTimeRange === 'today' ? 'primary' : ''"> 今 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<el-text size="large">充值时间:</el-text> |
|
|
|
|
|
<el-date-picker v-model="getTime" type="datetimerange" range-separator="至" start-placeholder="起始时间" |
|
|
|
|
|
end-placeholder="结束时间" style="width: 20vw" @change="handleDatePickerChange" :default-time="defaultTime" /> |
|
|
|
|
|
<el-button @click="getToday()" style="margin-left: 10px" :type="activeTimeRange === 'today' ? 'primary' : ''"> 今 |
|
|
</el-button> |
|
|
</el-button> |
|
|
<el-button @click="getYesterday()" style="margin-left: 10px" |
|
|
<el-button @click="getYesterday()" style="margin-left: 10px" |
|
|
:type="activeTimeRange === 'yesterday' ? 'primary' : ''"> 昨 |
|
|
:type="activeTimeRange === 'yesterday' ? 'primary' : ''"> 昨 |
|
|
</el-button> |
|
|
</el-button> |
|
|
<el-button @click="get7Days()" style="margin-left: 10px" |
|
|
|
|
|
:type="activeTimeRange === '7days' ? 'primary' : ''"> 近7天 |
|
|
|
|
|
|
|
|
<el-button @click="get7Days()" style="margin-left: 10px" :type="activeTimeRange === '7days' ? 'primary' : ''"> |
|
|
|
|
|
近7天 |
|
|
</el-button> |
|
|
</el-button> |
|
|
<el-button type="success" @click="reset()">重置</el-button> |
|
|
<el-button type="success" @click="reset()">重置</el-button> |
|
|
<el-button type="primary" @click="search()">查询</el-button> |
|
|
<el-button type="primary" @click="search()">查询</el-button> |
|
|
<el-button type="primary" style="width: 80px;" @click="exportExcel()">导出Excel</el-button> |
|
|
<el-button type="primary" style="width: 80px;" @click="exportExcel()">导出Excel</el-button> |
|
|
<el-button type="primary" style="width: 95px;" @click="openExportList">查看导出列表</el-button> |
|
|
<el-button type="primary" style="width: 95px;" @click="openExportList">查看导出列表</el-button> |
|
|
</div> |
|
|
|
|
|
</el-col> |
|
|
|
|
|
</el-row> |
|
|
|
|
|
<el-row> |
|
|
|
|
|
|
|
|
|
|
|
</el-row> |
|
|
|
|
|
</el-card> |
|
|
</el-card> |
|
|
<el-card> |
|
|
<el-card> |
|
|
<div class="bean-info"> |
|
|
|
|
|
<!-- 汉字用 <strong> 加粗,动态数据用 <span> 包一层单独改色 --> |
|
|
|
|
|
|
|
|
<div> |
|
|
金豆总数:{{ format3(beanNum) }} |
|
|
金豆总数:{{ format3(beanNum) }} |
|
|
付费金豆数:{{ format3(permanentBeans) }} |
|
|
付费金豆数:{{ format3(permanentBeans) }} |
|
|
免费金豆数:{{ format3(freeBean) }} |
|
|
免费金豆数:{{ format3(freeBean) }} |
|
|
</div> |
|
|
</div> |
|
|
<!-- 设置表格容器的高度和滚动样式 --> |
|
|
|
|
|
<div style="height: 520px; overflow-y: auto;margin-top: 10px;"> |
|
|
|
|
|
<el-table :data="tableData" style="width: 100%" height="520px" @sort-change="handleSortChange"> |
|
|
|
|
|
|
|
|
<div> |
|
|
|
|
|
<el-table :data="tableData" style="width: 82.8vw;height:60vh;" @sort-change="handleSortChange"> |
|
|
<el-table-column type="index" label="序号" width="80px" fixed="left"> |
|
|
<el-table-column type="index" label="序号" width="80px" fixed="left"> |
|
|
<template #default="scope"> |
|
|
<template #default="scope"> |
|
|
<span>{{ |
|
|
<span>{{ |
|
@ -403,15 +382,15 @@ onMounted(async function () { |
|
|
</div> |
|
|
</div> |
|
|
|
|
|
|
|
|
<!-- 分页 --> |
|
|
<!-- 分页 --> |
|
|
<div class="pagination" style="margin-top: 20px"> |
|
|
|
|
|
|
|
|
<div class="pagination" style="margin-top: 1vw"> |
|
|
<el-pagination background :page-size="getObj.pageSize" :page-sizes="[5, 10, 20, 50, 100]" |
|
|
<el-pagination background :page-size="getObj.pageSize" :page-sizes="[5, 10, 20, 50, 100]" |
|
|
layout="total, sizes, prev, pager, next, jumper" :total="total" |
|
|
|
|
|
@size-change="handlePageSizeChange" @current-change="handleCurrentChange"></el-pagination> |
|
|
|
|
|
|
|
|
layout="total, sizes, prev, pager, next, jumper" :total="total" @size-change="handlePageSizeChange" |
|
|
|
|
|
@current-change="handleCurrentChange"></el-pagination> |
|
|
</div> |
|
|
</div> |
|
|
</el-card> |
|
|
</el-card> |
|
|
<!-- 导出弹窗 --> |
|
|
<!-- 导出弹窗 --> |
|
|
<el-dialog v-model="exportListVisible" title="导出列表" width="80%"> |
|
|
|
|
|
<el-table :data="exportList" style="width: 100% ;height: 60vh;" :loading="exportListLoading"> |
|
|
|
|
|
|
|
|
<el-dialog v-model="exportListVisible" title="导出列表" width="80vw"> |
|
|
|
|
|
<el-table :data="exportList" style="width: 80vw;height: 60vh;" :loading="exportListLoading"> |
|
|
<el-table-column prop="fileName" label="文件名" /> |
|
|
<el-table-column prop="fileName" label="文件名" /> |
|
|
<el-table-column prop="state" label="状态"> |
|
|
<el-table-column prop="state" label="状态"> |
|
|
<template #default="scope"> |
|
|
<template #default="scope"> |
|
@ -441,4 +420,13 @@ onMounted(async function () { |
|
|
</template> |
|
|
</template> |
|
|
</el-dialog> |
|
|
</el-dialog> |
|
|
</template> |
|
|
</template> |
|
|
<style scoped></style> |
|
|
|
|
|
|
|
|
<style scoped> |
|
|
|
|
|
.condition { |
|
|
|
|
|
width: 82.8vw; |
|
|
|
|
|
height: 4vw; |
|
|
|
|
|
margin-bottom: 0.5vh; |
|
|
|
|
|
display: flex; |
|
|
|
|
|
justify-content: space-between; |
|
|
|
|
|
align-items: center; |
|
|
|
|
|
} |
|
|
|
|
|
</style> |