hongxilin 5 months ago
parent
commit
221b5ba465
  1. 15
      vue/gold-system/src/views/consume/addConsume.vue
  2. 1
      vue/gold-system/src/views/consume/allConsume.vue
  3. 2
      vue/gold-system/src/views/managerecharge/activity.vue
  4. 1
      vue/gold-system/src/views/managerecharge/rate.vue
  5. 386
      vue/gold-system/src/views/recharge/addRecharge.vue
  6. 434
      vue/gold-system/src/views/recharge/adminRecharge.vue
  7. 10
      vue/gold-system/src/views/recharge/allRecharge.vue
  8. 15
      vue/gold-system/src/views/refund/addRefund.vue
  9. 40
      vue/gold-system/src/views/refund/allRefund.vue
  10. 36
      vue/gold-system/src/views/usergold/index.vue

15
vue/gold-system/src/views/consume/addConsume.vue

@ -334,12 +334,15 @@ function calculateCoins() {
</el-form> </el-form>
<!-- 客户信息栏 --> <!-- 客户信息栏 -->
<el-card style="float: right" class="customer-info">
<el-form :model="user" label-width="auto" label-position="left">
<el-text size="large" style="margin-left: 20px; font-weight: bold"
>客户信息</el-text
<el-card style="width: 850px; float: right" class="customer-info">
<el-form
:model="user"
label-width="auto"
style="max-width: 1000px"
label-position="left"
> >
<el-row style="margin-top: 20px; display: flex">
<el-text size="large" style="margin-left: 20px">客户信息</el-text>
<el-row style="margin-top: 20px">
<el-col :span="10"> <el-col :span="10">
<el-form-item label="姓名:"> <el-form-item label="姓名:">
<p>{{ user.name }}</p> <p>{{ user.name }}</p>
@ -356,7 +359,7 @@ function calculateCoins() {
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="14"> <el-col :span="14">
<el-form-item label="当前金币总数">
<el-form-item label="当前金币总数" style="width: 500px">
<span style="color: #2fa1ff; margin-right: 5px" v-if="user.buyJb">{{ <span style="color: #2fa1ff; margin-right: 5px" v-if="user.buyJb">{{
user.buyJb + user.free6 + user.free12 + user.coreJb user.buyJb + user.free6 + user.free12 + user.coreJb
}}</span> }}</span>

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

@ -445,6 +445,5 @@ getGoods();
.pagination { .pagination {
display: flex; display: flex;
margin-top: 20px; margin-top: 20px;
margin-left: 33%;
} }
</style> </style>

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

@ -394,7 +394,7 @@ onMounted(async function () {
</div> </div>
<!-- 分页 --> <!-- 分页 -->
<div class="pagination">
<div class="pagination" style="margin-top: 20px">
<el-pagination <el-pagination
background background
:page-size="getObj.pageSize" :page-size="getObj.pageSize"

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

@ -600,7 +600,6 @@ p {
.pagination { .pagination {
margin-top: 20px; margin-top: 20px;
margin-left: 33%;
} }
.box-card { .box-card {

386
vue/gold-system/src/views/recharge/addRecharge.vue

@ -466,60 +466,59 @@ const closeBatchRechargeVisible = function () {
// //
const batchInit = function () { const batchInit = function () {
openBatchRechargeVisible(); openBatchRechargeVisible();
}
};
// //
const addLine = function () { const addLine = function () {
batchData.value.unshift({ batchData.value.unshift({
line: ++i.value, line: ++i.value,
showInput: true, showInput: true,
}); });
}
};
// //
const handleSelectionChangebatch = function (val) { const handleSelectionChangebatch = function (val) {
console.log("val===", val); console.log("val===", val);
batchDelObj.value = val; batchDelObj.value = val;
}
};
// //
const batchDel = function () { const batchDel = function () {
ElMessageBox.confirm(
'确认批量删除吗?',
'批量删除',
{
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
}
)
ElMessageBox.confirm("确认批量删除吗?", "批量删除", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
})
.then(() => { .then(() => {
console.log("batchDel===", batchDelObj.value); console.log("batchDel===", batchDelObj.value);
batchData.value = batchData.value.filter(itemA => { return !batchDelObj.value.some(itemB => itemB.line == itemA.line) })
batchData.value = batchData.value.filter((itemA) => {
return !batchDelObj.value.some((itemB) => itemB.line == itemA.line);
});
console.log("batchData===", batchData.value); console.log("batchData===", batchData.value);
ElMessage({ ElMessage({
type: 'success',
message: '操作成功',
})
type: "success",
message: "操作成功",
});
}) })
.catch(() => { .catch(() => {
ElMessage({ ElMessage({
type: 'info',
message: '操作撤销',
})
})
}
type: "info",
message: "操作撤销",
});
});
};
// //
const del = function (row) { const del = function (row) {
console.log("row===", row); console.log("row===", row);
delObj.value.line = row.line; delObj.value.line = row.line;
}
};
const delConfirm = function () { const delConfirm = function () {
batchData.value = batchData.value.filter(item => item.line != delObj.value.line)
batchData.value = batchData.value.filter(
(item) => item.line != delObj.value.line
);
console.log("batchData===", batchData.value); console.log("batchData===", batchData.value);
}
};
// //
const reset = function (row) { const reset = function (row) {
resetObj.value.line = row.line; resetObj.value.line = row.line;
}
};
const resetConfirm = function () { const resetConfirm = function () {
for (let i = 0; i < batchData.value.length; i++) { for (let i = 0; i < batchData.value.length; i++) {
if (batchData.value[i].line == resetObj.value.line) { if (batchData.value[i].line == resetObj.value.line) {
@ -529,35 +528,29 @@ const resetConfirm = function () {
break; break;
} }
} }
}
};
// //
const cancelBatch = function () { const cancelBatch = function () {
ElMessageBox.confirm(
'确认取消吗?此操作将不会保存任何数据。',
'确认取消',
{
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
}
)
ElMessageBox.confirm("确认取消吗?此操作将不会保存任何数据。", "确认取消", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
})
.then(() => { .then(() => {
batchData.value = [
{ line: 1, showInput: true }
];
batchData.value = [{ line: 1, showInput: true }];
closeBatchRechargeVisible(); closeBatchRechargeVisible();
ElMessage({ ElMessage({
type: 'success',
message: '操作成功',
})
type: "success",
message: "操作成功",
});
}) })
.catch(() => { .catch(() => {
ElMessage({ ElMessage({
type: 'info',
message: '操作撤销',
})
})
}
type: "info",
message: "操作撤销",
});
});
};
// //
const calculatedRowFreeGold = function (row) { const calculatedRowFreeGold = function (row) {
console.log("row===", row); console.log("row===", row);
@ -578,9 +571,9 @@ const calculatedRowFreeGold = function (row) {
batchData.value[i].freeGold = Math.ceil(paidGold / ratio); batchData.value[i].freeGold = Math.ceil(paidGold / ratio);
} }
break; break;
};
} }
} }
};
const calculatedRowRechargeGold = computed(() => { const calculatedRowRechargeGold = computed(() => {
if (!addRecharge.value.rateId == 0) { if (!addRecharge.value.rateId == 0) {
@ -602,8 +595,8 @@ const batchAdd = function () {
console.log("batchData===", batchData.value); console.log("batchData===", batchData.value);
if (batchData.value.length == 0) { if (batchData.value.length == 0) {
ElMessage({ ElMessage({
type: 'error',
message: '至少需要输入一条数据!',
type: "error",
message: "至少需要输入一条数据!",
}); });
return; return;
} }
@ -611,15 +604,23 @@ const batchAdd = function () {
batchData.value[i].adminId = adminData.value.adminId; batchData.value[i].adminId = adminData.value.adminId;
batchData.value[i].area = adminData.value.area; batchData.value[i].area = adminData.value.area;
batchData.value[i].rechargeWay = "客服充值"; batchData.value[i].rechargeWay = "客服充值";
if (batchData.value[i].jwcode == "" || batchData.value[i].jwcode == null
|| batchData.value[i].activityId == "" || batchData.value[i].activityId == null
|| batchData.value[i].paidGold == "" || batchData.value[i].paidGold == null
|| batchData.value[i].rechargeGold == "" || batchData.value[i].rechargeGold == null
|| batchData.value[i].payWay == "" || batchData.value[i].payWay == null
|| batchData.value[i].rechargeTime == "" || batchData.value[i].rechargeTime == null) {
if (
batchData.value[i].jwcode == "" ||
batchData.value[i].jwcode == null ||
batchData.value[i].activityId == "" ||
batchData.value[i].activityId == null ||
batchData.value[i].paidGold == "" ||
batchData.value[i].paidGold == null ||
batchData.value[i].rechargeGold == "" ||
batchData.value[i].rechargeGold == null ||
batchData.value[i].payWay == "" ||
batchData.value[i].payWay == null ||
batchData.value[i].rechargeTime == "" ||
batchData.value[i].rechargeTime == null
) {
ElMessage({ ElMessage({
type: 'error',
message: '信息不能为空!请检查输入内容!',
type: "error",
message: "信息不能为空!请检查输入内容!",
}); });
return; return;
} }
@ -627,29 +628,49 @@ const batchAdd = function () {
console.log("batchData===", batchData.value); console.log("batchData===", batchData.value);
ElMessage({ ElMessage({
type: 'success',
message: '添加成功!',
})
type: "success",
message: "添加成功!",
});
closeBatchRechargeVisible(); closeBatchRechargeVisible();
}
};
</script> </script>
<template> <template>
<div style="display: flex;">
<div style="margin-right: 20px;">新增充值</div>
<div style="display: flex">
<div style="margin-right: 20px">新增充值</div>
<el-button type="primary" plain @click="batchInit()">批量充值</el-button> <el-button type="primary" plain @click="batchInit()">批量充值</el-button>
</div> </div>
<el-form :model="addRecharge" ref="Ref" :rules="rules" label-width="auto" style="max-width: 600px" class="add-form">
<el-form
:model="addRecharge"
ref="Ref"
:rules="rules"
label-width="auto"
style="max-width: 600px"
class="add-form"
>
<el-form-item prop="jwcode" label="精网号"> <el-form-item prop="jwcode" label="精网号">
<el-input v-model="addRecharge.jwcode" style="width: 220px" /> <el-input v-model="addRecharge.jwcode" style="width: 220px" />
<el-button type="primary" @click="getUser(addRecharge.jwcode)" style="margin-left: 20px">查询</el-button>
<el-button
type="primary"
@click="getUser(addRecharge.jwcode)"
style="margin-left: 20px"
>查询</el-button
>
</el-form-item> </el-form-item>
<el-form-item prop="activityId" label="活动名称"> <el-form-item prop="activityId" label="活动名称">
<el-select v-model="addRecharge.activityId" placeholder="请选择" style="width: 300px">
<el-option v-for="item in activity" :key="item.value" :label="item.activityName" :value="item.activityId" />
<el-select
v-model="addRecharge.activityId"
placeholder="请选择"
style="width: 300px"
>
<el-option
v-for="item in activity"
:key="item.value"
:label="item.activityName"
:value="item.activityId"
/>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item prop="paidGold" label="充值金币"> <el-form-item prop="paidGold" label="充值金币">
@ -660,25 +681,64 @@ const batchAdd = function () {
<p></p> <p></p>
</el-form-item> </el-form-item>
<el-form-item prop="rechargeGold" label="充值金额"> <el-form-item prop="rechargeGold" label="充值金额">
<el-select prop="rechargeGold" v-model="addRecharge.rateId" placeholder="货币名称"
style="width: 95px; margin-right: 5px">
<el-option v-for="item in currency" :key="item.value" :label="item.currency" :value="item.exchangeRate" />
<el-select
prop="rechargeGold"
v-model="addRecharge.rateId"
placeholder="货币名称"
style="width: 95px; margin-right: 5px"
>
<el-option
v-for="item in currency"
:key="item.value"
:label="item.currency"
:value="item.exchangeRate"
/>
</el-select> </el-select>
<el-input disabled v-model="addRecharge.rechargeGold" style="width: 200px" />
<el-input
disabled
v-model="addRecharge.rechargeGold"
style="width: 200px"
/>
</el-form-item> </el-form-item>
<el-form-item prop="payWay" label="收款方式"> <el-form-item prop="payWay" label="收款方式">
<el-select v-model="addRecharge.payWay" placeholder="请选择" style="width: 300px">
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value" />
<el-select
v-model="addRecharge.payWay"
placeholder="请选择"
style="width: 300px"
>
<el-option
v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item prop="rechargeTime" label="交款时间"> <el-form-item prop="rechargeTime" label="交款时间">
<el-date-picker v-model="addRecharge.rechargeTime" type="date" style="width: 300px" />
<el-date-picker
v-model="addRecharge.rechargeTime"
type="date"
style="width: 300px"
/>
</el-form-item> </el-form-item>
<el-form-item prop="rechargeVoucher" label="交款凭证" style="margin-bottom: 5px">
<el-upload class="avatar-uploader" :show-file-list="false" :on-success="handleAvatarSuccess"
:before-upload="beforeAvatarUpload">
<el-form-item
prop="rechargeVoucher"
label="交款凭证"
style="margin-bottom: 5px"
>
<el-upload
class="avatar-uploader"
:show-file-list="false"
:on-success="handleAvatarSuccess"
:before-upload="beforeAvatarUpload"
style="width: 100px; height: 115px"
>
<img v-if="imageUrl" :src="imageUrl" class="avatar" /> <img v-if="imageUrl" :src="imageUrl" class="avatar" />
<el-icon v-else class="avatar-uploader-icon">
<el-icon
v-else
class="avatar-uploader-icon"
style="width: 100px; height: 100px"
>
<Plus /> <Plus />
</el-icon> </el-icon>
</el-upload> </el-upload>
@ -687,22 +747,40 @@ const batchAdd = function () {
</p> </p>
</el-form-item> </el-form-item>
<el-form-item prop="remark" label="备注"> <el-form-item prop="remark" label="备注">
<el-input v-model="addRecharge.remark" style="width: 300px" :rows="2" maxlength="100" show-word-limit
type="textarea" />
<el-input
v-model="addRecharge.remark"
style="width: 300px"
:rows="2"
maxlength="100"
show-word-limit
type="textarea"
/>
</el-form-item> </el-form-item>
<el-form-item prop="submitter" label="提交人"> <el-form-item prop="submitter" label="提交人">
<el-input style="width: 300px" :value="adminData.name" disabled placeholder="提交人姓名" />
<el-input
style="width: 300px"
:value="adminData.name"
disabled
placeholder="提交人姓名"
/>
</el-form-item> </el-form-item>
<el-button @click="deleteRecharge" style="margin-left: 280px">重置</el-button>
<el-button @click="deleteRecharge" style="margin-left: 280px"
>重置</el-button
>
<el-button type="primary" @click="addBefore"> 提交 </el-button> <el-button type="primary" @click="addBefore"> 提交 </el-button>
</el-form> </el-form>
<!-- 客户信息栏 --> <!-- 客户信息栏 -->
<el-card style="width: 700px; float: right" class="customer-info">
<el-form :model="user" label-width="auto" style="max-width: 600px" label-position="left">
<el-card style="width: 1200px; float: right" class="customer-info">
<el-form
:model="user"
label-width="auto"
style="max-width: 1000px"
label-position="left"
>
<el-text size="large" style="margin-left: 20px">客户信息</el-text> <el-text size="large" style="margin-left: 20px">客户信息</el-text>
<el-row style="margin-top: 20px"> <el-row style="margin-top: 20px">
<el-col :span="12">
<el-col :span="10">
<el-form-item label="姓名:"> <el-form-item label="姓名:">
<p>{{ user.name }}</p> <p>{{ user.name }}</p>
</el-form-item> </el-form-item>
@ -718,7 +796,7 @@ const batchAdd = function () {
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="14"> <el-col :span="14">
<el-form-item label="当前金币总数">
<el-form-item label="当前金币总数" style="width: 500px">
<span style="color: #2fa1ff; margin-right: 5px" v-if="user.buyJb">{{ <span style="color: #2fa1ff; margin-right: 5px" v-if="user.buyJb">{{
user.buyJb + user.free6 + user.free12 + user.coreJb user.buyJb + user.free6 + user.free12 + user.coreJb
}}</span> }}</span>
@ -769,14 +847,32 @@ const batchAdd = function () {
</el-form> </el-form>
</el-card> </el-card>
<el-dialog v-model="batchRechargeVisible" title="批量充值" width="1800px" style="height: 700px;">
<el-dialog
v-model="batchRechargeVisible"
title="批量充值"
width="1800px"
style="height: 700px"
>
<el-row style="margin-bottom: 10px"> <el-row style="margin-bottom: 10px">
<el-button type="primary" @click="addLine()" style="margin-right: auto">新增一行</el-button>
<el-button type="danger" plain @click="batchDel()" style="margin-right: 10px; width: 130px;">批量删除</el-button>
<el-button type="primary" @click="addLine()" style="margin-right: auto"
>新增一行</el-button
>
<el-button
type="danger"
plain
@click="batchDel()"
style="margin-right: 10px; width: 130px"
>批量删除</el-button
>
</el-row> </el-row>
<el-row> <el-row>
<el-table :data="batchData" border max-height="540px" style="height: 540px;"
@selection-change="handleSelectionChangebatch">
<el-table
:data="batchData"
border
max-height="540px"
style="height: 540px"
@selection-change="handleSelectionChangebatch"
>
<el-table-column type="selection" width="50px" /> <el-table-column type="selection" width="50px" />
<el-table-column property="index" label="序号" width="55px"> <el-table-column property="index" label="序号" width="55px">
<template #default="scope"> <template #default="scope">
@ -785,15 +881,31 @@ const batchAdd = function () {
</el-table-column> </el-table-column>
<el-table-column property="jwcode" label="精网号" width="150px"> <el-table-column property="jwcode" label="精网号" width="150px">
<template #default="scope"> <template #default="scope">
<input type="number" v-if="scope.row.showInput" v-model="scope.row.jwcode" style="width: 110px;" />
<input
type="number"
v-if="scope.row.showInput"
v-model="scope.row.jwcode"
style="width: 110px"
/>
<span v-else>{{ scope.row.jwcode }}</span> <span v-else>{{ scope.row.jwcode }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column property="activityName" label="活动名称" width="150px"> <el-table-column property="activityName" label="活动名称" width="150px">
<template #default="scope"> <template #default="scope">
<el-select v-if="scope.row.showInput" filterable clearable v-model="scope.row.activityId"
placeholder="请选择活动名称" @change="calculatedRowFreeGold(scope.row)">
<el-option v-for="item in activity" :key="item.value" :label="item.activityName" :value="item.activityId">
<el-select
v-if="scope.row.showInput"
filterable
clearable
v-model="scope.row.activityId"
placeholder="请选择活动名称"
@change="calculatedRowFreeGold(scope.row)"
>
<el-option
v-for="item in activity"
:key="item.value"
:label="item.activityName"
:value="item.activityId"
>
</el-option> </el-option>
</el-select> </el-select>
<span v-else>{{ scope.row.activityName }}</span> <span v-else>{{ scope.row.activityName }}</span>
@ -801,7 +913,11 @@ const batchAdd = function () {
</el-table-column> </el-table-column>
<el-table-column property="paidGold" label="充值金币" width="110px"> <el-table-column property="paidGold" label="充值金币" width="110px">
<template #default="scope"> <template #default="scope">
<input v-if="scope.row.showInput" v-model="scope.row.paidGold" style="width: 70px;" />
<input
v-if="scope.row.showInput"
v-model="scope.row.paidGold"
style="width: 70px"
/>
<span v-else>{{ scope.row.paidGold }}</span> <span v-else>{{ scope.row.paidGold }}</span>
</template> </template>
</el-table-column> </el-table-column>
@ -812,8 +928,19 @@ const batchAdd = function () {
</el-table-column> </el-table-column>
<el-table-column property="rechargeGold" label="充值金额"> <el-table-column property="rechargeGold" label="充值金额">
<template #default="scope"> <template #default="scope">
<el-select v-if="scope.row.showInput" filterable clearable v-model="scope.row.rateId" placeholder="请选择币种">
<el-option v-for="item in currency" :key="item.value" :label="item.currency" :value="item.exchangeRate">
<el-select
v-if="scope.row.showInput"
filterable
clearable
v-model="scope.row.rateId"
placeholder="请选择币种"
>
<el-option
v-for="item in currency"
:key="item.value"
:label="item.currency"
:value="item.exchangeRate"
>
</el-option> </el-option>
</el-select> </el-select>
<span v-else>{{ scope.row.rateId }}</span> <span v-else>{{ scope.row.rateId }}</span>
@ -826,8 +953,19 @@ const batchAdd = function () {
</el-table-column> </el-table-column>
<el-table-column property="payWay" label="收款方式" width="130px"> <el-table-column property="payWay" label="收款方式" width="130px">
<template #default="scope"> <template #default="scope">
<el-select v-if="scope.row.showInput" filterable clearable v-model="scope.row.payWay" placeholder="请选择收款方式">
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
<el-select
v-if="scope.row.showInput"
filterable
clearable
v-model="scope.row.payWay"
placeholder="请选择收款方式"
>
<el-option
v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option> </el-option>
</el-select> </el-select>
<span v-else>{{ scope.row.payWay }}</span> <span v-else>{{ scope.row.payWay }}</span>
@ -835,10 +973,17 @@ const batchAdd = function () {
</el-table-column> </el-table-column>
<el-table-column property="rechargeTime" label="交款时间" width="150px"> <el-table-column property="rechargeTime" label="交款时间" width="150px">
<template #default="scope"> <template #default="scope">
<el-date-picker v-if="scope.row.showInput" type="date" v-model="scope.row.rechargeTime"
style="width: 120px;" placeholder="请选择交款时间">
<el-date-picker
v-if="scope.row.showInput"
type="date"
v-model="scope.row.rechargeTime"
style="width: 120px"
placeholder="请选择交款时间"
>
</el-date-picker> </el-date-picker>
<span v-else>{{ moment(scope.row.rechargeTime).format("YYYY-MM-DD HH:mm:ss") }}</span>
<span v-else>{{
moment(scope.row.rechargeTime).format("YYYY-MM-DD HH:mm:ss")
}}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column property="rechargeVoucher" label="充值凭证"> <el-table-column property="rechargeVoucher" label="充值凭证">
@ -854,18 +999,31 @@ const batchAdd = function () {
</el-table-column> </el-table-column>
<el-table-column property="remark" label="备注" width="130px"> <el-table-column property="remark" label="备注" width="130px">
<template #default="scope"> <template #default="scope">
<textarea v-if="scope.row.showInput" v-model="scope.row.remark" style="max-width: 90px;" rows="1"
cols="12"></textarea>
<textarea
v-if="scope.row.showInput"
v-model="scope.row.remark"
style="max-width: 90px"
rows="1"
cols="12"
></textarea>
<span v-else>{{ scope.row.remark }}</span> <span v-else>{{ scope.row.remark }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column property="submitter" label="提交人"> <el-table-column property="submitter" label="提交人">
<el-input :value="adminData.name" disabled /> <el-input :value="adminData.name" disabled />
</el-table-column> </el-table-column>
<el-table-column fixed="right" prop="operation" label="操作" width="150px">
<el-table-column
fixed="right"
prop="operation"
label="操作"
width="150px"
>
<template #default="scope"> <template #default="scope">
<div style="display: flex;">
<el-popconfirm title="确定将此条信息删除吗?" @confirm="delConfirm">
<div style="display: flex">
<el-popconfirm
title="确定将此条信息删除吗?"
@confirm="delConfirm"
>
<template #reference> <template #reference>
<el-button type="danger" text @click="del(scope.row)"> <el-button type="danger" text @click="del(scope.row)">
删除 删除
@ -878,7 +1036,10 @@ const batchAdd = function () {
</el-button> </el-button>
</template> </template>
</el-popconfirm> </el-popconfirm>
<el-popconfirm title="确定将此条信息重置吗?" @confirm="resetConfirm">
<el-popconfirm
title="确定将此条信息重置吗?"
@confirm="resetConfirm"
>
<template #reference> <template #reference>
<el-button type="primary" text @click="reset(scope.row)"> <el-button type="primary" text @click="reset(scope.row)">
重置 重置
@ -891,10 +1052,8 @@ const batchAdd = function () {
</el-button> </el-button>
</template> </template>
</el-popconfirm> </el-popconfirm>
</div> </div>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
</el-row> </el-row>
@ -905,7 +1064,6 @@ const batchAdd = function () {
</div> </div>
</el-row> </el-row>
</el-dialog> </el-dialog>
</template> </template>
<style scoped> <style scoped>

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

@ -1,18 +1,18 @@
<script setup> <script setup>
import { ref, onMounted, reactive, computed } from "vue"; import { ref, onMounted, reactive, computed } from "vue";
import ElementPlus from "element-plus"; import ElementPlus from "element-plus";
import { ElMessage, ElMessageBox } from 'element-plus'
import { ElMessage, ElMessageBox } from "element-plus";
import { AiFillRead } from "vue-icons-plus/ai"; import { AiFillRead } from "vue-icons-plus/ai";
import axios from 'axios';
import moment from 'moment';
import axios from "axios";
import moment from "moment";
import API from "../../api/index.js"; import API from "../../api/index.js";
// //
// //
const admin = ref({ const admin = ref({
adminId: 1, adminId: 1,
name: '赵刚',
area: '中国'
})
name: "赵刚",
area: "中国",
});
// //
const tableData = ref([]); const tableData = ref([]);
@ -37,41 +37,41 @@ const allData = ref([]);
// //
const area = ref([]); const area = ref([]);
// //
const activeName = ref('all')
const activeName = ref("all");
// //
const payWay = [ const payWay = [
{ {
value: '微信',
label: '微信',
value: "微信",
label: "微信",
}, },
{ {
value: '支付宝',
label: '支付宝',
value: "支付宝",
label: "支付宝",
}, },
{ {
value: '银联',
label: '银联',
value: "银联",
label: "银联",
}, },
{ {
value: '信用卡',
label: '信用卡',
value: "信用卡",
label: "信用卡",
}, },
{ {
value: '借记卡',
label: '借记卡',
value: "借记卡",
label: "借记卡",
}, },
{ {
value: '现金充值',
label: '现金充值',
value: "现金充值",
label: "现金充值",
}, },
]
];
// ========================================================== // ==========================================================
// //
const delObj = ref({}); const delObj = ref({});
// //
const tableHeight = computed(function () { const tableHeight = computed(function () {
return (getObj.value.pageSize + 2) * 60 + 'px';
return (getObj.value.pageSize + 2) * 60 + "px";
}); });
// //
@ -80,235 +80,299 @@ const tableHeight = computed(function () {
const get = async function (val) { const get = async function (val) {
try { try {
// //
if (typeof val === 'number') {
if (typeof val === "number") {
getObj.value.pageNum = val; getObj.value.pageNum = val;
} }
// //
if (getTime.value != null) { if (getTime.value != null) {
if (getTime.value.startDate != '' && getTime.value.endDate != '') {
if (getTime.value.startDate != "" && getTime.value.endDate != "") {
rechargeVo.value.startDate = getTime.value[0]; rechargeVo.value.startDate = getTime.value[0];
rechargeVo.value.endDate = getTime.value[1]; rechargeVo.value.endDate = getTime.value[1];
} }
} else { } else {
rechargeVo.value.startDate = '';
rechargeVo.value.endDate = '';
rechargeVo.value.startDate = "";
rechargeVo.value.endDate = "";
} }
console.log('搜索参数', getObj.value);
console.log("搜索参数", getObj.value);
// POST // POST
const result = await API.post('http://192.168.8.93:10010/recharge/recharge', { ...getObj.value, rechargeVo: { ...rechargeVo.value } });
const result = await API.post(
"http://192.168.8.93:10010/recharge/recharge",
{ ...getObj.value, rechargeVo: { ...rechargeVo.value } }
);
// //
console.log('请求成功', result);
console.log("请求成功", result);
// //
tableData.value = result.data.list; tableData.value = result.data.list;
console.log('tableData', tableData.value);
console.log("tableData", tableData.value);
// //
total.value = result.data.total; total.value = result.data.total;
console.log('total', total.value);
console.log("total", total.value);
} catch (error) { } catch (error) {
console.log('请求失败', error);
console.log("请求失败", error);
// //
} }
}
};
// //
const reset = function () { const reset = function () {
rechargeVo.value.activityId = '';
rechargeVo.value.payWay = '';
rechargeVo.value.area = '';
rechargeVo.value.startDate = '';
rechargeVo.value.endDate = '';
rechargeVo.value.activityId = "";
rechargeVo.value.payWay = "";
rechargeVo.value.area = "";
rechargeVo.value.startDate = "";
rechargeVo.value.endDate = "";
getTime.value = {}; getTime.value = {};
}
};
// //
const getToday = function () { 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);
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]; getTime.value = [startDate, endDate];
console.log('getTime', getTime.value);
console.log("getTime", getTime.value);
get(); get();
}
};
// //
const getYesterday = function () { const getYesterday = function () {
const yesterday = new Date(); const yesterday = new Date();
yesterday.setDate(yesterday.getDate() - 1); 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);
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]; getTime.value = [startDate, endDate];
console.log('getTime', getTime.value);
console.log("getTime", getTime.value);
get(); get();
}
};
// 7 // 7
const get7Days = function () { 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);
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]; getTime.value = [startDate, endDate];
console.log('getTime', getTime.value);
console.log("getTime", getTime.value);
get(); get();
}
};
// //
const adminAll = function () { const adminAll = function () {
console.log('adminAll');
rechargeVo.value.status = '';
console.log("adminAll");
rechargeVo.value.status = "";
getObj.value.pageNum = 1; getObj.value.pageNum = 1;
get(); get();
}
};
// //
const adminWait = function () { const adminWait = function () {
rechargeVo.value.status = 0; rechargeVo.value.status = 0;
getObj.value.pageNum = 1; getObj.value.pageNum = 1;
get(); get();
console.log('adminWait');
}
console.log("adminWait");
};
// //
const adminPass = function () { const adminPass = function () {
rechargeVo.value.status = 1; rechargeVo.value.status = 1;
getObj.value.pageNum = 1; getObj.value.pageNum = 1;
get(); get();
console.log('adminPass');
}
console.log("adminPass");
};
// //
const adminReject = function () { const adminReject = function () {
rechargeVo.value.status = 2; rechargeVo.value.status = 2;
getObj.value.pageNum = 1; getObj.value.pageNum = 1;
get(); get();
console.log('adminReject');
}
console.log("adminReject");
};
// //
const handleClick = function (tab, event) { const handleClick = function (tab, event) {
if (tab.props.name === 'all') {
if (tab.props.name === "all") {
adminAll(); adminAll();
} else if (tab.props.name === 'wait') {
} else if (tab.props.name === "wait") {
adminWait(); adminWait();
} else if (tab.props.name === 'pass') {
} else if (tab.props.name === "pass") {
adminPass(); adminPass();
} else if (tab.props.name === 'reject') {
} else if (tab.props.name === "reject") {
adminReject(); adminReject();
} }
}
};
// //
const getActivity = async function () { const getActivity = async function () {
try { try {
// POST // POST
const result = await API.post('http://192.168.8.93:10010/recharge/activity/select', {});
const result = await API.post(
"http://192.168.8.93:10010/recharge/activity/select",
{}
);
// //
console.log('请求成功', result);
console.log("请求成功", result);
// //
activity.value = result.data; activity.value = result.data;
console.log('activity', activity.value);
console.log("activity", activity.value);
} catch (error) { } catch (error) {
console.log('请求失败', error);
console.log("请求失败", error);
// //
} }
}
};
// //
const getArea = async function () { const getArea = async function () {
try { try {
// POST // POST
const result = await API.post('http://192.168.8.93:10010/recharge/recharge', {});
const result = await API.post(
"http://192.168.8.93:10010/recharge/recharge",
{}
);
// //
console.log('请求成功', result);
console.log("请求成功", result);
// //
allData.value = result.data; allData.value = result.data;
console.log('allData', allData.value);
console.log("allData", allData.value);
// //
area.value = [...new Set(allData.value.map(item => item.area))]
console.log('地区', area.value);
area.value = [...new Set(allData.value.map((item) => item.area))];
console.log("地区", area.value);
} catch (error) { } catch (error) {
console.log('请求失败', error);
console.log("请求失败", error);
// //
} }
}
};
// ================================= // =================================
// //
const del = function (row) { const del = function (row) {
delObj.value.rechargeId = row.rechargeId; delObj.value.rechargeId = row.rechargeId;
console.log('delObj1', delObj.value);
}
console.log("delObj1", delObj.value);
};
// //
const delConfirm = async function () { const delConfirm = async function () {
try { try {
console.log('delObj2', delObj.value);
const result = await API.post('http://192.168.8.93:10010/recharge/recharge/edit', delObj.value);
console.log('删除成功', result);
console.log("delObj2", delObj.value);
const result = await API.post(
"http://192.168.8.93:10010/recharge/recharge/edit",
delObj.value
);
console.log("删除成功", result);
// //
get(); get();
} catch (error) { } catch (error) {
console.log('请求失败', error);
console.log("请求失败", error);
// //
} }
}
};
// //
const checkNumber = function () { const checkNumber = function () {
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))) {
console.log('输入的数字合法');
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)
) {
console.log("输入的数字合法");
get(); get();
} else { } else {
// //
ElMessage({ ElMessage({
type: 'error',
message: '请检查输入内容',
})
type: "error",
message: "请检查输入内容",
});
} }
} else { } else {
// //
ElMessage({ ElMessage({
type: 'error',
message: '请检查输入内容',
})
}
type: "error",
message: "请检查输入内容",
});
} }
};
// //
onMounted(async function () { onMounted(async function () {
await get(); await get();
getActivity(); getActivity();
await getArea(); await getArea();
})
});
</script> </script>
<template> <template>
<el-row> <el-row>
<el-col> <el-col>
<el-card style="margin-bottom: 20px"> <el-card style="margin-bottom: 20px">
<el-row style="margin-bottom: 10px;">
<el-row style="margin-bottom: 10px">
<el-col :span="8"> <el-col :span="8">
<div class="head-card-element"> <div class="head-card-element">
<el-text class="mx-1" size="large">活动名称</el-text> <el-text class="mx-1" size="large">活动名称</el-text>
<el-select v-model="rechargeVo.activityId" placeholder="请选择活动名称" size="large"
style="width: 240px" clearable>
<el-option v-for="item in activity" :key="item.activityId" :label="item.activityName"
:value="item.activityId" />
<el-select
v-model="rechargeVo.activityId"
placeholder="请选择活动名称"
size="large"
style="width: 240px"
clearable
>
<el-option
v-for="item in activity"
:key="item.activityId"
:label="item.activityName"
:value="item.activityId"
/>
</el-select> </el-select>
</div> </div>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<div class="head-card-element"> <div class="head-card-element">
<el-text class="mx-1" size="large">支付方式</el-text> <el-text class="mx-1" size="large">支付方式</el-text>
<el-select v-model="rechargeVo.payWay" placeholder="请选择支付方式" size="large"
style="width: 240px" clearable>
<el-option v-for="item in payWay" :key="item.value" :label="item.label"
:value="item.value" />
<el-select
v-model="rechargeVo.payWay"
placeholder="请选择支付方式"
size="large"
style="width: 240px"
clearable
>
<el-option
v-for="item in payWay"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select> </el-select>
</div> </div>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<div class="head-card-element"> <div class="head-card-element">
<el-text class="mx-1" size="large">所属地区</el-text> <el-text class="mx-1" size="large">所属地区</el-text>
<el-select v-model="rechargeVo.area" placeholder="请选择所属地区" size="large"
style="width: 240px" clearable>
<el-option v-for="item in area" :key="item" :label="item" :value="item" />
<el-select
v-model="rechargeVo.area"
placeholder="请选择所属地区"
size="large"
style="width: 240px"
clearable
>
<el-option
v-for="item in area"
:key="item"
:label="item"
:value="item"
/>
</el-select> </el-select>
</div> </div>
</el-col> </el-col>
@ -317,9 +381,16 @@ onMounted(async function () {
<el-col :span="21"> <el-col :span="21">
<div class="head-card-element"> <div class="head-card-element">
<el-text class="mx-1" size="large">充值时间</el-text> <el-text class="mx-1" size="large">充值时间</el-text>
<el-date-picker v-model="getTime" type="datetimerange" range-separator=""
start-placeholder="起始时间" end-placeholder="结束时间" />
<el-button style="margin-left: 10px;" @click="getToday()"></el-button>
<el-date-picker
v-model="getTime"
type="datetimerange"
range-separator="至"
start-placeholder="起始时间"
end-placeholder="结束时间"
/>
<el-button style="margin-left: 10px" @click="getToday()"
></el-button
>
<el-button @click="getYesterday()"></el-button> <el-button @click="getYesterday()"></el-button>
<el-button @click="get7Days()">近7天</el-button> <el-button @click="get7Days()">近7天</el-button>
</div> </div>
@ -337,7 +408,12 @@ onMounted(async function () {
<el-row> <el-row>
<el-col> <el-col>
<el-card> <el-card>
<el-tabs v-model="activeName" type="card" class="demo-tabs" @tab-click="handleClick">
<el-tabs
v-model="activeName"
type="card"
class="demo-tabs"
@tab-click="handleClick"
>
<el-tab-pane label="全部" name="all"></el-tab-pane> <el-tab-pane label="全部" name="all"></el-tab-pane>
<el-tab-pane label="待审核" name="wait"></el-tab-pane> <el-tab-pane label="待审核" name="wait"></el-tab-pane>
<el-tab-pane label="已通过" name="pass"></el-tab-pane> <el-tab-pane label="已通过" name="pass"></el-tab-pane>
@ -346,17 +422,40 @@ onMounted(async function () {
<div> <div>
<el-table :data="tableData" :height="tableHeight" style="width: 100%"> <el-table :data="tableData" :height="tableHeight" style="width: 100%">
<el-table-column prop="username" label="姓名" width="100px" /> <el-table-column prop="username" label="姓名" width="100px" />
<el-table-column prop="jwcode" label="精网号" width="150px" />
<el-table-column prop="jwcode" label="精网号" width="130px" />
<el-table-column prop="area" label="所属地区" width="100px" /> <el-table-column prop="area" label="所属地区" width="100px" />
<el-table-column prop="activityName" label="活动名称" width="150px" />
<el-table-column prop="rechargeGold" label="充值金额" width="100px" />
<el-table-column
prop="activityName"
label="活动名称"
width="150px"
/>
<el-table-column
prop="paidGold"
label="充值金额(新币)"
width="120px"
/>
<el-table-column prop="paidGold" label="充值金币" width="100px" /> <el-table-column prop="paidGold" label="充值金币" width="100px" />
<el-table-column prop="freeGold" label="免费金币" width="100px" /> <el-table-column prop="freeGold" label="免费金币" width="100px" />
<el-table-column prop="remark" label="备注" width="200px" show-overflow-tooltip />
<el-table-column
prop="remark"
label="备注"
width="200px"
show-overflow-tooltip
/>
<el-table-column prop="payWay" label="支付方式" width="100px" /> <el-table-column prop="payWay" label="支付方式" width="100px" />
<el-table-column prop="rechargeVoucher" label="支付凭证" width="150px">
<el-table-column
prop="rechargeVoucher"
label="支付凭证"
width="150px"
>
<template #default="scope"> <template #default="scope">
<el-image :preview-src-list="[scope.row.rechargeVoucher]" preview-teleported="true" :src="scope.row.rechargeVoucher" alt="凭证" style="width: 50px; height: 50px" />
<el-image
:preview-src-list="[scope.row.rechargeVoucher]"
preview-teleported="true"
:src="scope.row.rechargeVoucher"
alt="凭证"
style="width: 50px; height: 50px"
/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="name" label="提交人" width="100px" /> <el-table-column prop="name" label="提交人" width="100px" />
@ -382,16 +481,31 @@ onMounted(async function () {
</span> </span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="reson" label="驳回理由" width="200px" show-overflow-tooltip />
<el-table-column
prop="reson"
label="驳回理由"
width="200px"
show-overflow-tooltip
/>
<el-table-column prop="rechargeTime" label="交款时间" width="200px"> <el-table-column prop="rechargeTime" label="交款时间" width="200px">
<template #default="scope"> <template #default="scope">
{{ moment(scope.row.rechargeTime).format('YYYY-MM-DD HH:mm:ss') }}
{{
moment(scope.row.rechargeTime).format("YYYY-MM-DD HH:mm:ss")
}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="createTime" label="提交时间" width="200px" /> <el-table-column prop="createTime" label="提交时间" width="200px" />
<el-table-column fixed="right" prop="operation" label="操作" width="150px">
<el-table-column
fixed="right"
prop="operation"
label="操作"
width="150px"
>
<template #default="scope"> <template #default="scope">
<el-popconfirm title="确定将此条活动删除吗?" @confirm="delConfirm">
<el-popconfirm
title="确定将此条活动删除吗?"
@confirm="delConfirm"
>
<template #reference> <template #reference>
<el-button type="primary" text @click="del(scope.row)"> <el-button type="primary" text @click="del(scope.row)">
删除 删除
@ -405,25 +519,48 @@ onMounted(async function () {
</template> </template>
</el-popconfirm> </el-popconfirm>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
</div> </div>
<!-- 分页 --> <!-- 分页 -->
<div class="pagination">
<el-pagination background :page-size="getObj.pageSize" layout="slot" :total="total">
<div class="pagination" style="margin-top: 20px">
<el-pagination
background
:page-size="getObj.pageSize"
layout="slot"
:total="total"
>
<div>{{ total }},每页</div> <div>{{ total }},每页</div>
<el-select v-model="getObj.pageSize" class="page-size" @change="get()" style="width: 80px">
<el-option v-for="item in [5, 6, 7, 8, 9, 10]" :key="item" :label="item"
:value="item"></el-option>
<el-select
v-model="getObj.pageSize"
class="page-size"
@change="get()"
style="width: 80px"
>
<el-option
v-for="item in [5, 6, 7, 8, 9, 10]"
:key="item"
:label="item"
:value="item"
></el-option>
</el-select> </el-select>
<div></div> <div></div>
</el-pagination> </el-pagination>
<el-pagination background layout="prev, pager, next,slot" :page-size="getObj.pageSize"
:total="total" :current-page="getObj.pageNum" @current-change="get">
<el-pagination
background
layout="prev, pager, next,slot"
:page-size="getObj.pageSize"
:total="total"
:current-page="getObj.pageNum"
@current-change="get"
>
<div>跳至</div> <div>跳至</div>
<el-input v-model="getObj.pageNum" style="width: 40px;" @change="checkNumber" />
<el-input
v-model="getObj.pageNum"
style="width: 40px"
@change="checkNumber"
/>
<div></div> <div></div>
</el-pagination> </el-pagination>
</div> </div>
@ -432,13 +569,20 @@ onMounted(async function () {
</el-row> </el-row>
<!-- 编辑弹窗 --> <!-- 编辑弹窗 -->
<el-dialog v-model="editRechargeVisible" title="新增活动" width="500" :before-close="closeEditRechargeVisible">
<el-dialog
v-model="editRechargeVisible"
title="新增活动"
width="500"
:before-close="closeEditRechargeVisible"
>
<template #footer> <template #footer>
<el-form :model="editObj" label-width="auto" style="max-width: 600px"> <el-form :model="editObj" label-width="auto" style="max-width: 600px">
<el-form-item label="活动名称:"> <el-form-item label="活动名称:">
<el-input v-model="addObj.activityName" placeholder="请输入活动名称" style="width: 220px;" />
<el-input
v-model="addObj.activityName"
placeholder="请输入活动名称"
style="width: 220px"
/>
</el-form-item> </el-form-item>
<el-form-item label="免费金币:"> <el-form-item label="免费金币:">
@ -449,8 +593,12 @@ onMounted(async function () {
</el-form-item> </el-form-item>
<el-form-item label="免费金币兑换比:"> <el-form-item label="免费金币兑换比:">
<el-input v-model="addObj.rechargeRatio" placeholder="请输入" style="width: 80px;" />1
<div style="color: grey;">(提示当前规则每10新币可兑换1免费金币)</div>
<el-input
v-model="addObj.rechargeRatio"
placeholder="请输入"
style="width: 80px"
/>1
<div style="color: grey">(提示当前规则每10新币可兑换1免费金币)</div>
</el-form-item> </el-form-item>
<el-form-item label="开始时间:"> <el-form-item label="开始时间:">
@ -462,9 +610,8 @@ onMounted(async function () {
</el-form-item> </el-form-item>
<el-form-item label="添加人:"> <el-form-item label="添加人:">
<el-input v-model="addObj.adminName" disabled style="width: 220px;" />
<el-input v-model="addObj.adminName" disabled style="width: 220px" />
</el-form-item> </el-form-item>
</el-form> </el-form>
<div class="dialog-footer"> <div class="dialog-footer">
@ -475,7 +622,6 @@ onMounted(async function () {
</div> </div>
</template> </template>
</el-dialog> </el-dialog>
</template> </template>
<style scoped> <style scoped>

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

@ -389,7 +389,7 @@ onMounted(async function () {
<div> <div>
<el-table :data="tableData" :height="tableHeight" style="width: 100%"> <el-table :data="tableData" :height="tableHeight" style="width: 100%">
<el-table-column prop="username" label="姓名" width="100px" /> <el-table-column prop="username" label="姓名" width="100px" />
<el-table-column prop="jwcode" label="精网号" width="150px" />
<el-table-column prop="jwcode" label="精网号" width="130px" />
<el-table-column prop="area" label="所属地区" width="100px" /> <el-table-column prop="area" label="所属地区" width="100px" />
<el-table-column <el-table-column
prop="activityName" prop="activityName"
@ -397,9 +397,9 @@ onMounted(async function () {
width="150px" width="150px"
/> />
<el-table-column <el-table-column
prop="rechargeGold"
label="充值金额"
width="100px"
prop="paidGold"
label="充值金额(新币)"
width="120px"
/> />
<el-table-column <el-table-column
prop="rechargeWay" prop="rechargeWay"
@ -471,7 +471,7 @@ onMounted(async function () {
</div> </div>
<!-- 分页 --> <!-- 分页 -->
<div class="pagination">
<div class="pagination" style="margin-top: 20px">
<el-pagination <el-pagination
background background
:page-size="getObj.pageSize" :page-size="getObj.pageSize"

15
vue/gold-system/src/views/refund/addRefund.vue

@ -379,12 +379,15 @@ const handleSelectionChange = (value) => {
</el-form> </el-form>
<!-- 客户信息栏 --> <!-- 客户信息栏 -->
<el-card style="float: right" class="customer-info">
<el-form :model="user" label-width="auto" label-position="left">
<el-text size="large" style="margin-left: 20px; font-weight: bold"
>客户信息</el-text
<el-card style="width: 850px; float: right" class="customer-info">
<el-form
:model="user"
label-width="auto"
style="max-width: 1000px"
label-position="left"
> >
<el-row style="margin-top: 20px; display: flex">
<el-text size="large" style="margin-left: 20px">客户信息</el-text>
<el-row style="margin-top: 20px">
<el-col :span="10"> <el-col :span="10">
<el-form-item label="姓名:"> <el-form-item label="姓名:">
<p>{{ user.name }}</p> <p>{{ user.name }}</p>
@ -401,7 +404,7 @@ const handleSelectionChange = (value) => {
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="14"> <el-col :span="14">
<el-form-item label="当前金币总数">
<el-form-item label="当前金币总数" style="width: 500px">
<span style="color: #2fa1ff; margin-right: 5px" v-if="user.buyJb">{{ <span style="color: #2fa1ff; margin-right: 5px" v-if="user.buyJb">{{
user.buyJb + user.free6 + user.free12 + user.coreJb user.buyJb + user.free6 + user.free12 + user.coreJb
}}</span> }}</span>

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

@ -14,7 +14,7 @@ const detail = ref({});
// //
const getObj = ref({ const getObj = ref({
pageNum: 1, pageNum: 1,
pageSize: 10,
pageSize: 5,
}); });
// //
const total = ref(100); const total = ref(100);
@ -487,14 +487,46 @@ getGoods();
</div> </div>
<!-- 分页 --> <!-- 分页 -->
<div class="pagination">
<el-pagination <el-pagination
background background
layout="prev, pager, next"
:page-size="getObj.pageSize"
layout="slot"
:total="total" :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, 6, 7, 8, 9, 10]"
: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-size="getObj.pageSize"
:total="total"
:current-page="getObj.pageNum" :current-page="getObj.pageNum"
@current-change="get" @current-change="get"
>
<div>跳至</div>
<el-input
v-model="getObj.pageNum"
style="width: 40px"
@change="checkNumber"
/> />
<div></div>
</el-pagination>
</div>
</el-card> </el-card>
</el-col> </el-col>
</el-row> </el-row>
@ -516,4 +548,8 @@ getGoods();
.head-card-btn { .head-card-btn {
margin-left: auto; margin-left: auto;
} }
.pagination {
display: flex;
margin-top: 20px;
}
</style> </style>

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

@ -2,6 +2,7 @@
import { ref, onMounted, reactive, computed } from "vue"; import { ref, onMounted, reactive, computed } from "vue";
import ElementPlus from "element-plus"; import ElementPlus from "element-plus";
import axios from "axios"; import axios from "axios";
import moment from "moment";
import { ta } from "element-plus/es/locales.mjs"; import { ta } from "element-plus/es/locales.mjs";
import API from "../../api/index.js"; import API from "../../api/index.js";
@ -46,7 +47,7 @@ const updateType = [
// //
const tableHeight = computed(function () { const tableHeight = computed(function () {
return getObj.value.pageSize * 50 + "px";
return (getObj.value.pageSize + 2) * 38 + "px";
}); });
// //
@ -264,10 +265,10 @@ onMounted(async function () {
</div> </div>
<div> <div>
<el-table :data="tableData" :height="tableHeight" style="width: 100%"> <el-table :data="tableData" :height="tableHeight" style="width: 100%">
<el-table-column prop="uname" label="姓名" />
<el-table-column prop="jwcode" label="精网号" />
<el-table-column prop="area" label="所属地区" />
<el-table-column prop="gold" label="更新数量">
<el-table-column prop="uname" label="姓名" width="130" />
<el-table-column prop="jwcode" label="精网号" width="170" />
<el-table-column prop="area" label="所属地区" width="170" />
<el-table-column prop="gold" label="更新数量" width="160">
<template #default="scope"> <template #default="scope">
<span>{{ <span>{{
scope.row.rechargeCoin + scope.row.rechargeCoin +
@ -276,18 +277,29 @@ onMounted(async function () {
}}</span> }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="updateType" label="更新类型" />
<el-table-column prop="freeCoin" label="免费金币" />
<el-table-column prop="rechargeCoin" label="充值金币" />
<el-table-column prop="taskCoin" label="任务金币" />
<el-table-column prop="name" label="提交人" />
<el-table-column prop="createTime" label="更新时间" />
<el-table-column prop="updateType" label="更新类型" width="150" />
<el-table-column prop="freeCoin" label="免费金币" width="130" />
<el-table-column prop="rechargeCoin" label="充值金币" width="150" />
<el-table-column prop="taskCoin" label="任务金币" width="130" />
<el-table-column prop="name" label="提交人" width="150" />
<el-table-column
prop="createTime"
label="更新时间"
width="210"
show-overflow-tooltip
>
<template #default="scope">
<span>{{
moment(scope.row.createTime).format("YYYY-MM-DD HH:mm:ss")
}}</span>
</template>
</el-table-column>
</el-table> </el-table>
</div> </div>
<!-- 分页 --> <!-- 分页 -->
<!-- 分页 --> <!-- 分页 -->
<div class="pagination">
<div class="pagination" style="margin-top: 20px">
<el-pagination <el-pagination
background background
:page-size="getObj.pageSize" :page-size="getObj.pageSize"

Loading…
Cancel
Save