This commit is contained in:
张良(004796)
2024-01-22 15:22:17 +08:00
parent a9dff6a4af
commit a1c32dbbef

View File

@@ -9,86 +9,6 @@
placeholder="请选择"> placeholder="请选择">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="充值金额" prop="expInMoney">
<el-input
v-model="queryParams.expInMoney"
placeholder="请输入充值金额"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="提现金额" prop="outMoney">
<el-input
v-model="queryParams.outMoney"
placeholder="请输入提现金额"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="vip金额" prop="vipInMoney">
<el-input
v-model="queryParams.vipInMoney"
placeholder="请输入vip金额"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="提现数量" prop="cashCount">
<el-input
v-model="queryParams.cashCount"
placeholder="请输入提现数量"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="充值订单" prop="orderCount">
<el-input
v-model="queryParams.orderCount"
placeholder="请输入充值订单"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="vip订单" prop="vipCount">
<el-input
v-model="queryParams.vipCount"
placeholder="请输入vip订单"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="增加金币总数量" prop="modifyCoinAdd">
<el-input
v-model="queryParams.modifyCoinAdd"
placeholder="请输入增加金币总数量"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="减少金币总数量" prop="modifyCoinSub">
<el-input
v-model="queryParams.modifyCoinSub"
placeholder="请输入减少金币总数量"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="增加收益金币总数量" prop="modifyIncomeAdd">
<el-input
v-model="queryParams.modifyIncomeAdd"
placeholder="请输入增加收益金币总数量"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="减少收益金币总数量" prop="modifyIncomeSub">
<el-input
v-model="queryParams.modifyIncomeSub"
placeholder="请输入减少收益金币总数量"
clearable
@keyup.enter.native="handleQuery"
/>
</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>
@@ -100,83 +20,50 @@
<el-button <el-button
type="primary" type="primary"
plain plain
icon="el-icon-plus" icon="el-icon-refresh"
size="mini" size="mini"
@click="handleAdd" @click="handleRefreshToday"
v-hasPermi="['cai:dayIncomeStatistics:add']" >重新统计当天数据</el-button>
>新增</el-button>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
type="success" type="success"
plain plain
icon="el-icon-edit" icon="el-icon-refresh"
size="mini" size="mini"
:disabled="single" @click="handleRefreshLastday"
@click="handleUpdate" >重新统计昨天数据</el-button>
v-hasPermi="['cai:dayIncomeStatistics:edit']"
>修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['cai:dayIncomeStatistics:remove']"
>删除</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['cai:dayIncomeStatistics:export']"
>导出</el-button>
</el-col> </el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row> </el-row>
<el-table v-loading="loading" :data="dayIncomeStatisticsList" @selection-change="handleSelectionChange"> <el-table v-loading="loading" :data="dayIncomeStatisticsList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" /> <el-table-column label="日期" align="center" prop="date" width="90" />
<el-table-column label="" align="center" prop="id" v-if="true"/> <el-table-column label="充值金额" align="center" prop="expInMoney" />
<el-table-column label="" align="center" prop="date" width="180"> <el-table-column label="充值笔数" align="center" prop="orderCount" />
<template slot-scope="scope"> <el-table-column label="提现金额" align="center" prop="outMoney" />
<span>{{ parseTime(scope.row.date, '{y}-{m}-{d}') }}</span> <el-table-column label="打款笔数" align="center" prop="cashCount" />
<el-table-column label="vip收入" align="center" prop="vipInMoney" />
<el-table-column label="vip笔数" align="center" prop="vipCount" />
<el-table-column label="当日差额" align="center" prop="diff">
<template v-slot="scope">
<span :class="scope.row.diff >= 0 ? 'font-red': 'font-green' ">{{ scope.row.diff }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="充值金额" align="center" prop="expInMoney" /> <el-table-column label="手动加余额" align="center" prop="modifyCoinAdd" />
<el-table-column label="提现金额" align="center" prop="outMoney" /> <el-table-column label="手动减余额" align="center" prop="modifyCoinSub" />
<el-table-column label="vip金额" align="center" prop="vipInMoney" /> <el-table-column label="手动加收益" align="center" prop="modifyIncomeAdd" />
<el-table-column label="提现数量" align="center" prop="cashCount" /> <el-table-column label="手动减收益" align="center" prop="modifyIncomeSub" />
<el-table-column label="充值订单" align="center" prop="orderCount" /> <el-table-column label="最近更新时间" align="center" prop="updateTime" width="160"/>
<el-table-column label="vip订单" align="center" prop="vipCount" /> <!-- <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<el-table-column label="增加金币总数量" align="center" prop="modifyCoinAdd" /> <template v-slot="scope">
<el-table-column label="减少金币总数量" align="center" prop="modifyCoinSub" />
<el-table-column label="增加收益金币总数量" align="center" prop="modifyIncomeAdd" />
<el-table-column label="减少收益金币总数量" align="center" prop="modifyIncomeSub" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button <el-button
size="mini" size="mini"
type="text" type="text"
icon="el-icon-edit" icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['cai:dayIncomeStatistics:edit']"
>修改</el-button> >修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['cai:dayIncomeStatistics:remove']"
>删除</el-button>
</template> </template>
</el-table-column> </el-table-column>-->
</el-table> </el-table>
<pagination <pagination
@@ -186,66 +73,20 @@
:limit.sync="queryParams.pageSize" :limit.sync="queryParams.pageSize"
@pagination="getList" @pagination="getList"
/> />
<!-- 添加或修改每日账单统计对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="" prop="date">
<el-date-picker clearable
v-model="form.date"
type="datetime"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择">
</el-date-picker>
</el-form-item>
<el-form-item label="充值金额" prop="expInMoney">
<el-input v-model="form.expInMoney" placeholder="请输入充值金额" />
</el-form-item>
<el-form-item label="提现金额" prop="outMoney">
<el-input v-model="form.outMoney" placeholder="请输入提现金额" />
</el-form-item>
<el-form-item label="vip金额" prop="vipInMoney">
<el-input v-model="form.vipInMoney" placeholder="请输入vip金额" />
</el-form-item>
<el-form-item label="提现数量" prop="cashCount">
<el-input v-model="form.cashCount" placeholder="请输入提现数量" />
</el-form-item>
<el-form-item label="充值订单" prop="orderCount">
<el-input v-model="form.orderCount" placeholder="请输入充值订单" />
</el-form-item>
<el-form-item label="vip订单" prop="vipCount">
<el-input v-model="form.vipCount" placeholder="请输入vip订单" />
</el-form-item>
<el-form-item label="增加金币总数量" prop="modifyCoinAdd">
<el-input v-model="form.modifyCoinAdd" placeholder="请输入增加金币总数量" />
</el-form-item>
<el-form-item label="减少金币总数量" prop="modifyCoinSub">
<el-input v-model="form.modifyCoinSub" placeholder="请输入减少金币总数量" />
</el-form-item>
<el-form-item label="增加收益金币总数量" prop="modifyIncomeAdd">
<el-input v-model="form.modifyIncomeAdd" placeholder="请输入增加收益金币总数量" />
</el-form-item>
<el-form-item label="减少收益金币总数量" prop="modifyIncomeSub">
<el-input v-model="form.modifyIncomeSub" placeholder="请输入减少收益金币总数量" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button :loading="buttonLoading" type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div> </div>
</template> </template>
<script> <script>
import { listDayIncomeStatistics, getDayIncomeStatistics, delDayIncomeStatistics, addDayIncomeStatistics, updateDayIncomeStatistics } from "@/api/cai/dayIncomeStatistics"; import {
listDayIncomeStatistics,
refreshLastDayDayIncomeStatistics,
refreshTodayDayIncomeStatistics
} from '@/api/cai/dayIncomeStatistics'
export default { export default {
name: "DayIncomeStatistics", name: "DayIncomeStatistics",
data() { data() {
return { return {
// 按钮loading
buttonLoading: false,
// 遮罩层 // 遮罩层
loading: true, loading: true,
// 选中数组 // 选中数组
@@ -260,73 +101,12 @@ export default {
total: 0, total: 0,
// 每日账单统计表格数据 // 每日账单统计表格数据
dayIncomeStatisticsList: [], dayIncomeStatisticsList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数 // 查询参数
queryParams: { queryParams: {
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 10,
date: undefined, date: undefined,
expInMoney: undefined,
outMoney: undefined,
vipInMoney: undefined,
cashCount: undefined,
orderCount: undefined,
vipCount: undefined,
modifyCoinAdd: undefined,
modifyCoinSub: undefined,
modifyIncomeAdd: undefined,
modifyIncomeSub: undefined,
}, },
// 表单参数
form: {},
// 表单校验
rules: {
id: [
{ required: true, message: "不能为空", trigger: "blur" }
],
date: [
{ required: true, message: "不能为空", trigger: "blur" }
],
expInMoney: [
{ required: true, message: "充值金额不能为空", trigger: "blur" }
],
outMoney: [
{ required: true, message: "提现金额不能为空", trigger: "blur" }
],
vipInMoney: [
{ required: true, message: "vip金额不能为空", trigger: "blur" }
],
cashCount: [
{ required: true, message: "提现数量不能为空", trigger: "blur" }
],
orderCount: [
{ required: true, message: "充值订单不能为空", trigger: "blur" }
],
vipCount: [
{ required: true, message: "vip订单不能为空", trigger: "blur" }
],
modifyCoinAdd: [
{ required: true, message: "增加金币总数量不能为空", trigger: "blur" }
],
modifyCoinSub: [
{ required: true, message: "减少金币总数量不能为空", trigger: "blur" }
],
modifyIncomeAdd: [
{ required: true, message: "增加收益金币总数量不能为空", trigger: "blur" }
],
modifyIncomeSub: [
{ required: true, message: "减少收益金币总数量不能为空", trigger: "blur" }
],
createTime: [
{ required: true, message: "不能为空", trigger: "blur" }
],
updateTime: [
{ required: true, message: "不能为空", trigger: "blur" }
]
}
}; };
}, },
created() { created() {
@@ -337,36 +117,18 @@ export default {
getList() { getList() {
this.loading = true; this.loading = true;
listDayIncomeStatistics(this.queryParams).then(response => { listDayIncomeStatistics(this.queryParams).then(response => {
this.dayIncomeStatisticsList = response.rows; response.rows.forEach((value,index) => {
value.diff = parseInt(value.expInMoney) + parseInt(value.vipInMoney) - parseInt(value.outMoney)
value.modifyCoinAdd = value.modifyCoinAdd / 100
value.modifyCoinSub = value.modifyCoinSub / 100
value.modifyIncomeAdd = value.modifyIncomeAdd / 100
value.modifyIncomeSub = value.modifyIncomeSub / 100
})
this.dayIncomeStatisticsList = response.rows
this.total = response.total; this.total = response.total;
this.loading = false; this.loading = false;
}); });
}, },
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
id: undefined,
date: undefined,
expInMoney: undefined,
outMoney: undefined,
vipInMoney: undefined,
cashCount: undefined,
orderCount: undefined,
vipCount: undefined,
modifyCoinAdd: undefined,
modifyCoinSub: undefined,
modifyIncomeAdd: undefined,
modifyIncomeSub: undefined,
createTime: undefined,
updateTime: undefined
};
this.resetForm("form");
},
/** 搜索按钮操作 */ /** 搜索按钮操作 */
handleQuery() { handleQuery() {
this.queryParams.pageNum = 1; this.queryParams.pageNum = 1;
@@ -383,70 +145,49 @@ export default {
this.single = selection.length!==1 this.single = selection.length!==1
this.multiple = !selection.length this.multiple = !selection.length
}, },
/** 新增按钮操作 */ handleRefreshToday() {
handleAdd() { this.$modal.confirm('是否重新统计当天统计数据?').then(() => {
this.reset();
this.open = true;
this.title = "添加每日账单统计";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.loading = true;
this.reset();
const id = row.id || this.ids
getDayIncomeStatistics(id).then(response => {
this.loading = false;
this.form = response.data;
this.open = true;
this.title = "修改每日账单统计";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
this.buttonLoading = true;
if (this.form.id != null) {
updateDayIncomeStatistics(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
} else {
addDayIncomeStatistics(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal.confirm('是否确认删除每日账单统计编号为"' + ids + '"的数据项?').then(() => {
this.loading = true; this.loading = true;
return delDayIncomeStatistics(ids); return refreshTodayDayIncomeStatistics();
}).then(() => { }).then(() => {
this.loading = false; this.loading = false;
this.getList(); this.getList();
this.$modal.msgSuccess("删除成功"); this.$modal.msgSuccess("刷新当天统计成功");
}).catch(() => {
}).finally(() => {
this.loading = false;
});
},
/** 修改按钮操作 */
handleRefreshLastday(row) {
this.$modal.confirm('是否重新统计昨天统计数据?').then(() => {
this.loading = true;
return refreshLastDayDayIncomeStatistics();
}).then(() => {
this.loading = false;
this.getList();
this.$modal.msgSuccess("刷新昨天统计成功");
}).catch(() => { }).catch(() => {
}).finally(() => { }).finally(() => {
this.loading = false; this.loading = false;
}); });
}, },
/** 导出按钮操作 */
handleExport() {
this.download('cai/dayIncomeStatistics/export', {
...this.queryParams
}, `dayIncomeStatistics_${new Date().getTime()}.xlsx`)
}
} }
}; };
</script> </script>
<style lang="scss" scoped>
.context-avatar-center {
display: flex;
align-items: center; /* 垂直居中 */
justify-content: center; /* 水平居中 */
}
.font-red {
color: red;
}
.font-green {
color: green;
}
.font-blue {
color: blue;
}
</style>