Browse Source

修改所有表格分页数据

test
zhaoln 1 month ago
parent
commit
b921ec3fff
  1. 48
      gold-system/src/views/audit/rechargeAudit.vue
  2. 577
      gold-system/src/views/audit/refundAudit.vue
  3. 379
      gold-system/src/views/consume/allConsume.vue
  4. 42
      gold-system/src/views/goldBeen/goldenBeenBalance.vue
  5. 22
      gold-system/src/views/goldBeen/goldenBeenConsum.vue
  6. 22
      gold-system/src/views/goldBeen/goldenBeenDetail.vue
  7. 348
      gold-system/src/views/managerecharge/activity.vue
  8. 48
      gold-system/src/views/managerecharge/rate.vue
  9. 429
      gold-system/src/views/permissions/index.vue
  10. 47
      gold-system/src/views/recharge/adminRecharge.vue
  11. 47
      gold-system/src/views/recharge/allRecharge.vue
  12. 47
      gold-system/src/views/refund/allRefund.vue
  13. 47
      gold-system/src/views/usergold/index.vue
  14. 109
      gold-system/src/views/usergoldInfo/index.vue

48
gold-system/src/views/audit/rechargeAudit.vue

@ -395,7 +395,14 @@ const checkNumber = function () {
})
}
}
const handlePageSizeChange = function (val) {
getObj.value.pageSize = val
get()
}
const handleCurrentChange = function (val) {
getObj.value.pageNum = val
get()
}
// ====================================
//
const pass = function (row) {
@ -840,41 +847,12 @@ const handleSortChange = (column) => {
<el-pagination
background
:page-size="getObj.pageSize"
layout="slot"
:page-sizes="[5, 10, 20, 50, 100]"
layout="total, sizes, prev, pager, next, jumper"
:total="total"
>
<div>{{ total }},每页</div>
<el-select
v-model="getObj.pageSize"
class="page-size"
@change="get()"
style="width: 80px"
>
<el-option
v-for="item in [5, 10, 20, 50, 100]"
:key="item"
:label="item"
:value="item"
></el-option>
</el-select>
<div></div>
</el-pagination>
<el-pagination
background
layout="prev, pager, next,slot"
:page-size="getObj.pageSize"
:total="total"
:current-page="getObj.pageNum"
@current-change="get"
>
<div>跳至</div>
<el-input
v-model="getObj.pageNum"
style="width: 40px"
@change="checkNumber"
/>
<div></div>
</el-pagination>
@size-change="handlePageSizeChange"
@current-change="handleCurrentChange"
></el-pagination>
</div>
</el-card>
</el-col>

577
gold-system/src/views/audit/refundAudit.vue

@ -1,73 +1,73 @@
<script setup>
import { ref, onMounted, reactive, computed } from "vue";
import ElementPlus from "element-plus";
import request from "@/util/http";
import { ElMessage, ElMessageBox } from "element-plus";
import { AiFillRead } from "vue-icons-plus/ai";
import axios from "axios";
import moment from "moment";
import API from "../../api/index.js";
import { ref, onMounted, reactive, computed } from 'vue'
import ElementPlus from 'element-plus'
import request from '@/util/http'
import { ElMessage, ElMessageBox } from 'element-plus'
import { AiFillRead } from 'vue-icons-plus/ai'
import axios from 'axios'
import moment from 'moment'
import API from '../../api/index.js'
//
//
const admin = ref({
adminId: 1,
name: "赵刚",
area: "中国",
});
name: '赵刚',
area: '中国'
})
//
const adminData = ref({});
const adminData = ref({})
const getAdminData = async function () {
try {
const result = await request({
url: "/admin/userinfo",
data: {},
});
adminData.value = result;
console.log("请求成功", result);
console.log("用户信息", adminData.value);
url: '/admin/userinfo',
data: {}
})
adminData.value = result
console.log('请求成功', result)
console.log('用户信息', adminData.value)
} catch (error) {
console.log("请求失败", error);
console.log('请求失败', error)
}
};
}
//
const tableData = ref([]);
const tableData = ref([])
// ======================================
// detail
const detail = ref({});
const detail = ref({})
//
const getObj = ref({
pageNum: 1,
pageSize: 50,
});
pageSize: 50
})
//
const total = ref(100);
const total = ref(100)
//
const getTime = ref([]);
const getTime = ref([])
//
const product = ref([]);
const product = ref([])
//
const allData = ref([]);
const allData = ref([])
//
const area = ref([]);
const area = ref([])
// ======================================
//
const rejectVisible = ref(false);
const rejectVisible = ref(false)
//
const rejectObj = ref({});
const rejectObj = ref({})
//
const passObj = ref({});
const passObj = ref({})
//
const activeName = ref("all");
const activeName = ref('all')
// 退
const refundType = [
{
value: "退款商品",
label: "退款商品",
},
];
value: '退款商品',
label: '退款商品'
}
]
// //
// const tableHeight = computed(function () {
@ -75,421 +75,425 @@ const refundType = [
// });
// ref
const Ref = ref(null);
const Ref = ref(null)
//
//
//
const trueGold = ref(0);
const trueCount = ref(0);
const trueGold = ref(0)
const trueCount = ref(0)
//
const pendingCount = ref(0);
const pendingCount = ref(0)
//
const pendingGold = ref(0);
const pendingGold = ref(0)
//
const approvedCount = ref(0);
const approvedCount = ref(0)
//
const approvedGold = ref(0);
const approvedGold = ref(0)
//
const rejectedCount = ref(0);
const rejectedCount = ref(0)
//
const rejectedGold = ref(0);
const rejectedGold = ref(0)
// ==================================================================
//
const get = async function (val) {
try {
//
if (adminData.value.area === "泰国") {
rechargeVo.value.areas = ["泰国", "越南"];
} else if (adminData.value.area !== "总部") {
rechargeVo.value.area = adminData.value.area;
if (adminData.value.area === '泰国') {
rechargeVo.value.areas = ['泰国', '越南']
} else if (adminData.value.area !== '总部') {
rechargeVo.value.area = adminData.value.area
}
//
if (typeof val === "number") {
getObj.value.pageNum = val;
if (typeof val === 'number') {
getObj.value.pageNum = val
}
//
if (getTime.value != null) {
if (getTime.value.startDate != "" && getTime.value.endDate != "") {
detail.value.startDate = getTime.value[0];
detail.value.endDate = getTime.value[1];
if (getTime.value.startDate != '' && getTime.value.endDate != '') {
detail.value.startDate = getTime.value[0]
detail.value.endDate = getTime.value[1]
}
} else {
detail.value.startDate = "";
detail.value.endDate = "";
detail.value.startDate = ''
detail.value.endDate = ''
}
detail.value.sortField = sortField.value;
detail.value.sortOrder = sortOrder.value;
console.log("搜索参数", getObj.value);
detail.value.sortField = sortField.value
detail.value.sortOrder = sortOrder.value
console.log('搜索参数', getObj.value)
// POST
const result = await request({
url: "/audit/audit/refund",
url: '/audit/audit/refund',
data: {
pageNum: getObj.value.pageNum,
pageSize: getObj.value.pageSize,
detail: {
...detail.value,
},
},
});
const detailWithoutSort = { ...detail.value };
delete detailWithoutSort.sortField;
delete detailWithoutSort.sortOrder;
...detail.value
}
}
})
const detailWithoutSort = { ...detail.value }
delete detailWithoutSort.sortField
delete detailWithoutSort.sortOrder
const result2 = await request({
url: "/refund/RefundA",
data: detailWithoutSort,
});
url: '/refund/RefundA',
data: detailWithoutSort
})
//
if (result2.data) {
result2.data.forEach((item) => {
switch (item.status) {
case "待审核":
case '待审核':
// item.raudit 0
pendingCount.value = item.raudit || 0;
pendingCount.value = item.raudit || 0
// item.sumRaudit 0
pendingGold.value = item.sumRaudit || 0;
break;
case "已通过":
approvedCount.value = item.raudit || 0;
approvedGold.value = item.sumRaudit || 0;
break;
case "已驳回":
rejectedCount.value = item.raudit || 0;
rejectedGold.value = item.sumRaudit || 0;
break;
pendingGold.value = item.sumRaudit || 0
break
case '已通过':
approvedCount.value = item.raudit || 0
approvedGold.value = item.sumRaudit || 0
break
case '已驳回':
rejectedCount.value = item.raudit || 0
rejectedGold.value = item.sumRaudit || 0
break
}
});
})
}
trueGold.value =
pendingGold.value + approvedGold.value + rejectedGold.value;
trueGold.value = pendingGold.value + approvedGold.value + rejectedGold.value
trueCount.value =
pendingCount.value + approvedCount.value + rejectedCount.value;
pendingCount.value + approvedCount.value + rejectedCount.value
//
console.log("请求成功", result);
console.log('请求成功', result)
//
tableData.value = result.data.list;
console.log("tableData", tableData.value);
tableData.value = result.data.list
console.log('tableData', tableData.value)
//
total.value = result.data.total;
console.log("total", total.value);
total.value = result.data.total
console.log('total', total.value)
} catch (error) {
console.log("请求失败", error);
console.log('请求失败', error)
//
}
};
}
//
const search = function () {
getObj.value.pageNum = 1;
get();
};
getObj.value.pageNum = 1
get()
}
//
const reset = function () {
detail.value.area = "";
detail.value.jwcode = "";
detail.value.refundType = "";
detail.value.refundGoods = "";
detail.value.startDate = "";
detail.value.endDate = "";
sortField.value = "";
sortOrder.value = "";
getTime.value = {};
};
detail.value.area = ''
detail.value.jwcode = ''
detail.value.refundType = ''
detail.value.refundGoods = ''
detail.value.startDate = ''
detail.value.endDate = ''
sortField.value = ''
sortOrder.value = ''
getTime.value = {}
}
//
const getToday = function () {
const today = new Date();
const today = new Date()
const startDate = new Date(
today.getFullYear(),
today.getMonth(),
today.getDate()
);
)
const endDate = new Date(
today.getFullYear(),
today.getMonth(),
today.getDate() + 1
);
getTime.value = [startDate, endDate];
console.log("getTime", getTime.value);
get();
};
)
getTime.value = [startDate, endDate]
console.log('getTime', getTime.value)
get()
}
//
const getYesterday = function () {
const yesterday = new Date();
yesterday.setDate(yesterday.getDate() - 1);
const yesterday = new Date()
yesterday.setDate(yesterday.getDate() - 1)
const startDate = new Date(
yesterday.getFullYear(),
yesterday.getMonth(),
yesterday.getDate()
);
)
const endDate = new Date(
yesterday.getFullYear(),
yesterday.getMonth(),
yesterday.getDate() + 1
);
getTime.value = [startDate, endDate];
console.log("getTime", getTime.value);
get();
};
)
getTime.value = [startDate, endDate]
console.log('getTime', getTime.value)
get()
}
// 7
const get7Days = function () {
const today = new Date();
const today = new Date()
const startDate = new Date(
today.getFullYear(),
today.getMonth(),
today.getDate() - 6
);
)
const endDate = new Date(
today.getFullYear(),
today.getMonth(),
today.getDate() + 1
);
getTime.value = [startDate, endDate];
console.log("getTime", getTime.value);
get();
};
)
getTime.value = [startDate, endDate]
console.log('getTime', getTime.value)
get()
}
//
const adminAll = function () {
console.log("adminAll");
detail.value.status = "";
getObj.value.pageNum = 1;
get();
};
console.log('adminAll')
detail.value.status = ''
getObj.value.pageNum = 1
get()
}
//
const adminWait = async function () {
detail.value.status = 0;
getObj.value.pageNum = 1;
await get();
console.log("adminWait");
trueGold.value = pendingGold.value;
trueCount.value = pendingCount.value;
};
detail.value.status = 0
getObj.value.pageNum = 1
await get()
console.log('adminWait')
trueGold.value = pendingGold.value
trueCount.value = pendingCount.value
}
//
const adminPass = async function () {
detail.value.status = 1;
getObj.value.pageNum = 1;
await get();
console.log("adminPass");
trueGold.value = approvedGold.value;
trueCount.value = approvedCount.value;
};
detail.value.status = 1
getObj.value.pageNum = 1
await get()
console.log('adminPass')
trueGold.value = approvedGold.value
trueCount.value = approvedCount.value
}
//
const adminReject = async function () {
detail.value.status = 2;
getObj.value.pageNum = 1;
await get();
console.log("adminReject");
trueGold.value = rejectedGold.value;
trueCount.value = rejectedCount.value;
};
detail.value.status = 2
getObj.value.pageNum = 1
await get()
console.log('adminReject')
trueGold.value = rejectedGold.value
trueCount.value = rejectedCount.value
}
//
const handleClick = function (tab, event) {
if (tab.props.name === "all") {
adminAll();
} else if (tab.props.name === "wait") {
adminWait();
} else if (tab.props.name === "pass") {
adminPass();
} else if (tab.props.name === "reject") {
adminReject();
if (tab.props.name === 'all') {
adminAll()
} else if (tab.props.name === 'wait') {
adminWait()
} else if (tab.props.name === 'pass') {
adminPass()
} else if (tab.props.name === 'reject') {
adminReject()
}
};
}
//
const getProduct = async function () {
try {
// POST
const result = await request({
url: "/product",
data: {},
});
url: '/product',
data: {}
})
//
console.log("请求成功", result);
console.log('请求成功', result)
//
product.value = result.data;
console.log("产品", product.value);
product.value = result.data
console.log('产品', product.value)
} catch (error) {
console.log("请求失败", error);
console.log('请求失败', error)
//
}
};
}
//
const getArea = async function () {
try {
// POST
const result = await request({
url: "/recharge/user/search",
data: {},
});
url: '/recharge/user/search',
data: {}
})
//
console.log("请求成功", result);
console.log('请求成功', result)
//
area.value = result.data;
console.log("地区", area.value);
area.value = result.data
console.log('地区', area.value)
} catch (error) {
console.log("请求失败", error);
console.log('请求失败', error)
//
}
};
}
//
const checkNumber = function () {
if (typeof parseInt(getObj.value.pageNum) === "number") {
console.log(
"总共有多少页" + Math.ceil(total.value / getObj.value.pageSize)
);
if (typeof parseInt(getObj.value.pageNum) === 'number') {
console.log('总共有多少页' + Math.ceil(total.value / getObj.value.pageSize))
if (
getObj.value.pageNum > 0 &&
getObj.value.pageNum <= Math.ceil(total.value / getObj.value.pageSize)
) {
getObj.value.pageNum = parseInt(getObj.value.pageNum);
console.log("输入的数字合法");
get();
getObj.value.pageNum = parseInt(getObj.value.pageNum)
console.log('输入的数字合法')
get()
} else {
//
ElMessage({
type: "error",
message: "请检查输入内容",
});
type: 'error',
message: '请检查输入内容'
})
}
} else {
//
ElMessage({
type: "error",
message: "请检查输入内容",
});
type: 'error',
message: '请检查输入内容'
})
}
};
}
// ====================================
//
const pass = function (row) {
//
passObj.value.adminId = adminData.value.adminId;
passObj.value.auditId = row.auditId;
passObj.value.status = 1;
passObj.value.refundId = row.refundId;
passObj.value.adminName = row.adminName;
passObj.value.username = row.username;
passObj.value.area = row.area;
console.log("通过对象", passObj.value);
};
passObj.value.adminId = adminData.value.adminId
passObj.value.auditId = row.auditId
passObj.value.status = 1
passObj.value.refundId = row.refundId
passObj.value.adminName = row.adminName
passObj.value.username = row.username
passObj.value.area = row.area
console.log('通过对象', passObj.value)
}
//
const passConfirm = async function () {
try {
console.log("通过对象", passObj.value);
console.log('通过对象', passObj.value)
// POST
const result = await request({
url: "/audit/audit/edit",
data: passObj.value,
});
url: '/audit/audit/edit',
data: passObj.value
})
//
console.log("请求成功", result);
console.log('请求成功', result)
//
get();
get()
//
ElMessage({
type: "success",
message: "通过成功!",
});
type: 'success',
message: '通过成功!'
})
} catch (error) {
console.log("请求失败", error);
console.log('请求失败', error)
//
}
};
}
//
const openRejectVisible = function () {
rejectVisible.value = true;
};
rejectVisible.value = true
}
//
const closeRejectVisible = function () {
rejectVisible.value = false;
};
rejectVisible.value = false
}
//
const reject = function (row) {
//
rejectObj.value.adminId = adminData.value.adminId;
rejectObj.value.auditId = row.auditId;
rejectObj.value.status = 2;
rejectObj.value.reson = "";
rejectObj.value.refundId = row.refundId;
console.log("驳回对象", rejectObj.value);
openRejectVisible();
};
rejectObj.value.adminId = adminData.value.adminId
rejectObj.value.auditId = row.auditId
rejectObj.value.status = 2
rejectObj.value.reson = ''
rejectObj.value.refundId = row.refundId
console.log('驳回对象', rejectObj.value)
openRejectVisible()
}
//
const rejectConfirm = async function () {
Ref.value.validate(async (valid) => {
if (valid) {
try {
console.log("驳回对象", rejectObj.value);
console.log('驳回对象', rejectObj.value)
// POST
const result = await request({
url: "/audit/audit/edit",
data: rejectObj.value,
});
url: '/audit/audit/edit',
data: rejectObj.value
})
//
console.log("请求成功", result);
console.log('请求成功', result)
//
get();
get()
//
closeRejectVisible();
closeRejectVisible()
//
ElMessage({
type: "success",
message: "驳回成功!",
});
type: 'success',
message: '驳回成功!'
})
} catch (error) {
console.log("请求失败", error);
console.log('请求失败', error)
//
}
} else {
//
ElMessage({
type: "error",
message: "请检查输入内容",
});
type: 'error',
message: '请检查输入内容'
})
}
});
};
})
}
const handlePageSizeChange = function (val) {
getObj.value.pageSize = val
get()
}
const handleCurrentChange = function (val) {
getObj.value.pageNum = val
get()
}
//
const rules = reactive({
reson: [{ required: true, message: "请输入驳回理由", trigger: "blur" }],
});
reson: [{ required: true, message: '请输入驳回理由', trigger: 'blur' }]
})
//
onMounted(async function () {
await getAdminData();
await get();
getProduct();
await getArea();
await getArea();
});
await getAdminData()
await get()
getProduct()
await getArea()
await getArea()
})
//
const sortField = ref("");
const sortOrder = ref("");
const sortField = ref('')
const sortOrder = ref('')
//
const handleSortChange = (column) => {
console.log("排序字段:", column.prop);
console.log("排序方式:", column.order);
if (column.prop === "rechargeCoin") {
sortField.value = "recharge_coin";
} else if (column.prop === "taskCoin") {
sortField.value = "task_coin";
} else if (column.prop === "freeCoin") {
sortField.value = "free_coin";
} else if (column.prop === "createTime") {
sortField.value = "create_time";
console.log('排序字段:', column.prop)
console.log('排序方式:', column.order)
if (column.prop === 'rechargeCoin') {
sortField.value = 'recharge_coin'
} else if (column.prop === 'taskCoin') {
sortField.value = 'task_coin'
} else if (column.prop === 'freeCoin') {
sortField.value = 'free_coin'
} else if (column.prop === 'createTime') {
sortField.value = 'create_time'
}
sortOrder.value = column.order === "ascending" ? "ASC" : "DESC";
get();
};
sortOrder.value = column.order === 'ascending' ? 'ASC' : 'DESC'
get()
}
</script>
<template>
@ -735,7 +739,7 @@ const handleSortChange = (column) => {
width="200px"
>
<template #default="scope">
{{ moment(scope.row.createTime).format("YYYY-MM-DD HH:mm:ss") }}
{{ moment(scope.row.createTime).format('YYYY-MM-DD HH:mm:ss') }}
</template>
</el-table-column>
<el-table-column
@ -794,41 +798,12 @@ const handleSortChange = (column) => {
<el-pagination
background
:page-size="getObj.pageSize"
layout="slot"
:page-sizes="[5, 10, 20, 50, 100]"
layout="total, sizes, prev, pager, next, jumper"
:total="total"
>
<div>{{ total }},每页</div>
<el-select
v-model="getObj.pageSize"
class="page-size"
@change="get()"
style="width: 80px"
>
<el-option
v-for="item in [5, 10, 20, 50, 100]"
:key="item"
:label="item"
:value="item"
></el-option>
</el-select>
<div></div>
</el-pagination>
<el-pagination
background
layout="prev, pager, next,slot"
:page-size="getObj.pageSize"
:total="total"
:current-page="getObj.pageNum"
@current-change="get"
>
<div>跳至</div>
<el-input
v-model="getObj.pageNum"
style="width: 40px"
@change="checkNumber"
/>
<div></div>
</el-pagination>
@size-change="handlePageSizeChange"
@current-change="handleCurrentChange"
></el-pagination>
</div>
</el-card>
</el-col>

379
gold-system/src/views/consume/allConsume.vue

@ -1,71 +1,71 @@
<script setup>
import { ref, onMounted, reactive, computed } from "vue";
import ElementPlus from "element-plus";
import { AiFillRead } from "vue-icons-plus/ai";
import { ElMessage, ElMessageBox } from "element-plus";
import axios from "axios";
import API from "../../api/index.js";
import request from "@/util/http";
import { ref, onMounted, reactive, computed } from 'vue'
import ElementPlus from 'element-plus'
import { AiFillRead } from 'vue-icons-plus/ai'
import { ElMessage, ElMessageBox } from 'element-plus'
import axios from 'axios'
import API from '../../api/index.js'
import request from '@/util/http'
//
//
const adminData = ref({});
const adminData = ref({})
const getAdminData = async function () {
try {
const result = await request({
url: "/admin/userinfo",
data: {},
});
adminData.value = result;
console.log("请求成功", result);
console.log("用户信息", adminData.value);
url: '/admin/userinfo',
data: {}
})
adminData.value = result
console.log('请求成功', result)
console.log('用户信息', adminData.value)
} catch (error) {
console.log("请求失败", error);
console.log('请求失败', error)
}
};
}
//
const tableData = ref([]);
const tableData = ref([])
// ======================================
// detailVo
const detailVo = ref({});
const detailVo = ref({})
//
const getObj = ref({
pageNum: 1,
pageSize: 50,
});
pageSize: 50
})
//
const total = ref(100);
const total = ref(100)
//
const getTime = ref([]);
const getTime = ref([])
//
const activity = ref([]);
const activity = ref([])
//
const allData = ref([]);
const allData = ref([])
//
const area = ref([]);
const area = ref([])
//
const activeName = ref("all");
const activeName = ref('all')
//
const consumePlatform = [
{
value: "4",
label: "金币系统",
value: '4',
label: '金币系统'
},
{
value: "1",
label: "ERP系统",
value: '1',
label: 'ERP系统'
},
{
value: "2",
label: "Homily Chart",
value: '2',
label: 'Homily Chart'
},
{
value: "3",
label: "Homily Link",
},
];
value: '3',
label: 'Homily Link'
}
]
// //
// const tableHeight = computed(function () {
@ -73,254 +73,260 @@ const consumePlatform = [
// });
//
//
const tableDataTotal = ref({});
const rechargeCoin = ref(0);
const freeCoin = ref(0);
const taskCoin = ref(0);
const totalCoin = ref(0);
const tableDataTotal = ref({})
const rechargeCoin = ref(0)
const freeCoin = ref(0)
const taskCoin = ref(0)
const totalCoin = ref(0)
// =========================================================================================================================================================
//
const get = async function (val) {
try {
//
if (adminData.value.area != "总部") {
detailVo.value.area = adminData.value.area;
if (adminData.value.area != '总部') {
detailVo.value.area = adminData.value.area
}
//
if (typeof val === "number") {
getObj.value.pageNum = val;
if (typeof val === 'number') {
getObj.value.pageNum = val
}
//
if (getTime.value != null) {
if (getTime.value.startDate != "" && getTime.value.endDate != "") {
detailVo.value.startDate = getTime.value[0];
detailVo.value.endDate = getTime.value[1];
if (getTime.value.startDate != '' && getTime.value.endDate != '') {
detailVo.value.startDate = getTime.value[0]
detailVo.value.endDate = getTime.value[1]
}
} else {
detailVo.value.startDate = "";
detailVo.value.endDate = "";
detailVo.value.startDate = ''
detailVo.value.endDate = ''
}
detailVo.value.sortField = sortField.value;
detailVo.value.sortOrder = sortOrder.value;
console.log("搜索参数", getObj.value);
detailVo.value.sortField = sortField.value
detailVo.value.sortOrder = sortOrder.value
console.log('搜索参数', getObj.value)
// POST
const result = await request({
url: "/consume/select",
url: '/consume/select',
data: {
...getObj.value,
consumeDetail: { ...detailVo.value },
},
});
consumeDetail: { ...detailVo.value }
}
})
//
// detail.value
const detailWithoutSort = { ...detailVo.value };
delete detailWithoutSort.sortField;
delete detailWithoutSort.sortOrder;
const detailWithoutSort = { ...detailVo.value }
delete detailWithoutSort.sortField
delete detailWithoutSort.sortOrder
const result2 = await request({
url: "/consume/SumConsume",
url: '/consume/SumConsume',
data: {
...detailWithoutSort,
},
});
...detailWithoutSort
}
})
//
console.log("请求成功", result);
console.log("请求成功2", result2);
console.log('请求成功', result)
console.log('请求成功2', result2)
//
tableData.value = result.data.list;
tableDataTotal.value = result2.data;
tableData.value = result.data.list
tableDataTotal.value = result2.data
if (result2.data == null) {
console.log("请求成功2", result2);
console.log('请求成功2', result2)
tableDataTotal.value = {
sumRcion: 0,
sumFcion: 0,
sumTcion: 0,
sumcion: 0,
};
sumcion: 0
}
}
console.log("tableDataT", tableDataTotal);
console.log('tableDataT', tableDataTotal)
//
rechargeCoin.value = parseFloat(
(tableDataTotal.value.sumRcion / 100).toFixed(2)
);
)
freeCoin.value = parseFloat(
(tableDataTotal.value.sumFcion / 100).toFixed(2)
);
)
taskCoin.value = parseFloat(
(tableDataTotal.value.sumTcion / 100).toFixed(2)
);
)
totalCoin.value = parseFloat(
(tableDataTotal.value.sumcion / 100).toFixed(2)
);
console.log("tableData", tableData.value);
)
console.log('tableData', tableData.value)
//
total.value = result.data.total;
console.log("total", total.value);
total.value = result.data.total
console.log('total', total.value)
} catch (error) {
console.log("请求失败", error);
console.log('请求失败', error)
//
}
};
}
//
const search = function () {
getObj.value.pageNum = 1;
get();
};
getObj.value.pageNum = 1
get()
}
//
const reset = function () {
detailVo.value.productName = "";
detailVo.value.consumePlatform = "";
detailVo.value.consumeType = "";
detailVo.value.startDate = "";
detailVo.value.endDate = "";
sortField.value = "";
sortOrder.value = "";
getTime.value = {};
};
detailVo.value.productName = ''
detailVo.value.consumePlatform = ''
detailVo.value.consumeType = ''
detailVo.value.startDate = ''
detailVo.value.endDate = ''
sortField.value = ''
sortOrder.value = ''
getTime.value = {}
}
//
const getToday = function () {
const today = new Date();
const today = new Date()
const startDate = new Date(
today.getFullYear(),
today.getMonth(),
today.getDate()
);
)
const endDate = new Date(
today.getFullYear(),
today.getMonth(),
today.getDate() + 1
);
getTime.value = [startDate, endDate];
console.log("getTime", getTime.value);
get();
};
)
getTime.value = [startDate, endDate]
console.log('getTime', getTime.value)
get()
}
//
const getYesterday = function () {
const yesterday = new Date();
yesterday.setDate(yesterday.getDate() - 1);
const yesterday = new Date()
yesterday.setDate(yesterday.getDate() - 1)
const startDate = new Date(
yesterday.getFullYear(),
yesterday.getMonth(),
yesterday.getDate()
);
)
const endDate = new Date(
yesterday.getFullYear(),
yesterday.getMonth(),
yesterday.getDate() + 1
);
getTime.value = [startDate, endDate];
console.log("getTime", getTime.value);
get();
};
)
getTime.value = [startDate, endDate]
console.log('getTime', getTime.value)
get()
}
// 7
const get7Days = function () {
const today = new Date();
const today = new Date()
const startDate = new Date(
today.getFullYear(),
today.getMonth(),
today.getDate() - 6
);
)
const endDate = new Date(
today.getFullYear(),
today.getMonth(),
today.getDate() + 1
);
getTime.value = [startDate, endDate];
console.log("getTime", getTime.value);
get();
};
)
getTime.value = [startDate, endDate]
console.log('getTime', getTime.value)
get()
}
//
const handleClick = function (tab, event) {
if (tab.props.name === "all") {
adminAll();
} else if (tab.props.name === "wait") {
adminWait();
} else if (tab.props.name === "pass") {
adminPass();
} else if (tab.props.name === "reject") {
adminReject();
if (tab.props.name === 'all') {
adminAll()
} else if (tab.props.name === 'wait') {
adminWait()
} else if (tab.props.name === 'pass') {
adminPass()
} else if (tab.props.name === 'reject') {
adminReject()
}
};
}
//
onMounted(async function () {
await getAdminData();
await get();
await getAdminData()
await get()
// getActivity();
// await getArea();
});
})
//
const checkNumber = function () {
if (typeof parseInt(getObj.value.pageNum) === "number") {
console.log(
"总共有多少页" + Math.ceil(total.value / getObj.value.pageSize)
);
if (typeof parseInt(getObj.value.pageNum) === 'number') {
console.log('总共有多少页' + Math.ceil(total.value / getObj.value.pageSize))
if (
getObj.value.pageNum > 0 &&
getObj.value.pageNum <= Math.ceil(total.value / getObj.value.pageSize)
) {
getObj.value.pageNum = parseInt(getObj.value.pageNum);
console.log("输入的数字合法");
get();
getObj.value.pageNum = parseInt(getObj.value.pageNum)
console.log('输入的数字合法')
get()
} else {
//
ElMessage({
type: "error",
message: "请检查输入内容",
});
type: 'error',
message: '请检查输入内容'
})
}
} else {
//
ElMessage({
type: "error",
message: "请检查输入内容",
});
type: 'error',
message: '请检查输入内容'
})
}
};
}
//
const goods = ref([]);
const goods = ref([])
const getGoods = async function () {
try {
// POST
const result = await request({
url: "/product",
data: {},
});
url: '/product',
data: {}
})
//
console.log("请求成功", result);
console.log('请求成功', result)
//
goods.value = result.data;
console.log("allData", allData.value);
console.log("地区", area.value);
goods.value = result.data
console.log('allData', allData.value)
console.log('地区', area.value)
} catch (error) {
console.log("请求失败", error);
console.log('请求失败', error)
//
}
};
getGoods();
}
getGoods()
//
const sortField = ref("");
const sortOrder = ref("");
const sortField = ref('')
const sortOrder = ref('')
//
const handleSortChange = (column) => {
console.log("排序字段:", column.prop);
console.log("排序方式:", column.order);
if (column.prop === "rechargeCoin") {
sortField.value = "recharge_coin";
} else if (column.prop === "taskCoin") {
sortField.value = "task_coin";
} else if (column.prop === "freeCoin") {
sortField.value = "free_coin";
} else if (column.prop === "createTime") {
sortField.value = "create_time";
console.log('排序字段:', column.prop)
console.log('排序方式:', column.order)
if (column.prop === 'rechargeCoin') {
sortField.value = 'recharge_coin'
} else if (column.prop === 'taskCoin') {
sortField.value = 'task_coin'
} else if (column.prop === 'freeCoin') {
sortField.value = 'free_coin'
} else if (column.prop === 'createTime') {
sortField.value = 'create_time'
}
sortOrder.value = column.order === "ascending" ? "ASC" : "DESC";
get();
};
sortOrder.value = column.order === 'ascending' ? 'ASC' : 'DESC'
get()
}
const handlePageSizeChange = function (val) {
getObj.value.pageSize = val
get()
}
const handleCurrentChange = function (val) {
getObj.value.pageNum = val
get()
}
</script>
<template>
@ -545,41 +551,12 @@ const handleSortChange = (column) => {
<el-pagination
background
:page-size="getObj.pageSize"
layout="slot"
:total="total"
>
<div>{{ total }},每页</div>
<el-select
v-model="getObj.pageSize"
class="page-size"
@change="get()"
style="width: 80px"
>
<el-option
v-for="item in [5, 10, 20, 50, 100]"
:key="item"
:label="item"
:value="item"
></el-option>
</el-select>
<div></div>
</el-pagination>
<el-pagination
background
layout="prev, pager, next, slot"
:page-size="getObj.pageSize"
:page-sizes="[5, 10, 20, 50, 100]"
layout="total, sizes, prev, pager, next, jumper"
:total="total"
:current-page="getObj.pageNum"
@current-change="get"
>
<div>跳至</div>
<el-input
v-model="getObj.pageNum"
style="width: 40px"
@change="checkNumber"
/>
<div></div>
</el-pagination>
@size-change="handlePageSizeChange"
@current-change="handleCurrentChange"
></el-pagination>
</div>
</el-card>
</el-col>

42
gold-system/src/views/goldBeen/goldenBeenBalance.vue

@ -24,7 +24,7 @@
</el-select>
</el-form-item>
<el-form-item>
<el-button type="primary" size="small" @click="getInit({})"
<el-button type="primary" size="small" @click="search()"
>查询</el-button
>
<el-button type="primary" size="small" @click="reset(ruleFormRef)"
@ -74,36 +74,12 @@
<el-pagination
background
:page-size="getObj.pageSize"
layout="slot"
:page-sizes="[5, 10, 20, 50, 100]"
layout="total, sizes, prev, pager, next, jumper"
:total="total"
@size-change="handlePageSizeChange"
@current-change="handleCurrentChange"
>
<div>{{ total }},每页</div>
<el-select
v-model="getObj.pageSize"
class="page-size"
@change="handlePageSizeChange"
style="width: 80px"
>
<el-option
v-for="item in [5, 10, 20, 50, 100]"
:key="item"
:label="item"
:value="item"
></el-option>
</el-select>
<div></div>
</el-pagination>
<el-pagination
background
layout="prev, pager, next,slot"
:page-size="getObj.pageSize"
:total="total"
:current-page="getObj.pageNum"
@current-change="handlePageChange"
>
<div>跳至</div>
<el-input v-model="getObj.pageNum" style="width: 40px" />
<div></div>
</el-pagination>
</div>
</div>
@ -129,6 +105,14 @@ let getObj = ref({
jinbiCostTotal: 0,
jinbiFree: 0
})
const search = function () {
getInit({})
getCount()
}
const handleCurrentChange = function (val) {
getObj.value.pageNum = val
getInit({})
}
//
const getInit = async function ({
sortField = '',

22
gold-system/src/views/goldBeen/goldenBeenConsum.vue

@ -1,14 +1,14 @@
<template>
<div class="filter-box">
<el-form>
<el-form-item label="精网号">
<el-form :model="detailY" ref="ruleFormRef">
<el-form-item prop="jwcode" label="精网号">
<el-input
v-model="detailY.jwcode"
placeholder="请输入精网号"
style="width: 220px"
/>
</el-form-item>
<el-form-item label="地区">
<el-form-item prop="area" label="地区">
<el-select
v-model="detailY.area"
placeholder="请选择所属地区"
@ -23,7 +23,7 @@
/>
</el-select>
</el-form-item>
<el-form-item label="商品名称">
<el-form-item prop="good" label="商品名称">
<el-select
v-model="detailY.good"
placeholder="请选择商品"
@ -38,7 +38,7 @@
/>
</el-select>
</el-form-item>
<el-form-item label="频道">
<el-form-item prop="channel" label="频道">
<el-select
v-model="detailY.channel"
placeholder="请选择频道"
@ -53,7 +53,7 @@
/>
</el-select>
</el-form-item>
<el-form-item label="直播间">
<el-form-item prop="liveroom" label="直播间">
<el-select
v-model="detailY.liveroom"
placeholder="请选择直播间"
@ -68,7 +68,7 @@
/>
</el-select>
</el-form-item>
<el-form-item label="消费时间">
<el-form-item prop="createTime" label="消费时间">
<el-date-picker
v-model="detailY.createTime"
type="daterange"
@ -80,7 +80,7 @@
</el-form-item>
<el-form-item>
<el-button type="primary" @click="search">查询</el-button>
<el-button type="success" @click="reset">重置</el-button>
<el-button type="success" @click="reset(ruleFormRef)">重置</el-button>
</el-form-item>
</el-form>
</div>
@ -193,6 +193,7 @@
</template>
<script setup lang="ts">
import { ref } from 'vue'
import type { FormInstance } from 'element-plus'
import { ElMessage } from 'element-plus'
import moment from 'moment'
import API from '@/util/http'
@ -205,6 +206,7 @@ const areaList = ref<string[]>([])
const goodList = ref<string[]>(['礼物', '铁粉', '客服操作'])
const channelList = ref<string[]>([])
const liveroomList = ref<string[]>([])
const ruleFormRef = ref<FormInstance>()
//
const detailY = ref({
jwcode: '',
@ -251,7 +253,9 @@ const getInit = async function ({
//
const search = function () {}
//
const reset = function () {}
const reset = function (formEl) {
formEl.resetFields()
}
//
getInit({})

22
gold-system/src/views/goldBeen/goldenBeenDetail.vue

@ -1,14 +1,14 @@
<template>
<div class="filter-box">
<el-form>
<el-form-item label="精网号">
<el-form :model="detailY" ref="ruleFormRef">
<el-form-item prop="jwcode" label="精网号">
<el-input
v-model="detailY.jwcode"
placeholder="请输入精网号"
style="width: 220px"
/>
</el-form-item>
<el-form-item label="地区">
<el-form-item prop="area" label="地区">
<el-select
v-model="detailY.area"
placeholder="请选择所属地区"
@ -23,14 +23,14 @@
/>
</el-select>
</el-form-item>
<el-form-item label="订单号">
<el-form-item prop="order" label="订单号">
<el-input
v-model="detailY.order"
placeholder="请输入订单号"
style="width: 220px"
/>
</el-form-item>
<el-form-item label="充值类型">
<el-form-item prop="type" label="充值类型">
<el-select
v-model="detailY.type"
placeholder="请选择充值类型"
@ -45,7 +45,7 @@
/>
</el-select>
</el-form-item>
<el-form-item label="充值平台">
<el-form-item prop="platform" label="充值平台">
<el-select
v-model="detailY.platform"
placeholder="请选择充值平台"
@ -60,7 +60,7 @@
/>
</el-select>
</el-form-item>
<el-form-item label="充值时间">
<el-form-item prop="createTime" label="充值时间">
<el-date-picker
v-model="detailY.createTime"
type="daterange"
@ -72,7 +72,7 @@
</el-form-item>
<el-form-item>
<el-button type="primary" @click="search">查询</el-button>
<el-button type="success" @click="reset">重置</el-button>
<el-button type="success" @click="reset(ruleFormRef)">重置</el-button>
<el-button type="primary">导出excel</el-button>
</el-form-item>
</el-form>
@ -186,6 +186,7 @@
</template>
<script setup lang="ts">
import { ref } from 'vue'
import { FormInstance } from 'element-plus'
import { ElMessage } from 'element-plus'
import moment from 'moment'
import API from '@/util/http'
@ -223,6 +224,7 @@ const getObj = ref({
pageNum: 1,
pageSize: 50
})
const ruleFormRef = ref<FormInstance>()
//
const getInit = async function ({
sortField = '',
@ -256,7 +258,9 @@ const getInit = async function ({
//
const search = function () {}
//
const reset = function () {}
const reset = function (formEl) {
formEl.resetFields()
}
//
getInit({})

348
gold-system/src/views/managerecharge/activity.vue

@ -1,180 +1,177 @@
<script setup>
import { ref, onMounted, reactive, computed } from "vue";
import ElementPlus from "element-plus";
import { ElMessage, ElMessageBox } from "element-plus";
import axios from "axios";
import moment from "moment";
import API from "../../api/index.js";
import _ from "lodash";
import request from "@/util/http";
import { ref, onMounted, reactive, computed } from 'vue'
import ElementPlus from 'element-plus'
import { ElMessage, ElMessageBox } from 'element-plus'
import axios from 'axios'
import moment from 'moment'
import API from '../../api/index.js'
import _ from 'lodash'
import request from '@/util/http'
//
const adminData = ref({});
const adminData = ref({})
const getAdminData = async function () {
try {
const result = await request(
{
url: "/admin/userinfo",
data:{}}
);
adminData.value = result;
addObj.value.adminId = adminData.value.adminId;
console.log("请求成功", result);
console.log("用户信息", adminData.value);
const result = await request({
url: '/admin/userinfo',
data: {}
})
adminData.value = result
addObj.value.adminId = adminData.value.adminId
console.log('请求成功', result)
console.log('用户信息', adminData.value)
} catch (error) {
console.log("请求失败", error);
console.log('请求失败', error)
}
};
}
//
//
const tableData = ref([]);
const tableData = ref([])
//
const total = ref(100);
const total = ref(100)
//
const getTime = ref([]);
const getTime = ref([])
//
const activity = ref({});
const activity = ref({})
//
const getObj = ref({
pageNum: 1,
pageSize: 10,
});
pageSize: 10
})
//
const addObj = ref({
add: "",
});
add: ''
})
//
//
const delObj = ref({});
const delObj = ref({})
// //
// const tableHeight = computed(function () {
// return (getObj.value.pageSize + 1) * 50 + "px";
// });
// ref
const Ref = ref(null);
const Ref = ref(null)
//
//
const get = async function (val) {
try {
//
if (typeof val === "number") {
getObj.value.pageNum = val;
if (typeof val === 'number') {
getObj.value.pageNum = val
}
//
if (getTime.value != null) {
if (getTime.value.startDate != "" && getTime.value.endDate != "") {
activity.value.startDate = getTime.value[0];
activity.value.endDate = getTime.value[1];
if (getTime.value.startDate != '' && getTime.value.endDate != '') {
activity.value.startDate = getTime.value[0]
activity.value.endDate = getTime.value[1]
}
} else {
activity.value.startDate = "";
activity.value.endDate = "";
activity.value.startDate = ''
activity.value.endDate = ''
}
console.log("搜索参数", getObj.value);
console.log('搜索参数', getObj.value)
// POST
const result = await request(
{
url: "/recharge/activity/select",
data:{
const result = await request({
url: '/recharge/activity/select',
data: {
...getObj.value,
activity: { ...activity.value },
}}
);
activity: { ...activity.value }
}
})
//
console.log("请求成功", result);
console.log('请求成功', result)
//
tableData.value = result.data.list;
console.log("tableData", tableData.value);
tableData.value = result.data.list
console.log('tableData', tableData.value)
//
total.value = result.data.total;
console.log("total", total.value);
total.value = result.data.total
console.log('total', total.value)
} catch (error) {
console.log("请求失败", error);
console.log('请求失败', error)
//
}
};
}
//
const search = function () {
getObj.value.pageNum = 1;
get();
};
getObj.value.pageNum = 1
get()
}
//
const reset = function () {
getObj.value = {};
getObj.value.pageNum = 1;
getObj.value.pageSize = 10;
getTime.value = {};
activity.value = {};
};
getObj.value = {}
getObj.value.pageNum = 1
getObj.value.pageSize = 10
getTime.value = {}
activity.value = {}
}
//
const addActivityVisible = ref(false);
const addActivityVisible = ref(false)
//
const openAddActivityVisible = function () {
addActivityVisible.value = true;
};
addActivityVisible.value = true
}
//
const closeAddActivityVisible = function (done) {
addActivityVisible.value = false;
};
addActivityVisible.value = false
}
//
const addActicity = function () {
console.log("Date", new Date());
console.log('Date', new Date())
//
addObj.value = {};
addObj.value.adminId = adminData.value.adminId;
addObj.value.adminName = adminData.value.name;
addObj.value.freeGold = "0";
addObj.value.rechargeRatio = 0;
addObj.value.startTime = null;
addObj.value.endTime = null;
openAddActivityVisible();
};
addObj.value = {}
addObj.value.adminId = adminData.value.adminId
addObj.value.adminName = adminData.value.name
addObj.value.freeGold = '0'
addObj.value.rechargeRatio = 0
addObj.value.startTime = null
addObj.value.endTime = null
openAddActivityVisible()
}
//
const add = async function () {
Ref.value.validate(async (valid) => {
console.log("valid", valid);
console.log('valid', valid)
if (valid) {
try {
console.log("添加对象", addObj.value);
console.log('添加对象', addObj.value)
// POST
const result = await request(
{
url: "/recharge/activity/add",
data: addObj.value}
);
const result = await request({
url: '/recharge/activity/add',
data: addObj.value
})
//
console.log("请求成功", result);
console.log('请求成功', result)
//
get();
get()
//
closeAddActivityVisible();
closeAddActivityVisible()
//
ElMessage({
type: "success",
message: "活动添加成功!",
});
type: 'success',
message: '活动添加成功!'
})
} catch (error) {
console.log("请求失败", error);
console.log('请求失败', error)
//
}
} else {
//
ElMessage({
type: "error",
message: "请检查输入内容",
});
type: 'error',
message: '请检查输入内容'
})
}
});
};
})
}
// 使 _.throttle trailing false
const throttledAdd = _.throttle(add, 5000, { trailing: false });
const throttledAdd = _.throttle(add, 5000, { trailing: false })
//
// let onceFunction = true;
//
@ -191,117 +188,121 @@ const throttledAdd = _.throttle(add, 5000, { trailing: false });
// =========================================================
//
const del = function (row) {
delObj.value.activityId = row.activityId;
console.log("delObj", delObj.value);
};
delObj.value.activityId = row.activityId
console.log('delObj', delObj.value)
}
//
const delConfirm = async function () {
try {
console.log("delObj", delObj.value);
console.log('delObj', delObj.value)
// POST
const result = await request(
{
url: "/recharge/activity/edit",
data: delObj.value}
);
const result = await request({
url: '/recharge/activity/edit',
data: delObj.value
})
//
console.log("请求成功", result);
console.log('请求成功', result)
//
get();
get()
} catch (error) {
console.log("请求失败", error);
console.log('请求失败', error)
//
}
};
}
const handlePageSizeChange = function (val) {
getObj.value.pageSize = val
get()
}
const handleCurrentChange = function (val) {
getObj.value.pageNum = val
get()
}
//
//
const handleStartTimeChange = () => {
Ref.value.validateField("endTime");
};
Ref.value.validateField('endTime')
}
const checkFreeGoldRadio = function (rule, value, callback) {
if (addObj.value.freeGold == 1) {
if (value == "0" || value == null || value == "") {
callback(new Error("请输入免费金币兑换比"));
if (value == '0' || value == null || value == '') {
callback(new Error('请输入免费金币兑换比'))
} else if (value < 0 || isNaN(value)) {
callback(new Error("请输入正确的格式"));
callback(new Error('请输入正确的格式'))
} else {
callback();
callback()
}
} else {
callback();
callback()
}
};
}
const checkStartTime = function (rule, value, callback) {
if (value < new Date()) {
callback(new Error("开始时间不能小于当前时间"));
callback(new Error('开始时间不能小于当前时间'))
} else {
callback();
callback()
}
};
}
const checkEndTime = function (rule, value, callback) {
if (value < new Date()) {
callback(new Error("结束时间不能小于当前时间"));
callback(new Error('结束时间不能小于当前时间'))
} else if (value <= addObj.value.startTime) {
callback(new Error("结束时间不能小于开始时间"));
callback(new Error('结束时间不能小于开始时间'))
} else {
callback();
callback()
}
};
}
const rules = reactive({
activityName: [
{ required: true, message: "请输入活动名称", trigger: "blur" },
{ required: true, message: '请输入活动名称', trigger: 'blur' }
],
freeGold: [
{ required: true, message: "请选择是否赠送免费金币", trigger: "blur" },
{ required: true, message: '请选择是否赠送免费金币', trigger: 'blur' }
],
rechargeRatio: [{ validator: checkFreeGoldRadio, trigger: "blur" }],
rechargeRatio: [{ validator: checkFreeGoldRadio, trigger: 'blur' }],
startTime: [
{ required: true, message: "请选择开始时间", trigger: "blur" },
{ validator: checkStartTime, trigger: "blur" },
{ required: true, message: '请选择开始时间', trigger: 'blur' },
{ validator: checkStartTime, trigger: 'blur' }
],
endTime: [
{ required: true, message: "请选择结束时间", trigger: "blur" },
{ validator: checkEndTime, trigger: "blur" },
],
});
{ required: true, message: '请选择结束时间', trigger: 'blur' },
{ validator: checkEndTime, trigger: 'blur' }
]
})
//
const checkNumber = function () {
if (typeof parseInt(getObj.value.pageNum) === "number") {
console.log(
"总共有多少页" + Math.ceil(total.value / getObj.value.pageSize)
);
if (typeof parseInt(getObj.value.pageNum) === 'number') {
console.log('总共有多少页' + Math.ceil(total.value / getObj.value.pageSize))
if (
getObj.value.pageNum > 0 &&
getObj.value.pageNum <= Math.ceil(total.value / getObj.value.pageSize)
) {
getObj.value.pageNum = parseInt(getObj.value.pageNum);
console.log("输入的数字合法");
get();
getObj.value.pageNum = parseInt(getObj.value.pageNum)
console.log('输入的数字合法')
get()
} else {
//
ElMessage({
type: "error",
message: "请检查输入内容",
});
type: 'error',
message: '请检查输入内容'
})
}
} else {
//
ElMessage({
type: "error",
message: "请检查输入内容",
});
type: 'error',
message: '请检查输入内容'
})
}
};
}
//
onMounted(async function () {
await getAdminData();
get();
});
await getAdminData()
get()
})
</script>
<template>
@ -364,12 +365,12 @@ onMounted(async function () {
<el-table-column prop="activityName" label="活动名称" />
<el-table-column prop="startTime" label="开始时间">
<template #default="scope">
{{ moment(scope.row.startTime).format("YYYY-MM-DD HH:mm:ss") }}
{{ moment(scope.row.startTime).format('YYYY-MM-DD HH:mm:ss') }}
</template>
</el-table-column>
<el-table-column prop="endTime" label="结束时间">
<template #default="scope">
{{ moment(scope.row.endTime).format("YYYY-MM-DD HH:mm:ss") }}
{{ moment(scope.row.endTime).format('YYYY-MM-DD HH:mm:ss') }}
</template>
</el-table-column>
<el-table-column prop="rechargeRatio" label="免费兑换比">
@ -402,7 +403,7 @@ onMounted(async function () {
<el-table-column prop="name" label="添加人" />
<el-table-column prop="createTime" label="添加时间">
<template #default="scope">
{{ moment(scope.row.createTime).format("YYYY-MM-DD HH:mm:ss") }}
{{ moment(scope.row.createTime).format('YYYY-MM-DD HH:mm:ss') }}
</template>
</el-table-column>
<el-table-column prop="operation" label="操作">
@ -433,41 +434,12 @@ onMounted(async function () {
<el-pagination
background
:page-size="getObj.pageSize"
layout="slot"
:page-sizes="[5, 10, 20, 50, 100]"
layout="total, sizes, prev, pager, next, jumper"
:total="total"
>
<div>{{ total }},每页</div>
<el-select
v-model="getObj.pageSize"
class="page-size"
@change="get()"
style="width: 80px"
>
<el-option
v-for="item in [5, 10, 20, 50, 100]"
:key="item"
:label="item"
:value="item"
></el-option>
</el-select>
<div></div>
</el-pagination>
<el-pagination
background
layout="prev, pager, next, slot"
:page-size="getObj.pageSize"
:total="total"
:current-page="getObj.pageNum"
@current-change="get"
>
<div>跳至</div>
<el-input
v-model="getObj.pageNum"
style="width: 40px"
@change="checkNumber"
/>
<div></div>
</el-pagination>
@size-change="handlePageSizeChange"
@current-change="handleCurrentChange"
></el-pagination>
</div>
</el-card>
</el-col>

48
gold-system/src/views/managerecharge/rate.vue

@ -164,6 +164,14 @@ const add = () => {
}
});
};
const handlePageSizeChange = function (val) {
getObj.value.pageSize = val
get()
}
const handleCurrentChange = function (val) {
getObj.value.pageNum = val
get()
}
// 使 _.throttle trailing false
const throttledAdd = _.throttle(add, 5000, { trailing: false });
//
@ -581,41 +589,13 @@ function handleInput(value) {
<el-pagination
background
:page-size="getObj.pageSize"
layout="slot"
:page-sizes="[5, 10, 20, 50, 100]"
layout="total, sizes, prev, pager, next, jumper"
:total="total"
>
<div>{{ total }},每页</div>
<el-select
v-model="getObj.pageSize"
class="page-size"
@change="get()"
style="width: 80px"
>
<el-option
v-for="item in [5, 10, 20, 50, 100]"
:key="item"
:label="item"
:value="item"
></el-option>
</el-select>
<div></div>
</el-pagination>
<el-pagination
background
layout="prev, pager, next, slot"
:page-size="getObj.pageSize"
:total="total"
:current-page="getObj.pageNum"
@current-change="get"
>
<div>跳至</div>
<el-input
v-model="getObj.pageNum"
style="width: 40px"
@change="checkNumber"
/>
<div></div>
</el-pagination>
@size-change="handlePageSizeChange"
@current-change="handleCurrentChange"
></el-pagination>
</div>
</el-card>
</el-col>

429
gold-system/src/views/permissions/index.vue

@ -1,165 +1,163 @@
<script setup>
import { ref, onMounted, reactive, computed } from "vue";
import ElementPlus from "element-plus";
import { ElMessage, ElMessageBox } from "element-plus";
import axios from "axios";
import moment from "moment";
import { ta } from "element-plus/es/locales.mjs";
import API from "../../api/index.js";
import { UserFilled } from "@element-plus/icons-vue";
import _ from "lodash";
import request from "@/util/http";
import { ref, onMounted, reactive, computed } from 'vue'
import ElementPlus from 'element-plus'
import { ElMessage, ElMessageBox } from 'element-plus'
import axios from 'axios'
import moment from 'moment'
import { ta } from 'element-plus/es/locales.mjs'
import API from '../../api/index.js'
import { UserFilled } from '@element-plus/icons-vue'
import _ from 'lodash'
import request from '@/util/http'
//
const tableData = ref([]);
const tableData = ref([])
// ===========================================
//
const total = ref(100);
const total = ref(100)
// detailY
const admin = ref({});
const admin = ref({})
//
const getObj = ref({
pageNum: 1,
pageSize: 10,
});
pageSize: 10
})
//
const permissionAddVisible = ref(false);
const permissionAddVisible = ref(false)
//
const permissionEditVisible = ref(false);
const permissionEditVisible = ref(false)
//
const area = ref([]);
const area = ref([])
//
const store = ref([]);
const store = ref([])
//
const permissionAddObj = ref({});
const permissionAddObj = ref({})
//
const addAdmin = ref({});
const addAdmin = ref({})
//
const permissionEditObj = ref({});
const permissionEditObj = ref({})
//
const delObj = ref({});
const delObj = ref({})
//
const get = async function (val) {
try {
//
if (typeof val === "number") {
getObj.value.pageNum = val;
if (typeof val === 'number') {
getObj.value.pageNum = val
}
console.log("搜索参数", getObj.value);
console.log('搜索参数', getObj.value)
// POST
const result = await request({
url: "/admin/search",
url: '/admin/search',
data: {
...getObj.value,
admin: { ...admin.value },
},
});
tableData.value = result.data.list;
console.log("tableData", tableData.value);
total.value = result.data.total;
admin: { ...admin.value }
}
})
tableData.value = result.data.list
console.log('tableData', tableData.value)
total.value = result.data.total
} catch (error) {
console.log("请求失败", error);
console.log('请求失败', error)
}
};
}
//
const search = function () {
getObj.value.pageNum = 1;
get();
};
getObj.value.pageNum = 1
get()
}
//
const reset = function () {
admin.value = {};
};
admin.value = {}
}
//
const getArea = async function () {
try {
const result = await request({
url: "/admin/area",
data: {},
});
area.value = result.data;
url: '/admin/area',
data: {}
})
area.value = result.data
} catch (error) {
console.log("请求失败", error);
console.log('请求失败', error)
//
}
};
}
//
const getStore = async function () {
try {
const result = await request({
url: "/admin/store",
data: {},
});
store.value = result.data;
url: '/admin/store',
data: {}
})
store.value = result.data
} catch (error) {
console.log("请求失败", error);
console.log('请求失败', error)
//
}
};
}
//
const checkNumber = function () {
if (typeof parseInt(getObj.value.pageNum) === "number") {
console.log(
"总共有多少页" + Math.ceil(total.value / getObj.value.pageSize)
);
if (typeof parseInt(getObj.value.pageNum) === 'number') {
console.log('总共有多少页' + Math.ceil(total.value / getObj.value.pageSize))
if (
getObj.value.pageNum > 0 &&
getObj.value.pageNum <= Math.ceil(total.value / getObj.value.pageSize)
) {
getObj.value.pageNum = parseInt(getObj.value.pageNum);
console.log("输入的数字合法");
get();
getObj.value.pageNum = parseInt(getObj.value.pageNum)
console.log('输入的数字合法')
get()
} else {
//
ElMessage({
type: "error",
message: "请检查输入内容",
});
type: 'error',
message: '请检查输入内容'
})
}
} else {
//
ElMessage({
type: "error",
message: "请检查输入内容",
});
type: 'error',
message: '请检查输入内容'
})
}
};
}
//
const openPermissionAddVisible = function () {
permissionAddVisible.value = true;
};
permissionAddVisible.value = true
}
//
const closePermissionAddVisible = function () {
permissionAddVisible.value = false;
};
permissionAddVisible.value = false
}
//
const permissionAddInit = function () {
permissionAddObj.value = {};
openPermissionAddVisible();
};
permissionAddObj.value = {}
openPermissionAddVisible()
}
//
const getAdminByJwcodeWithoutPermission = async function () {
try {
const result = await request({
url: "/admin/selectNo",
data: permissionAddObj.value,
});
url: '/admin/selectNo',
data: permissionAddObj.value
})
if (result.code == 200) {
permissionAddObj.value = result.data[0];
ElMessage.success("精网号查询成功");
permissionAddObj.value = result.data[0]
ElMessage.success('精网号查询成功')
} else {
ElMessage.error(result.msg);
ElMessage.error(result.msg)
}
console.log("精网号查询没有权限的用户", permissionAddObj.value);
console.log('精网号查询没有权限的用户', permissionAddObj.value)
} catch (error) {
console.log("请求失败", error);
console.log('请求失败', error)
//
}
};
}
//
// const permissionAdd = async function () {
// try {
@ -205,210 +203,218 @@ const getAdminByJwcodeWithoutPermission = async function () {
// };
const permissionAdd = async function () {
Ref.value.validate(async (valid) => {
console.log("valid", valid);
console.log('valid', valid)
if (valid) {
try {
addAdmin.value.adminFlag = 1;
addAdmin.value.status1 = 1;
addAdmin.value.adminFlag = 1
addAdmin.value.status1 = 1
const result = await request({
url: "/admin/add",
data: addAdmin.value,
});
url: '/admin/add',
data: addAdmin.value
})
if (result.code == 200) {
ElMessage.success("添加成功");
ElMessage.success('添加成功')
} else {
ElMessage.error(result.msg);
ElMessage.error(result.msg)
}
addAdmin.value = {};
get();
addAdmin.value = {}
get()
closePermissionAddVisible();
closePermissionAddVisible()
} catch (error) {
console.log("新增用户权限失败", error);
console.log('新增用户权限失败', error)
//
ElMessage.error("新增用户权限失败");
closePermissionAddVisible();
ElMessage.error('新增用户权限失败')
closePermissionAddVisible()
}
} else {
//
ElMessage({
type: "error",
message: "请检查输入内容",
});
type: 'error',
message: '请检查输入内容'
})
}
});
};
})
}
//
const rules = reactive({
jwcode: [{ required: true, message: "请输入精网号", trigger: "blur" }],
name: [{ required: true, message: "请输入用户名", trigger: "blur" }],
store: [{ required: true, message: "请输入职称", trigger: "blur" }],
machineId: [{ required: true, message: "请输入精网号", trigger: "blur" }],
area: [{ required: true, message: "请选择所属地区", trigger: "blur" }],
permission: [{ required: true, message: "请选择权限", trigger: "blur" }],
});
jwcode: [{ required: true, message: '请输入精网号', trigger: 'blur' }],
name: [{ required: true, message: '请输入用户名', trigger: 'blur' }],
store: [{ required: true, message: '请输入职称', trigger: 'blur' }],
machineId: [{ required: true, message: '请输入精网号', trigger: 'blur' }],
area: [{ required: true, message: '请选择所属地区', trigger: 'blur' }],
permission: [{ required: true, message: '请选择权限', trigger: 'blur' }]
})
//
// ref
const Ref = ref(null);
const Ref = ref(null)
// 使 _.throttle trailing false
const throttledPermissionAdd = _.throttle(permissionAdd, 5000, {
trailing: false,
});
trailing: false
})
//
const permissionList = [
{
label: "总部",
value: "1",
label: '总部',
value: '1'
},
{
label: "地区经理",
value: "5",
label: '地区经理',
value: '5'
},
{
label: "财务",
value: "3",
label: '财务',
value: '3'
},
{
label: "客服",
value: "2",
},
];
label: '客服',
value: '2'
}
]
//
//
const areaList = ref([]);
const areaList = ref([])
const getAreas = async function () {
try {
// POST
const result = await request({
url: "/recharge/user/search",
data: {},
});
url: '/recharge/user/search',
data: {}
})
//
console.log("请求成功", result);
console.log('请求成功', result)
//
areaList.value = result.data;
console.log("地区", area.value);
areaList.value = result.data
console.log('地区', area.value)
} catch (error) {
console.log("请求失败", error);
console.log('请求失败', error)
//
}
};
getAreas();
}
getAreas()
//
const openPermissionEditVisible = function () {
permissionEditVisible.value = true;
};
permissionEditVisible.value = true
}
//
const closePermissionEditVisible = function () {
permissionEditVisible.value = false;
};
permissionEditVisible.value = false
}
//
const permissionEditInit = function (row) {
permissionEditObj.value = {};
permissionEditObj.value.jwcode = row.jwcode;
permissionEditObj.value.name = row.name;
permissionEditObj.value.area = row.area;
permissionEditObj.value.store = row.store;
permissionEditObj.value.permission = row.permission;
console.log("编辑用户权限", permissionEditObj.value);
openPermissionEditVisible();
};
permissionEditObj.value = {}
permissionEditObj.value.jwcode = row.jwcode
permissionEditObj.value.name = row.name
permissionEditObj.value.area = row.area
permissionEditObj.value.store = row.store
permissionEditObj.value.permission = row.permission
console.log('编辑用户权限', permissionEditObj.value)
openPermissionEditVisible()
}
//
const permissionEdit = async function () {
try {
const result = await request({
url: "/admin/update",
data: permissionEditObj.value,
});
url: '/admin/update',
data: permissionEditObj.value
})
//
console.log("请求成功", result);
console.log('请求成功', result)
ElMessage.success("编辑用户权限成功");
ElMessage.success('编辑用户权限成功')
get();
get()
closePermissionEditVisible();
closePermissionEditVisible()
} catch (error) {
console.log("编辑用户权限失败", error);
console.log('编辑用户权限失败', error)
//
ElMessage.error("编辑用户权限失败");
ElMessage.error('编辑用户权限失败')
closePermissionEditVisible();
closePermissionEditVisible()
}
};
}
const throttledPermissionEdit = _.throttle(permissionEdit, 5000, {
trailing: false,
});
trailing: false
})
//
const del = function (row) {
delObj.value = {};
console.log(row, "删除初始化");
delObj.value.jwcode = row.jwcode;
};
delObj.value = {}
console.log(row, '删除初始化')
delObj.value.jwcode = row.jwcode
}
//
const delConfirm = async function () {
try {
delObj.value.permission = "4";
console.log(delObj.value);
delObj.value.permission = '4'
console.log(delObj.value)
const result = await request({
url: "/admin/update",
data: delObj.value,
});
url: '/admin/update',
data: delObj.value
})
//
console.log("请求成功", result);
console.log('请求成功', result)
ElMessage.success("删除权限成功");
delObj.value = {};
get();
ElMessage.success('删除权限成功')
delObj.value = {}
get()
} catch (error) {
console.log("删除权限失败", error);
console.log('删除权限失败', error)
//
ElMessage.error("删除权限失败");
ElMessage.error('删除权限失败')
}
};
}
//
const editStatus = async function (row) {
try {
console.log(row);
console.log(row)
permissionEditObj.value = {};
permissionEditObj.value.jwcode = row.jwcode;
permissionEditObj.value.status1 = row.status1;
permissionEditObj.value = {}
permissionEditObj.value.jwcode = row.jwcode
permissionEditObj.value.status1 = row.status1
console.log("修改用户权限状态", permissionEditObj.value);
console.log('修改用户权限状态', permissionEditObj.value)
const result = await request({
url: "/admin/update",
data: permissionEditObj.value,
});
url: '/admin/update',
data: permissionEditObj.value
})
//
console.log("请求成功", result);
console.log('请求成功', result)
ElMessage.success(
permissionEditObj.value.status1 == 1 ? "启用成功" : "禁用成功"
);
permissionEditObj.value = {};
get();
permissionEditObj.value.status1 == 1 ? '启用成功' : '禁用成功'
)
permissionEditObj.value = {}
get()
} catch (error) {
console.log("修改用户权限失败", error);
console.log('修改用户权限失败', error)
//
}
};
}
//
onMounted(async function () {
await get();
await getArea();
await getStore();
});
await get()
await getArea()
await getStore()
})
const handlePageSizeChange = function (val) {
getObj.value.pageSize = val
get()
}
const handleCurrentChange = function (val) {
getObj.value.pageNum = val
get()
}
</script>
<template>
@ -566,41 +572,12 @@ onMounted(async function () {
<el-pagination
background
:page-size="getObj.pageSize"
layout="slot"
:total="total"
>
<div>{{ total }},每页</div>
<el-select
v-model="getObj.pageSize"
class="page-size"
@change="get()"
style="width: 80px"
>
<el-option
v-for="item in [5, 10, 20, 50, 100]"
:key="item"
:label="item"
:value="item"
></el-option>
</el-select>
<div></div>
</el-pagination>
<el-pagination
background
layout="prev, pager, next,slot"
:page-size="getObj.pageSize"
:page-sizes="[5, 10, 20, 50, 100]"
layout="total, sizes, prev, pager, next, jumper"
:total="total"
:current-page="getObj.pageNum"
@current-change="get"
>
<div>跳至</div>
<el-input
v-model="getObj.pageNum"
style="width: 40px"
@change="checkNumber"
/>
<div></div>
</el-pagination>
@size-change="handlePageSizeChange"
@current-change="handleCurrentChange"
></el-pagination>
</div>
</el-card>
</el-col>

47
gold-system/src/views/recharge/adminRecharge.vue

@ -229,6 +229,14 @@ const getToday = function () {
console.log('getTime', getTime.value)
get()
}
const handlePageSizeChange = function (val) {
getObj.value.pageSize = val
get()
}
const handleCurrentChange = function (val) {
getObj.value.pageNum = val
get()
}
//
const getYesterday = function () {
const yesterday = new Date()
@ -695,41 +703,12 @@ const handleSortChange = (column) => {
<el-pagination
background
:page-size="getObj.pageSize"
layout="slot"
:page-sizes="[5, 10, 20, 50, 100]"
layout="total, sizes, prev, pager, next, jumper"
:total="total"
>
<div>{{ total }},每页</div>
<el-select
v-model="getObj.pageSize"
class="page-size"
@change="get()"
style="width: 80px"
>
<el-option
v-for="item in [5, 10, 20, 50, 100]"
:key="item"
:label="item"
:value="item"
></el-option>
</el-select>
<div></div>
</el-pagination>
<el-pagination
background
layout="prev, pager, next,slot"
:page-size="getObj.pageSize"
:total="total"
:current-page="getObj.pageNum"
@current-change="get"
>
<div>跳至</div>
<el-input
v-model="getObj.pageNum"
style="width: 40px"
@change="checkNumber"
/>
<div></div>
</el-pagination>
@size-change="handlePageSizeChange"
@current-change="handleCurrentChange"
></el-pagination>
</div>
</el-card>
</el-col>

47
gold-system/src/views/recharge/allRecharge.vue

@ -366,6 +366,14 @@ onMounted(async function () {
await getArea()
await getPayWay()
})
const handlePageSizeChange = function (val) {
getObj.value.pageSize = val
get()
}
const handleCurrentChange = function (val) {
getObj.value.pageNum = val
get()
}
//
const sortField = ref('')
const sortOrder = ref('')
@ -650,41 +658,12 @@ const handleSortChange = (column) => {
<el-pagination
background
:page-size="getObj.pageSize"
layout="slot"
:page-sizes="[5, 10, 20, 50, 100]"
layout="total, sizes, prev, pager, next, jumper"
:total="total"
>
<div>{{ total }},每页</div>
<el-select
v-model="getObj.pageSize"
class="page-size"
@change="get()"
style="width: 80px"
>
<el-option
v-for="item in [5, 10, 20, 50, 100]"
:key="item"
:label="item"
:value="item"
></el-option>
</el-select>
<div></div>
</el-pagination>
<el-pagination
background
layout="prev, pager, next,slot"
:page-size="getObj.pageSize"
:total="total"
:current-page="getObj.pageNum"
@current-change="get"
>
<div>跳至</div>
<el-input
v-model="getObj.pageNum"
style="width: 40px"
@change="checkNumber"
/>
<div></div>
</el-pagination>
@size-change="handlePageSizeChange"
@current-change="handleCurrentChange"
></el-pagination>
</div>
</el-card>
</el-col>

47
gold-system/src/views/refund/allRefund.vue

@ -418,6 +418,14 @@ const handleSortChange = (column) => {
sortOrder.value = column.order === 'ascending' ? 'ASC' : 'DESC'
get()
}
const handlePageSizeChange = function (val) {
getObj.value.pageSize = val
get()
}
const handleCurrentChange = function (val) {
getObj.value.pageNum = val
get()
}
</script>
<template>
@ -677,41 +685,12 @@ const handleSortChange = (column) => {
<el-pagination
background
:page-size="getObj.pageSize"
layout="slot"
:page-sizes="[5, 10, 20, 50, 100]"
layout="total, sizes, prev, pager, next, jumper"
:total="total"
>
<div>{{ total }},每页</div>
<el-select
v-model="getObj.pageSize"
class="page-size"
@change="get()"
style="width: 80px"
>
<el-option
v-for="item in [5, 10, 20, 50, 100]"
:key="item"
:label="item"
:value="item"
></el-option>
</el-select>
<div></div>
</el-pagination>
<el-pagination
background
layout="prev, pager, next,slot"
:page-size="getObj.pageSize"
:total="total"
:current-page="getObj.pageNum"
@current-change="get"
>
<div>跳至</div>
<el-input
v-model="getObj.pageNum"
style="width: 40px"
@change="checkNumber"
/>
<div></div>
</el-pagination>
@size-change="handlePageSizeChange"
@current-change="handleCurrentChange"
></el-pagination>
</div>
</el-card>
</el-col>

47
gold-system/src/views/usergold/index.vue

@ -496,6 +496,14 @@ const handleSortChange = (column) => {
sortField.value = 'gold'
}
sortOrder.value = column.order === 'ascending' ? 'ASC' : 'DESC'
}
get()
const handlePageSizeChange = function (val) {
getObj.value.pageSize = val
get()
}
const handleCurrentChange = function (val) {
getObj.value.pageNum = val
get()
}
</script>
@ -797,41 +805,12 @@ const handleSortChange = (column) => {
<el-pagination
background
:page-size="getObj.pageSize"
layout="slot"
:total="total"
>
<div>{{ total }},每页</div>
<el-select
v-model="getObj.pageSize"
class="page-size"
@change="get()"
style="width: 80px"
>
<el-option
v-for="item in [5, 10, 20, 50, 100]"
:key="item"
:label="item"
:value="item"
></el-option>
</el-select>
<div></div>
</el-pagination>
<el-pagination
background
layout="prev, pager, next,slot"
:page-size="getObj.pageSize"
:page-sizes="[5, 10, 20, 50, 100]"
layout="total, sizes, prev, pager, next, jumper"
:total="total"
:current-page="getObj.pageNum"
@current-change="get"
>
<div>跳至</div>
<el-input
v-model="getObj.pageNum"
style="width: 40px"
@change="checkNumber"
/>
<div></div>
</el-pagination>
@size-change="handlePageSizeChange"
@current-change="handleCurrentChange"
></el-pagination>
</div>
</el-card>
</el-col>

109
gold-system/src/views/usergoldInfo/index.vue

@ -10,6 +10,7 @@ import API from '@/util/http'
//
//
const adminData = ref({})
const dialogVisible = ref(false)
const getAdminData = async function () {
try {
const result = await API({ url: '/admin/userinfo', data: {} })
@ -28,6 +29,9 @@ const tableAllData = ref([])
const rechargeCoin = ref(0)
const freeCoin = ref(0)
const taskCoin = ref(0)
//
const tableCountData = ref([])
const userInfo = ref({})
// ===========================================
//
const total = ref(100)
@ -144,7 +148,13 @@ const reset = function () {
sortOrder.value = ''
get()
}
const cellClick = function (row, column) {
console.log('cellClick', column.label)
if (column.label == '姓名') {
dialogVisible.value = true
userInfo.value = row
}
}
//
const checkNumber = function () {
if (typeof parseInt(getObj.value.pageNum) === 'number') {
@ -222,6 +232,14 @@ onMounted(async function () {
await getAdminData()
await get()
})
const handlePageSizeChange = function (val) {
getObj.value.pageSize = val
get()
}
const handleCurrentChange = function (val) {
getObj.value.pageNum = val
get()
}
</script>
<template>
@ -279,6 +297,7 @@ onMounted(async function () {
<div style="height: 626px; overflow-y: auto">
<el-table
:data="tableData"
@cellClick="cellClick"
style="width: 100%"
height="715px"
@sort-change="handleSortChange"
@ -380,48 +399,55 @@ onMounted(async function () {
<el-pagination
background
:page-size="getObj.pageSize"
layout="slot"
:page-sizes="[5, 10, 20, 50, 100]"
layout="total, sizes, prev, pager, next, jumper"
:total="total"
>
<div>{{ total }},每页</div>
<el-select
v-model="getObj.pageSize"
class="page-size"
@change="get()"
style="width: 80px"
>
<el-option
v-for="item in [5, 10, 20, 50, 100]"
:key="item"
:label="item"
:value="item"
></el-option>
</el-select>
<div></div>
</el-pagination>
<el-pagination
background
layout="prev, pager, next,slot"
:page-size="getObj.pageSize"
:total="total"
:current-page="getObj.pageNum"
@current-change="get"
>
<div>跳至</div>
<el-input
v-model="getObj.pageNum"
style="width: 40px"
@change="checkNumber"
/>
<div></div>
</el-pagination>
@size-change="handlePageSizeChange"
@current-change="handleCurrentChange"
></el-pagination>
</div>
</el-card>
</el-col>
</el-row>
<!-- 客户信息弹框 -->
<el-dialog
title="客户信息"
v-model="dialogVisible"
width="50%"
@before-close="dialogVisible = false"
>
<el-card>
<div class="custom-box">
<div>姓名{{ userInfo.name }}</div>
<br />
<div>精网号{{ userInfo.jwcode }}</div>
<div>地区{{ userInfo.area }}</div>
<div>历史充值{{ userInfo.rcoin }}</div>
<div>历史消费{{ userInfo.scoin }}</div>
</div>
</el-card>
<!-- t -->
<div style="height: 450px; overflow-y: auto">
<el-table :data="tableCountData" style="width: 100%" height="715px">
<el-table-column type="index" label="序号" width="100px" fixed="left">
<template #default="scope">
<span>{{
scope.$index + 1 + (getObj.pageNum - 1) * getObj.pageSize
}}</span>
</template>
</el-table-column>
<el-table-column prop="" label="商品" width="120" />
<el-table-column sortable prop="" label="消费金币总数" width="180" />
<el-table-column sortable prop="" label="永久金币" width="120" />
<el-table-column sortable prop="" label="免费金币" width="120" />
<el-table-column sortable prop="" label="任务金币" width="120" />
<el-table-column sortable prop="" label="时间" width="120" />
</el-table>
</div>
</el-dialog>
</template>
<style scoped>
<style scoped lang="scss">
.pagination {
display: flex;
}
@ -441,4 +467,15 @@ onMounted(async function () {
.head-card-btn {
margin-left: auto;
}
.custom-box {
display: flex;
flex-wrap: wrap;
row-gap: 5px;
div:nth-child(1) {
flex: 1 0 100%;
}
div {
margin-right: 20px;
}
}
</style>
Loading…
Cancel
Save