Compare commits
28 Commits
guildOpera
...
luckGift
Author | SHA1 | Date | |
---|---|---|---|
![]() |
4d5fb57ddf | ||
![]() |
b174c9818e | ||
![]() |
c6f979c094 | ||
![]() |
475ee45a44 | ||
![]() |
c4209d6c24 | ||
![]() |
e77165a1d7 | ||
![]() |
8a2c1381e9 | ||
![]() |
e062c2afa3 | ||
![]() |
591495edcc | ||
![]() |
25e828f7e4 | ||
![]() |
1ab319d372 | ||
![]() |
9b6ee433d7 | ||
![]() |
9c4aa4efb9 | ||
![]() |
f228aad967 | ||
![]() |
e47b57f760 | ||
![]() |
4e3bbd9209 | ||
![]() |
9f9e7ca81c | ||
![]() |
493ad80d1c | ||
![]() |
a71144b735 | ||
![]() |
ebf22c8012 | ||
![]() |
69dc2de281 | ||
![]() |
520e4e4c58 | ||
![]() |
faa779555c | ||
![]() |
a62f2a5eca | ||
![]() |
65cf443cb4 | ||
![]() |
9f2b89d0be | ||
![]() |
b362a25028 | ||
![]() |
3c909bdb97 |
20
package-lock.json
generated
20
package-lock.json
generated
@@ -22,6 +22,7 @@
|
|||||||
"knockout": "^3.5.1",
|
"knockout": "^3.5.1",
|
||||||
"less": "^4.2.0",
|
"less": "^4.2.0",
|
||||||
"less-loader": "^11.1.3",
|
"less-loader": "^11.1.3",
|
||||||
|
"moment-timezone": "^0.5.45",
|
||||||
"node-sass": "^9.0.0",
|
"node-sass": "^9.0.0",
|
||||||
"popper.js": "^1.16.1",
|
"popper.js": "^1.16.1",
|
||||||
"sass": "^1.67.0",
|
"sass": "^1.67.0",
|
||||||
@@ -8974,6 +8975,25 @@
|
|||||||
"integrity": "sha512-23g5BFj4zdQL/b6tor7Ji+QY4pEfNH784BMslY9Qb0UnJWRAt+lQGLYmRaM0KDBwIG23ffEBELhZDP2rhi9f/Q==",
|
"integrity": "sha512-23g5BFj4zdQL/b6tor7Ji+QY4pEfNH784BMslY9Qb0UnJWRAt+lQGLYmRaM0KDBwIG23ffEBELhZDP2rhi9f/Q==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
|
"node_modules/moment": {
|
||||||
|
"version": "2.30.1",
|
||||||
|
"resolved": "https://registry.npmmirror.com/moment/-/moment-2.30.1.tgz",
|
||||||
|
"integrity": "sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how==",
|
||||||
|
"engines": {
|
||||||
|
"node": "*"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/moment-timezone": {
|
||||||
|
"version": "0.5.45",
|
||||||
|
"resolved": "https://registry.npmmirror.com/moment-timezone/-/moment-timezone-0.5.45.tgz",
|
||||||
|
"integrity": "sha512-HIWmqA86KcmCAhnMAN0wuDOARV/525R2+lOLotuGFzn4HO+FH+/645z2wx0Dt3iDv6/p61SIvKnDstISainhLQ==",
|
||||||
|
"dependencies": {
|
||||||
|
"moment": "^2.29.4"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": "*"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/mrmime": {
|
"node_modules/mrmime": {
|
||||||
"version": "1.0.1",
|
"version": "1.0.1",
|
||||||
"resolved": "https://registry.npmmirror.com/mrmime/-/mrmime-1.0.1.tgz",
|
"resolved": "https://registry.npmmirror.com/mrmime/-/mrmime-1.0.1.tgz",
|
||||||
|
@@ -22,6 +22,7 @@
|
|||||||
"knockout": "^3.5.1",
|
"knockout": "^3.5.1",
|
||||||
"less": "^4.2.0",
|
"less": "^4.2.0",
|
||||||
"less-loader": "^11.1.3",
|
"less-loader": "^11.1.3",
|
||||||
|
"moment-timezone": "^0.5.45",
|
||||||
"node-sass": "^9.0.0",
|
"node-sass": "^9.0.0",
|
||||||
"popper.js": "^1.16.1",
|
"popper.js": "^1.16.1",
|
||||||
"sass": "^1.67.0",
|
"sass": "^1.67.0",
|
||||||
|
42
src/api/SsGuild/SsGuild.js
Normal file
42
src/api/SsGuild/SsGuild.js
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
import request from '@/utils/request';
|
||||||
|
import { genQueryParam } from '@/utils/maintainer';
|
||||||
|
import qs from 'qs';
|
||||||
|
|
||||||
|
// 周期选项下拉框
|
||||||
|
export const cycleDateList = query => {
|
||||||
|
return request({
|
||||||
|
url: '/admin/ssGuild/cycleDateList',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
});
|
||||||
|
};
|
||||||
|
// SS公会列表
|
||||||
|
export const list = query => {
|
||||||
|
return request({
|
||||||
|
url: '/admin/ssGuild/list',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
});
|
||||||
|
};
|
||||||
|
// 发送金币&批量发送
|
||||||
|
export const sendGold = query => {
|
||||||
|
return request({
|
||||||
|
url: '/admin/ssGuild/sendGold',
|
||||||
|
method: 'post',
|
||||||
|
params: query
|
||||||
|
});
|
||||||
|
};
|
||||||
|
// 导出
|
||||||
|
// export const ssGuildExport = query => {
|
||||||
|
// return request({
|
||||||
|
// url: `/admin/ssGuild/export`,
|
||||||
|
// method: 'post',
|
||||||
|
// params: query,
|
||||||
|
// responseType: 'blob'
|
||||||
|
// });
|
||||||
|
// };
|
||||||
|
// 导出-公会信息
|
||||||
|
export const ssGuildExport = query => {
|
||||||
|
window.location.href = `/admin/ssGuild/export?${genQueryParam(query)}`;
|
||||||
|
return;
|
||||||
|
};
|
70
src/api/luckGift/luckGift.js
Normal file
70
src/api/luckGift/luckGift.js
Normal file
@@ -0,0 +1,70 @@
|
|||||||
|
import request from '@/utils/request';
|
||||||
|
import { genQueryParam } from '@/utils/maintainer';
|
||||||
|
import qs from 'qs';
|
||||||
|
|
||||||
|
// 奖池拉框
|
||||||
|
export const listType = query => {
|
||||||
|
return request({
|
||||||
|
url: '/admin/lucky24/pool/listType',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
});
|
||||||
|
};
|
||||||
|
// 池子列表
|
||||||
|
export const list = query => {
|
||||||
|
return request({
|
||||||
|
url: '/admin/lucky24/pool/list',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
});
|
||||||
|
};
|
||||||
|
// 基础配置
|
||||||
|
export const getConfig = query => {
|
||||||
|
return request({
|
||||||
|
url: '/admin/lucky24/config/getConfig',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
});
|
||||||
|
};
|
||||||
|
// 基础配置-修改
|
||||||
|
export const updateSet = query => {
|
||||||
|
return request({
|
||||||
|
headers: { "Content-Type": 'application/json;charset=UTF-8' },
|
||||||
|
url: '/admin/lucky24/config/update',
|
||||||
|
method: 'post',
|
||||||
|
data: query
|
||||||
|
});
|
||||||
|
};
|
||||||
|
// 个人数据
|
||||||
|
export const personal = query => {
|
||||||
|
return request({
|
||||||
|
url: '/admin/lucky24/record/personal',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
});
|
||||||
|
};
|
||||||
|
// 汇总
|
||||||
|
export const platform = query => {
|
||||||
|
return request({
|
||||||
|
url: '/admin/lucky24/record/platform',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
});
|
||||||
|
};
|
||||||
|
// 保存池子
|
||||||
|
export const save = query => {
|
||||||
|
return request({
|
||||||
|
headers: { "Content-Type": 'application/json;charset=UTF-8' },
|
||||||
|
url: '/admin/lucky24/pool/save',
|
||||||
|
method: 'post',
|
||||||
|
data: query
|
||||||
|
});
|
||||||
|
};
|
||||||
|
// 赠送用户
|
||||||
|
export const updateUserMulti = query => {
|
||||||
|
return request({
|
||||||
|
url: '/admin/lucky24/config/updateUserMulti',
|
||||||
|
method: 'post',
|
||||||
|
params: query
|
||||||
|
});
|
||||||
|
};
|
43
src/api/relPrivilegeManage/relPrivilegeManage.js
Normal file
43
src/api/relPrivilegeManage/relPrivilegeManage.js
Normal file
@@ -0,0 +1,43 @@
|
|||||||
|
import request from '@/utils/request';
|
||||||
|
import qs from 'qs';
|
||||||
|
// 靓号申请管理 列表
|
||||||
|
export const getPrettyNumberExamineList = query => {
|
||||||
|
return request({
|
||||||
|
url: '/admin/prettyNumber/examine/list',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
});
|
||||||
|
};
|
||||||
|
// 靓号申请管理 通过
|
||||||
|
export const prettyNumberExaminePass = query => {
|
||||||
|
return request({
|
||||||
|
url: '/admin/prettyNumber/examine/pass',
|
||||||
|
method: 'post',
|
||||||
|
params: query
|
||||||
|
});
|
||||||
|
};
|
||||||
|
// 靓号申请管理 删除
|
||||||
|
export const prettyNumberExamineDelete = query => {
|
||||||
|
return request({
|
||||||
|
url: '/admin/prettyNumber/examine/delete',
|
||||||
|
method: 'get',
|
||||||
|
params: query
|
||||||
|
});
|
||||||
|
};
|
||||||
|
// 靓号申请管理 拒绝
|
||||||
|
export const prettyNumberExamineReject = query => {
|
||||||
|
return request({
|
||||||
|
url: '/admin/prettyNumber/examine/reject',
|
||||||
|
method: 'post',
|
||||||
|
params: query
|
||||||
|
});
|
||||||
|
};
|
||||||
|
// 靓号导入
|
||||||
|
export const erbanUpload = query => {
|
||||||
|
return request({
|
||||||
|
url: '/prettyNumberExamine/erban/upload',
|
||||||
|
method: 'post',
|
||||||
|
headers: { 'Content-Type': 'multipart/form-data' },
|
||||||
|
data: query
|
||||||
|
});
|
||||||
|
};
|
429
src/views/accountApplyManage/accountApplyManage.vue
Normal file
429
src/views/accountApplyManage/accountApplyManage.vue
Normal file
@@ -0,0 +1,429 @@
|
|||||||
|
<template>
|
||||||
|
<div class="account-apply-manage">
|
||||||
|
<div class="container">
|
||||||
|
<div class="region-box">
|
||||||
|
<el-radio-group v-model="region">
|
||||||
|
<el-radio
|
||||||
|
v-for="(item, index) in userAreaRegion"
|
||||||
|
:key="index"
|
||||||
|
:label="item.value"
|
||||||
|
>{{ item.name }}</el-radio
|
||||||
|
>
|
||||||
|
</el-radio-group>
|
||||||
|
</div>
|
||||||
|
<div class="handle-box">
|
||||||
|
<el-form
|
||||||
|
ref="searchForm"
|
||||||
|
:model="searchForm"
|
||||||
|
label-width="90px"
|
||||||
|
:disabled="tableLoading"
|
||||||
|
>
|
||||||
|
<div class="search-line">
|
||||||
|
<el-form-item label="Shaker ID" prop="erbanNo">
|
||||||
|
<el-input
|
||||||
|
v-model.trim="searchForm.erbanNo"
|
||||||
|
placeholder="Please enter"
|
||||||
|
></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="UID" prop="uid">
|
||||||
|
<el-input
|
||||||
|
v-model.trim="searchForm.uid"
|
||||||
|
placeholder="Please enter"
|
||||||
|
></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="SID" prop="sid">
|
||||||
|
<el-input
|
||||||
|
v-model.trim="searchForm.sid"
|
||||||
|
placeholder="Please enter"
|
||||||
|
></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label-width="40px">
|
||||||
|
<el-button type="primary" @click="handSearch">Search</el-button>
|
||||||
|
<el-button plain @click="resetSearchForm">Reset Search</el-button>
|
||||||
|
<el-upload
|
||||||
|
class="file-uploader"
|
||||||
|
action="#"
|
||||||
|
list-type="picture-card"
|
||||||
|
:show-file-list="false"
|
||||||
|
:on-change="handleExcel"
|
||||||
|
accept=".xls, .xlsx"
|
||||||
|
:auto-upload="false"
|
||||||
|
>
|
||||||
|
<el-button type="primary">Import</el-button>
|
||||||
|
</el-upload>
|
||||||
|
</el-form-item>
|
||||||
|
</div>
|
||||||
|
</el-form>
|
||||||
|
<!-- <el-upload
|
||||||
|
class="file-uploader"
|
||||||
|
action="#"
|
||||||
|
list-type="picture-card"
|
||||||
|
:show-file-list="false"
|
||||||
|
:on-change="handleExcel"
|
||||||
|
accept=".xls, .xlsx"
|
||||||
|
:auto-upload="false"
|
||||||
|
>
|
||||||
|
<el-button type="primary" class="el-icon-upload">Import</el-button>
|
||||||
|
</el-upload> -->
|
||||||
|
</div>
|
||||||
|
<div class="table">
|
||||||
|
<el-table
|
||||||
|
:data="tableData"
|
||||||
|
border
|
||||||
|
v-loading="tableLoading"
|
||||||
|
@header-click="headerCopy"
|
||||||
|
style="width: 100%"
|
||||||
|
>
|
||||||
|
<el-table-column align="center" prop="id" label="No.">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column align="center" prop="erbanNo" label="Shaker ID">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column align="center" prop="uid" label="UID">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column align="center" prop="level" label="SID Level">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column align="center" prop="nick" label="Nickname">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column align="center" prop="createTime" label="Apply time">
|
||||||
|
<template v-slot="scope">{{
|
||||||
|
convertTimestamp(scope.row.createTime)
|
||||||
|
}}</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column align="center" prop="prettyNo" label="SID">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column align="center" prop="status" label="State">
|
||||||
|
<template v-slot="scope">
|
||||||
|
<el-tag :type="applyStateTag(scope.row.status)">{{
|
||||||
|
applyStateText(scope.row.status)
|
||||||
|
}}</el-tag>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column align="center" prop="updateTime" label="Review time">
|
||||||
|
<template v-slot="scope">{{
|
||||||
|
convertTimestamp(scope.row.updateTime)
|
||||||
|
}}</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column align="center" label="Operate">
|
||||||
|
<template v-slot="scope">
|
||||||
|
<el-button
|
||||||
|
type="text"
|
||||||
|
v-if="scope.row.status == 0"
|
||||||
|
@click="handlePass(scope.$index, scope.row)"
|
||||||
|
>
|
||||||
|
Pass
|
||||||
|
</el-button>
|
||||||
|
<el-button
|
||||||
|
type="text"
|
||||||
|
v-if="scope.row.status == 0"
|
||||||
|
@click="handleReject(scope.$index, scope.row)"
|
||||||
|
>
|
||||||
|
Reject
|
||||||
|
</el-button>
|
||||||
|
<el-button
|
||||||
|
type="text"
|
||||||
|
v-if="scope.row.status == 1"
|
||||||
|
class="red"
|
||||||
|
@click="handleDelete(scope.$index, scope.row)"
|
||||||
|
>
|
||||||
|
Delete
|
||||||
|
</el-button>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
<table-pagination
|
||||||
|
:pageParams="pageParams"
|
||||||
|
:pageTotal="pageTotal"
|
||||||
|
:ifShowSizes="true"
|
||||||
|
@handleSizeChange="handleSizeChange"
|
||||||
|
@handlePageChange="handlePageChange"
|
||||||
|
></table-pagination>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import {
|
||||||
|
getPrettyNumberExamineList,
|
||||||
|
prettyNumberExaminePass,
|
||||||
|
prettyNumberExamineDelete,
|
||||||
|
prettyNumberExamineReject,
|
||||||
|
erbanUpload,
|
||||||
|
} from "@/api/relPrivilegeManage/relPrivilegeManage.js";
|
||||||
|
import TablePagination from "@/components/common/TablePagination";
|
||||||
|
import { formatDate } from "@/utils/relDate";
|
||||||
|
import { ElMessageBox, ElMessage } from "element-plus"; // 正确引入 ElM
|
||||||
|
// 混入
|
||||||
|
// import Mixin from '../../mixin/mixRegion.js';
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: "accountApplyManage",
|
||||||
|
// mixins: [Mixin],
|
||||||
|
components: { TablePagination },
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
tableLoading: false, // 表格是否加载中
|
||||||
|
tableData: [], // 接口返回的表格数据
|
||||||
|
// 搜索表单相关
|
||||||
|
searchForm: {
|
||||||
|
erbanNo: null,
|
||||||
|
uid: null,
|
||||||
|
level: null,
|
||||||
|
region: null,
|
||||||
|
},
|
||||||
|
pageTotal: 0, // 接口返回的表格总条数
|
||||||
|
pageParams: {
|
||||||
|
pageNo: 1,
|
||||||
|
pageSize: 10,
|
||||||
|
},
|
||||||
|
};
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
this.getData();
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
getData() {
|
||||||
|
this.tableLoading = true;
|
||||||
|
|
||||||
|
let { pageParams, searchForm } = this;
|
||||||
|
searchForm = JSON.parse(JSON.stringify(searchForm));
|
||||||
|
pageParams = JSON.parse(JSON.stringify(pageParams));
|
||||||
|
Object.keys(searchForm).forEach((item) => {
|
||||||
|
if (
|
||||||
|
!searchForm[item] ||
|
||||||
|
(searchForm[item] !== undefined && searchForm[item] === "")
|
||||||
|
) {
|
||||||
|
delete searchForm[item];
|
||||||
|
}
|
||||||
|
});
|
||||||
|
Object.assign(pageParams, searchForm);
|
||||||
|
|
||||||
|
getPrettyNumberExamineList(pageParams).then((res) => {
|
||||||
|
this.tableLoading = false;
|
||||||
|
if (res.code == 200) {
|
||||||
|
let data = res.data;
|
||||||
|
console.log(data);
|
||||||
|
this.tableData = data.rows;
|
||||||
|
this.pageTotal = data.total;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
|
//导入表格
|
||||||
|
handleExcel(file) {
|
||||||
|
let formData = new FormData(); //声明一个FormDate对象
|
||||||
|
formData.append("file", file.raw); //把文件信息放入对象中
|
||||||
|
console.log(file.raw);
|
||||||
|
erbanUpload(formData)
|
||||||
|
.then((res) => {
|
||||||
|
if (res.code == 200) {
|
||||||
|
this.getData();
|
||||||
|
this.$message.success("Operation successful");
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch((err) => {
|
||||||
|
// that.$message({
|
||||||
|
// type: 'error',
|
||||||
|
// message: 'Operation failed'
|
||||||
|
// });
|
||||||
|
});
|
||||||
|
},
|
||||||
|
// 通过
|
||||||
|
handlePass(index, row) {
|
||||||
|
ElMessageBox.confirm("Are you sure you want to pass?", "Prompt", {
|
||||||
|
type: "warning",
|
||||||
|
confirmButtonText: "Sure",
|
||||||
|
cancelButtonText: "Cancel",
|
||||||
|
})
|
||||||
|
.then(() => {
|
||||||
|
prettyNumberExaminePass({ id: row.id }).then((res) => {
|
||||||
|
if (res.code == 200) {
|
||||||
|
this.getData();
|
||||||
|
ElMessage({
|
||||||
|
showClose: true,
|
||||||
|
message: "Operation successful",
|
||||||
|
type: "success",
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
ElMessage({
|
||||||
|
showClose: true,
|
||||||
|
message: res.message,
|
||||||
|
type: "error",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
})
|
||||||
|
.catch(() => {});
|
||||||
|
},
|
||||||
|
// 拒绝
|
||||||
|
handleReject(index, row) {
|
||||||
|
ElMessageBox.confirm("Are you sure you want to refuse?", "Prompt", {
|
||||||
|
type: "warning",
|
||||||
|
confirmButtonText: "Sure",
|
||||||
|
cancelButtonText: "Cancel",
|
||||||
|
})
|
||||||
|
.then(() => {
|
||||||
|
prettyNumberExamineReject({ id: row.id }).then((res) => {
|
||||||
|
if (res.code == 200) {
|
||||||
|
this.getData();
|
||||||
|
ElMessage({
|
||||||
|
showClose: true,
|
||||||
|
message: "Operation successful",
|
||||||
|
type: "success",
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
ElMessage({
|
||||||
|
showClose: true,
|
||||||
|
message: res.message,
|
||||||
|
type: "error",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
})
|
||||||
|
.catch(() => {});
|
||||||
|
},
|
||||||
|
// 删除操作
|
||||||
|
handleDelete(index, row) {
|
||||||
|
// 二次确认删除
|
||||||
|
ElMessageBox.confirm("Are you sure you want to delete?", "Prompt", {
|
||||||
|
type: "warning",
|
||||||
|
confirmButtonText: "Sure",
|
||||||
|
cancelButtonText: "Cancel",
|
||||||
|
})
|
||||||
|
.then(() => {
|
||||||
|
prettyNumberExamineDelete({ id: row.id }).then((res) => {
|
||||||
|
if (res.code == 200) {
|
||||||
|
this.getData();
|
||||||
|
ElMessage({
|
||||||
|
showClose: true,
|
||||||
|
message: "Operation successful",
|
||||||
|
type: "success",
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
ElMessage({
|
||||||
|
showClose: true,
|
||||||
|
message: res.message,
|
||||||
|
type: "error",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
})
|
||||||
|
.catch(() => {});
|
||||||
|
},
|
||||||
|
// 点击搜索
|
||||||
|
handSearch() {
|
||||||
|
this.$refs["searchForm"].validate((valid) => {
|
||||||
|
if (valid) {
|
||||||
|
this.pageParams.pageNo = 1;
|
||||||
|
this.getData();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
|
// 重置搜索表单
|
||||||
|
resetSearchForm() {
|
||||||
|
this.$refs["searchForm"].resetFields();
|
||||||
|
this.pageParams.pageNo = 1;
|
||||||
|
this.getData();
|
||||||
|
},
|
||||||
|
|
||||||
|
// 分页导航
|
||||||
|
handleSizeChange(val) {
|
||||||
|
this.pageParams.pageNo = val;
|
||||||
|
this.getData();
|
||||||
|
},
|
||||||
|
handlePageChange(val) {
|
||||||
|
this.pageParams.pageNo = val;
|
||||||
|
this.getData();
|
||||||
|
},
|
||||||
|
headerCopy(column, e) {
|
||||||
|
this.$copy(column.label);
|
||||||
|
},
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
applyStateTag() {
|
||||||
|
return function (val) {
|
||||||
|
let text = "";
|
||||||
|
switch (val) {
|
||||||
|
case 0:
|
||||||
|
text = "warning";
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
text = "success";
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
text = "info";
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
text = "danger";
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return text;
|
||||||
|
};
|
||||||
|
},
|
||||||
|
applyStateText() {
|
||||||
|
return function (val) {
|
||||||
|
let text = "";
|
||||||
|
switch (val) {
|
||||||
|
case 0:
|
||||||
|
text = "In Review";
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
text = "Passed";
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
text = "Rejected";
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
text = "Deleted";
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return text;
|
||||||
|
};
|
||||||
|
},
|
||||||
|
convertTimestamp() {
|
||||||
|
return function (time) {
|
||||||
|
let date = new Date(time);
|
||||||
|
return formatDate(date);
|
||||||
|
};
|
||||||
|
},
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss">
|
||||||
|
.red {
|
||||||
|
color: rgb(241, 19, 19);
|
||||||
|
}
|
||||||
|
|
||||||
|
// ::v-deep {
|
||||||
|
// .el-upload--picture-card {
|
||||||
|
// background-color: transparent;
|
||||||
|
// border: 0;
|
||||||
|
// border-radius: 0;
|
||||||
|
// box-sizing: border-box;
|
||||||
|
// width: 0;
|
||||||
|
// height: 45px;
|
||||||
|
// line-height: 0;
|
||||||
|
// vertical-align: top;
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
.file-uploader {
|
||||||
|
display: block;
|
||||||
|
margin-left: 51px;
|
||||||
|
input {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
.el-upload {
|
||||||
|
background-color: transparent;
|
||||||
|
border: 0;
|
||||||
|
border-radius: 0;
|
||||||
|
box-sizing: border-box;
|
||||||
|
width: 0;
|
||||||
|
height: 45px;
|
||||||
|
line-height: 0;
|
||||||
|
vertical-align: top;
|
||||||
|
}
|
||||||
|
span {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
File diff suppressed because it is too large
Load Diff
@@ -113,6 +113,7 @@
|
|||||||
import { chargeAgentList, chargeAgentSum } from "@/api/relAgency/relAgency.js";
|
import { chargeAgentList, chargeAgentSum } from "@/api/relAgency/relAgency.js";
|
||||||
import TablePagination from "@/components/common/TablePagination";
|
import TablePagination from "@/components/common/TablePagination";
|
||||||
import { formatDate, formatDateYMD } from "@/utils/relDate";
|
import { formatDate, formatDateYMD } from "@/utils/relDate";
|
||||||
|
import { dateFormat } from "@/utils/system-helper";
|
||||||
// @ts-ignore
|
// @ts-ignore
|
||||||
import { ElMessage } from "element-plus";
|
import { ElMessage } from "element-plus";
|
||||||
import { ref } from "vue";
|
import { ref } from "vue";
|
||||||
@@ -176,8 +177,8 @@ export default {
|
|||||||
this.tableLoading = true;
|
this.tableLoading = true;
|
||||||
|
|
||||||
let { pageParams, searchForm } = this;
|
let { pageParams, searchForm } = this;
|
||||||
searchForm.startTime = formatDate(searchForm.startTime )
|
searchForm.startTime = dateFormat(searchForm.startTime,'yyyy-MM-dd hh:mm:ss');
|
||||||
searchForm.endTime = formatDate(searchForm.endTime )
|
searchForm.endTime = dateFormat(searchForm.endTime,'yyyy-MM-dd hh:mm:ss');
|
||||||
searchForm = JSON.parse(JSON.stringify(searchForm));
|
searchForm = JSON.parse(JSON.stringify(searchForm));
|
||||||
pageParams = JSON.parse(JSON.stringify(pageParams));
|
pageParams = JSON.parse(JSON.stringify(pageParams));
|
||||||
Object.keys(searchForm).forEach((item) => {
|
Object.keys(searchForm).forEach((item) => {
|
||||||
|
@@ -3,11 +3,9 @@
|
|||||||
<!-- 查询 -->
|
<!-- 查询 -->
|
||||||
<div class="inquire">
|
<div class="inquire">
|
||||||
<span>ID</span>
|
<span>ID</span>
|
||||||
<el-input
|
<el-input v-model="inquire.userId"
|
||||||
v-model="inquire.userId"
|
placeholder=""
|
||||||
placeholder=""
|
class="input"></el-input>
|
||||||
class="input"
|
|
||||||
></el-input>
|
|
||||||
</div>
|
</div>
|
||||||
<!-- <div class="inquire">
|
<!-- <div class="inquire">
|
||||||
<span>推荐人</span>
|
<span>推荐人</span>
|
||||||
@@ -32,57 +30,65 @@
|
|||||||
</div>
|
</div>
|
||||||
</div> -->
|
</div> -->
|
||||||
<!-- 查询按钮 -->
|
<!-- 查询按钮 -->
|
||||||
<el-button class="primary" type="primary" @click="getData()"
|
<el-button class="primary"
|
||||||
>查询</el-button
|
type="primary"
|
||||||
>
|
@click="getData()">查询</el-button>
|
||||||
<el-button class="primary" type="primary" @click="addDialog = true"
|
<el-button class="primary"
|
||||||
>添加</el-button
|
type="primary"
|
||||||
>
|
@click="addDialog = true">添加</el-button>
|
||||||
<el-button class="primary" type="primary" @click="exportInfoFun()"
|
<el-button class="primary"
|
||||||
>导出</el-button
|
type="primary"
|
||||||
>
|
@click="exportInfoFun()">导出</el-button>
|
||||||
|
|
||||||
<!-- 表格 -->
|
<!-- 表格 -->
|
||||||
<el-table
|
<el-table v-loading="loading"
|
||||||
v-loading="loading"
|
:data="tableData"
|
||||||
:data="tableData"
|
border
|
||||||
border
|
style="width: 100%; margin-top: 25px">
|
||||||
style="width: 100%; margin-top: 25px"
|
<el-table-column prop="id"
|
||||||
>
|
align="center"
|
||||||
|
label="公会ID" />
|
||||||
<!-- <el-table-column prop="referrer" align="center" label="推荐人" /> -->
|
<!-- <el-table-column prop="referrer" align="center" label="推荐人" /> -->
|
||||||
<el-table-column prop="ownerErbanNo" align="center" label="会长ID" />
|
<el-table-column prop="ownerErbanNo"
|
||||||
<el-table-column prop="ownerNick" align="center" label="会长昵称" />
|
align="center"
|
||||||
<el-table-column
|
label="会长ID" />
|
||||||
prop="ownerPartitionName"
|
<el-table-column prop="ownerNick"
|
||||||
align="center"
|
align="center"
|
||||||
label="会长分区"
|
label="会长昵称" />
|
||||||
/>
|
<el-table-column prop="ownerPartitionName"
|
||||||
<el-table-column prop="name" align="center" label="公会昵称" />
|
align="center"
|
||||||
<el-table-column align="center" prop="giftInfo" label="公会背景图">
|
label="会长分区" />
|
||||||
|
<el-table-column prop="name"
|
||||||
|
align="center"
|
||||||
|
label="公会昵称" />
|
||||||
|
<el-table-column align="center"
|
||||||
|
prop="giftInfo"
|
||||||
|
label="公会背景图">
|
||||||
<template v-slot="scope">
|
<template v-slot="scope">
|
||||||
<el-image
|
<el-image style="width: 100px; height: 100px"
|
||||||
style="width: 100px; height: 100px"
|
:src="scope.row.backgroundUrl"
|
||||||
:src="scope.row.backgroundUrl"
|
:zoom-rate="1.1"
|
||||||
:zoom-rate="1.1"
|
:preview-src-list="[scope.row.backgroundUrl]"
|
||||||
:preview-src-list="[scope.row.backgroundUrl]"
|
fit="cover"
|
||||||
fit="cover"
|
preview-teleported="true"
|
||||||
preview-teleported="true"
|
hide-on-click-modal="true" />
|
||||||
hide-on-click-modal="true"
|
|
||||||
/>
|
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="createTime" align="center" label="创建日期" />
|
<el-table-column prop="createTime"
|
||||||
|
align="center"
|
||||||
|
label="创建日期" />
|
||||||
<!-- <el-table-column prop="memberNum" align="center" label="成员数量" /> -->
|
<!-- <el-table-column prop="memberNum" align="center" label="成员数量" /> -->
|
||||||
<el-table-column align="center" label="成员数量/上限">
|
<el-table-column align="center"
|
||||||
|
label="成员数量/上限">
|
||||||
<template v-slot="scope">
|
<template v-slot="scope">
|
||||||
<el-button
|
<el-button @click="memberDialogFun(scope.row)"
|
||||||
@click="memberDialogFun(scope.row)"
|
type="text"
|
||||||
type="text"
|
size="default">{{ scope.row.memberNum }}/{{ scope.row.memberNumLimit }}</el-button>
|
||||||
size="default"
|
|
||||||
>{{ scope.row.memberNum }}/{{ scope.row.memberNumLimit }}</el-button
|
|
||||||
>
|
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
<el-table-column prop="adminName"
|
||||||
|
align="center"
|
||||||
|
label="操作人" />
|
||||||
<!-- <el-table-column align="center" label="收款账户" width="300">
|
<!-- <el-table-column align="center" label="收款账户" width="300">
|
||||||
<template v-slot="scope">
|
<template v-slot="scope">
|
||||||
<el-button
|
<el-button
|
||||||
@@ -121,43 +127,37 @@
|
|||||||
<!-- <el-table-column prop="goldIncome" align="center" label="金币总收入" />
|
<!-- <el-table-column prop="goldIncome" align="center" label="金币总收入" />
|
||||||
<el-table-column prop="diamondRemain" align="center" label="钻石总收入" /> -->
|
<el-table-column prop="diamondRemain" align="center" label="钻石总收入" /> -->
|
||||||
|
|
||||||
<el-table-column align="center" label="操作" width="300">
|
<el-table-column align="center"
|
||||||
|
label="操作"
|
||||||
|
width="300">
|
||||||
<template v-slot="scope">
|
<template v-slot="scope">
|
||||||
<el-button
|
<el-button @click="ediClick(scope)"
|
||||||
@click="ediClick(scope)"
|
class="primary"
|
||||||
class="primary"
|
type="primary"
|
||||||
type="primary"
|
size="default"
|
||||||
size="default"
|
:disabled="!scope.row.enable">编辑</el-button>
|
||||||
:disabled="!scope.row.enable"
|
<el-button @click="
|
||||||
>编辑</el-button
|
|
||||||
>
|
|
||||||
<el-button
|
|
||||||
@click="
|
|
||||||
delDialog = true;
|
delDialog = true;
|
||||||
delDialogData = scope.row;
|
delDialogData = scope.row;
|
||||||
"
|
"
|
||||||
:class="scope.row.enable ? 'danger' : 'info'"
|
:class="scope.row.enable ? 'danger' : 'info'"
|
||||||
:type="scope.row.enable ? 'danger' : 'info'"
|
:type="scope.row.enable ? 'danger' : 'info'"
|
||||||
size="default"
|
size="default"
|
||||||
:disabled="!scope.row.enable"
|
:disabled="!scope.row.enable">{{ scope.row.enable ? "移除" : "已解散" }}</el-button>
|
||||||
>{{ scope.row.enable ? "移除" : "已解散" }}</el-button
|
|
||||||
>
|
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
<!-- 新增弹窗 -->
|
<!-- 新增弹窗 -->
|
||||||
<el-dialog v-model="addDialog" title="新增" width="28%" center>
|
<el-dialog v-model="addDialog"
|
||||||
|
title="新增"
|
||||||
|
width="28%"
|
||||||
|
center>
|
||||||
<div style="margin-bottom: 25px">
|
<div style="margin-bottom: 25px">
|
||||||
<span
|
<span style="display: inline-block; margin-right: 20px; width: 100px"
|
||||||
style="display: inline-block; margin-right: 20px; width: 100px"
|
class="col-sm-2 control-label">会长ID</span>
|
||||||
class="col-sm-2 control-label"
|
<el-input v-model="resource.id"
|
||||||
>会长ID</span
|
style="width: 75%"
|
||||||
>
|
class="input"></el-input>
|
||||||
<el-input
|
|
||||||
v-model="resource.id"
|
|
||||||
style="width: 75%"
|
|
||||||
class="input"
|
|
||||||
></el-input>
|
|
||||||
</div>
|
</div>
|
||||||
<!-- <div style="margin-bottom: 25px">
|
<!-- <div style="margin-bottom: 25px">
|
||||||
<span
|
<span
|
||||||
@@ -186,188 +186,173 @@
|
|||||||
<template #footer>
|
<template #footer>
|
||||||
<span class="dialog-footer">
|
<span class="dialog-footer">
|
||||||
<el-button @click="addDialog = false">取消</el-button>
|
<el-button @click="addDialog = false">取消</el-button>
|
||||||
<el-button type="primary" @click="add()"> 确认 </el-button>
|
<el-button type="primary"
|
||||||
|
@click="add()"> 确认 </el-button>
|
||||||
</span>
|
</span>
|
||||||
</template>
|
</template>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
<!-- 分页 -->
|
<!-- 分页 -->
|
||||||
<el-pagination
|
<el-pagination style="margin-top: 10px"
|
||||||
style="margin-top: 10px"
|
class="paginationClass"
|
||||||
class="paginationClass"
|
v-model:current-page="currentPage"
|
||||||
v-model:current-page="currentPage"
|
v-model:page-size="pageSize"
|
||||||
v-model:page-size="pageSize"
|
:page-sizes="[10, 20, 30, 40, 50, 100, 200, 300, 400, 500, 999999999]"
|
||||||
:page-sizes="[10, 20, 30, 40, 50, 100, 200, 300, 400, 500, 999999999]"
|
layout="sizes, prev, pager, next"
|
||||||
layout="sizes, prev, pager, next"
|
:total="total"
|
||||||
:total="total"
|
@size-change="handleSizeChange"
|
||||||
@size-change="handleSizeChange"
|
@current-change="handleCurrentChange" />
|
||||||
@current-change="handleCurrentChange"
|
|
||||||
/>
|
|
||||||
<!-- 编辑弹窗 -->
|
<!-- 编辑弹窗 -->
|
||||||
<el-dialog v-model="editDialog" title="编辑" width="28%" center>
|
<el-dialog v-model="editDialog"
|
||||||
|
title="编辑"
|
||||||
|
width="28%"
|
||||||
|
center>
|
||||||
|
<!-- 公会ID -->
|
||||||
|
<div style="margin-bottom: 25px; margin-top: 10px">
|
||||||
|
<span style="display: inline-block; margin-right: 20px"
|
||||||
|
class="col-sm-2 control-label">公会ID</span>
|
||||||
|
<el-input v-model="ediObj.id"
|
||||||
|
style="width: 75%"
|
||||||
|
class="input"
|
||||||
|
disabled></el-input>
|
||||||
|
</div>
|
||||||
<!-- 会长ID -->
|
<!-- 会长ID -->
|
||||||
<div style="margin-bottom: 25px; margin-top: 10px">
|
<div style="margin-bottom: 25px; margin-top: 10px">
|
||||||
<span
|
<span style="display: inline-block; margin-right: 20px"
|
||||||
style="display: inline-block; margin-right: 20px"
|
class="col-sm-2 control-label">会长ID</span>
|
||||||
class="col-sm-2 control-label"
|
<el-input v-model="ediObj.leaderId"
|
||||||
>会长ID</span
|
style="width: 75%"
|
||||||
>
|
class="input"
|
||||||
<el-input
|
disabled></el-input>
|
||||||
v-model="ediObj.leaderId"
|
|
||||||
style="width: 75%"
|
|
||||||
class="input"
|
|
||||||
disabled
|
|
||||||
></el-input>
|
|
||||||
</div>
|
</div>
|
||||||
<!-- 会长昵称 -->
|
<!-- 会长昵称 -->
|
||||||
<div style="margin-bottom: 25px; margin-top: 10px">
|
<div style="margin-bottom: 25px; margin-top: 10px">
|
||||||
<span
|
<span style="display: inline-block; margin-right: 20px"
|
||||||
style="display: inline-block; margin-right: 20px"
|
class="col-sm-2 control-label">会长昵称</span>
|
||||||
class="col-sm-2 control-label"
|
<el-input v-model="ediObj.leaderNick"
|
||||||
>会长昵称</span
|
style="width: 75%"
|
||||||
>
|
class="input"
|
||||||
<el-input
|
disabled></el-input>
|
||||||
v-model="ediObj.leaderNick"
|
|
||||||
style="width: 75%"
|
|
||||||
class="input"
|
|
||||||
disabled
|
|
||||||
></el-input>
|
|
||||||
</div>
|
</div>
|
||||||
<!-- 公会昵称 -->
|
<!-- 公会昵称 -->
|
||||||
<div style="margin-bottom: 25px; margin-top: 10px">
|
<div style="margin-bottom: 25px; margin-top: 10px">
|
||||||
<span
|
<span style="display: inline-block; margin-right: 20px"
|
||||||
style="display: inline-block; margin-right: 20px"
|
class="col-sm-2 control-label">公会昵称</span>
|
||||||
class="col-sm-2 control-label"
|
<el-input v-model="ediObj.guildNick"
|
||||||
>公会昵称</span
|
style="width: 75%"
|
||||||
>
|
class="input"></el-input>
|
||||||
<el-input
|
|
||||||
v-model="ediObj.guildNick"
|
|
||||||
style="width: 75%"
|
|
||||||
class="input"
|
|
||||||
></el-input>
|
|
||||||
</div>
|
</div>
|
||||||
<!-- 公会背景图 -->
|
<!-- 公会背景图 -->
|
||||||
<div class="selectBox selectBoxImg">
|
<div class="selectBox selectBoxImg">
|
||||||
<span class="left" style="margin-right: 20px">公会背景图</span>
|
<span class="left"
|
||||||
|
style="margin-right: 20px">公会背景图</span>
|
||||||
<!-- action="/admin/tencent/cos/upload/file" -->
|
<!-- action="/admin/tencent/cos/upload/file" -->
|
||||||
<el-upload
|
<el-upload class="avatar-uploader"
|
||||||
class="avatar-uploader"
|
action="/admin/tencent/cos/upload/file"
|
||||||
action="/admin/tencent/cos/upload/file"
|
:show-file-list="false"
|
||||||
:show-file-list="false"
|
:on-success="handleAvatarSuccess"
|
||||||
:on-success="handleAvatarSuccess"
|
:before-upload="beforeAvatarUpload"
|
||||||
:before-upload="beforeAvatarUpload"
|
:on-error="handleAvatarError">
|
||||||
:on-error="handleAvatarError"
|
<img v-if="ediObj.imageUrl1"
|
||||||
>
|
:src="ediObj.imageUrl1"
|
||||||
<img v-if="ediObj.imageUrl1" :src="ediObj.imageUrl1" class="avatar" />
|
class="avatar" />
|
||||||
<el-icon v-else class="avatar-uploader-icon"><Plus /></el-icon>
|
<el-icon v-else
|
||||||
|
class="avatar-uploader-icon">
|
||||||
|
<Plus />
|
||||||
|
</el-icon>
|
||||||
</el-upload>
|
</el-upload>
|
||||||
</div>
|
</div>
|
||||||
<!-- 成员数量上限 -->
|
<!-- 成员数量上限 -->
|
||||||
<div style="margin-bottom: 25px; margin-top: 10px">
|
<div style="margin-bottom: 25px; margin-top: 10px">
|
||||||
<span
|
<span style="display: inline-block; margin-right: 20px"
|
||||||
style="display: inline-block; margin-right: 20px"
|
class="col-sm-2 control-label">成员数量上限</span>
|
||||||
class="col-sm-2 control-label"
|
<el-input v-model="ediObj.guildNumber"
|
||||||
>成员数量上限</span
|
style="width: 75%"
|
||||||
>
|
class="input"></el-input>
|
||||||
<el-input
|
|
||||||
v-model="ediObj.guildNumber"
|
|
||||||
style="width: 75%"
|
|
||||||
class="input"
|
|
||||||
></el-input>
|
|
||||||
</div>
|
</div>
|
||||||
<template #footer>
|
<template #footer>
|
||||||
<span class="dialog-footer">
|
<span class="dialog-footer">
|
||||||
<el-button @click="editDialog = false">取消</el-button>
|
<el-button @click="editDialog = false">取消</el-button>
|
||||||
<el-button type="primary" @click="editDialogClick()">
|
<el-button type="primary"
|
||||||
|
@click="editDialogClick()">
|
||||||
确认
|
确认
|
||||||
</el-button>
|
</el-button>
|
||||||
</span>
|
</span>
|
||||||
</template>
|
</template>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
<!-- 二次确认删除弹窗 -->
|
<!-- 二次确认删除弹窗 -->
|
||||||
<el-dialog v-model="delDialog" title="提示" width="30%" center>
|
<el-dialog v-model="delDialog"
|
||||||
|
title="提示"
|
||||||
|
width="30%"
|
||||||
|
center>
|
||||||
<span> 确定要解散该公会吗?</span>
|
<span> 确定要解散该公会吗?</span>
|
||||||
<template #footer>
|
<template #footer>
|
||||||
<span class="dialog-footer">
|
<span class="dialog-footer">
|
||||||
<el-button @click="delDialog = false">取消</el-button>
|
<el-button @click="delDialog = false">取消</el-button>
|
||||||
<el-button type="primary" @click="delClick()"> 确认 </el-button>
|
<el-button type="primary"
|
||||||
|
@click="delClick()"> 确认 </el-button>
|
||||||
</span>
|
</span>
|
||||||
</template>
|
</template>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
<!-- 编辑收款账户弹窗 -->
|
<!-- 编辑收款账户弹窗 -->
|
||||||
<el-dialog
|
<el-dialog v-model="payAccountDialog"
|
||||||
v-model="payAccountDialog"
|
:title="payAccountTitle"
|
||||||
:title="payAccountTitle"
|
width="28%"
|
||||||
width="28%"
|
center>
|
||||||
center
|
|
||||||
>
|
|
||||||
<!-- Payoneer -->
|
<!-- Payoneer -->
|
||||||
<div style="margin-bottom: 25px; margin-top: 10px">
|
<div style="margin-bottom: 25px; margin-top: 10px">
|
||||||
<span
|
<span style="display: inline-block; margin-right: 20px"
|
||||||
style="display: inline-block; margin-right: 20px"
|
class="col-sm-2 control-label">Payoneer</span>
|
||||||
class="col-sm-2 control-label"
|
<el-input v-model="payAccount.payoneer"
|
||||||
>Payoneer</span
|
style="width: 75%"
|
||||||
>
|
class="input"></el-input>
|
||||||
<el-input
|
|
||||||
v-model="payAccount.payoneer"
|
|
||||||
style="width: 75%"
|
|
||||||
class="input"
|
|
||||||
></el-input>
|
|
||||||
</div>
|
</div>
|
||||||
<!-- USDT-ERC20 -->
|
<!-- USDT-ERC20 -->
|
||||||
<div style="margin-bottom: 25px; margin-top: 10px">
|
<div style="margin-bottom: 25px; margin-top: 10px">
|
||||||
<span
|
<span style="display: inline-block; margin-right: 20px"
|
||||||
style="display: inline-block; margin-right: 20px"
|
class="col-sm-2 control-label">USDT-ERC20</span>
|
||||||
class="col-sm-2 control-label"
|
<el-input v-model="payAccount.usdt"
|
||||||
>USDT-ERC20</span
|
style="width: 75%"
|
||||||
>
|
class="input"></el-input>
|
||||||
<el-input
|
|
||||||
v-model="payAccount.usdt"
|
|
||||||
style="width: 75%"
|
|
||||||
class="input"
|
|
||||||
></el-input>
|
|
||||||
</div>
|
</div>
|
||||||
<!-- PayPal -->
|
<!-- PayPal -->
|
||||||
<div style="margin-bottom: 25px; margin-top: 10px">
|
<div style="margin-bottom: 25px; margin-top: 10px">
|
||||||
<span
|
<span style="display: inline-block; margin-right: 20px"
|
||||||
style="display: inline-block; margin-right: 20px"
|
class="col-sm-2 control-label">PayPal</span>
|
||||||
class="col-sm-2 control-label"
|
<el-input v-model="payAccount.payPal"
|
||||||
>PayPal</span
|
style="width: 75%"
|
||||||
>
|
class="input"></el-input>
|
||||||
<el-input
|
|
||||||
v-model="payAccount.payPal"
|
|
||||||
style="width: 75%"
|
|
||||||
class="input"
|
|
||||||
></el-input>
|
|
||||||
</div>
|
</div>
|
||||||
<template #footer>
|
<template #footer>
|
||||||
<span class="dialog-footer">
|
<span class="dialog-footer">
|
||||||
<el-button @click="payAccountDialog = false">取消</el-button>
|
<el-button @click="payAccountDialog = false">取消</el-button>
|
||||||
<el-button type="primary" @click="payAccountClick()">
|
<el-button type="primary"
|
||||||
|
@click="payAccountClick()">
|
||||||
保存
|
保存
|
||||||
</el-button>
|
</el-button>
|
||||||
</span>
|
</span>
|
||||||
</template>
|
</template>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
<!-- 编辑成员弹窗 -->
|
<!-- 编辑成员弹窗 -->
|
||||||
<el-dialog v-model="memberDialog" :title="memberTitle" width="36%" center>
|
<el-dialog v-model="memberDialog"
|
||||||
|
:title="memberTitle"
|
||||||
|
width="36%"
|
||||||
|
center>
|
||||||
<!-- 新增用户 -->
|
<!-- 新增用户 -->
|
||||||
<div class="inquire">
|
<div class="inquire">
|
||||||
<span>平台ID</span>
|
<span>平台ID</span>
|
||||||
<el-input
|
<el-input v-model="member.userID"
|
||||||
v-model="member.userID"
|
placeholder="请输入新增平台id"
|
||||||
placeholder="请输入新增平台id"
|
class="input"></el-input>
|
||||||
class="input"
|
<el-button type="primary"
|
||||||
></el-input>
|
@click="addMemberFun()"> 新增 </el-button>
|
||||||
<el-button type="primary" @click="addMemberFun()"> 新增 </el-button>
|
|
||||||
</div>
|
</div>
|
||||||
<!-- 内嵌表格 -->
|
<!-- 内嵌表格 -->
|
||||||
<el-table
|
<el-table v-loading="loading"
|
||||||
v-loading="loading"
|
:data="member.tableData"
|
||||||
:data="member.tableData"
|
border
|
||||||
border
|
style="width: 100%; margin-top: 25px">
|
||||||
style="width: 100%; margin-top: 25px"
|
<el-table-column align="center"
|
||||||
>
|
label="用户平台ID">
|
||||||
<el-table-column align="center" label="用户平台ID">
|
|
||||||
<template v-slot="scope">
|
<template v-slot="scope">
|
||||||
{{ scope.row.erbanNo
|
{{ scope.row.erbanNo
|
||||||
}}{{
|
}}{{
|
||||||
@@ -380,53 +365,61 @@
|
|||||||
{{ scope.row.enable == false ? "(已离开)" : "" }}
|
{{ scope.row.enable == false ? "(已离开)" : "" }}
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="nick" align="center" label="用户昵称" />
|
<el-table-column prop="nick"
|
||||||
<el-table-column prop="createTime" align="center" label="加入时间" />
|
align="center"
|
||||||
<el-table-column align="center" label="操作" width="300">
|
label="用户昵称" />
|
||||||
|
<el-table-column prop="createTime"
|
||||||
|
align="center"
|
||||||
|
label="加入时间" />
|
||||||
|
<el-table-column prop="adminName"
|
||||||
|
align="center"
|
||||||
|
label="操作人" />
|
||||||
|
<el-table-column align="center"
|
||||||
|
label="操作"
|
||||||
|
width="300">
|
||||||
<template v-slot="scope">
|
<template v-slot="scope">
|
||||||
<el-button
|
<el-button @click="setMemberFun(scope.row)"
|
||||||
@click="setMemberFun(scope.row)"
|
:class="scope.row.roleType == 2 ? 'danger' : 'primary'"
|
||||||
:class="scope.row.roleType == 2 ? 'danger' : 'primary'"
|
:type="scope.row.roleType == 2 ? 'danger' : 'primary'"
|
||||||
:type="scope.row.roleType == 2 ? 'danger' : 'primary'"
|
size="default"
|
||||||
size="default"
|
:disabled="scope.row.roleType == 1 ? true : false">{{
|
||||||
:disabled="scope.row.roleType == 1 ? true : false"
|
|
||||||
>{{
|
|
||||||
scope.row.roleType == 1
|
scope.row.roleType == 1
|
||||||
? "会长"
|
? "会长"
|
||||||
: scope.row.roleType == 2
|
: scope.row.roleType == 2
|
||||||
? "取消管理员"
|
? "取消管理员"
|
||||||
: "设为管理员"
|
: "设为管理员"
|
||||||
}}</el-button
|
}}</el-button>
|
||||||
>
|
<el-button @click="
|
||||||
<el-button
|
|
||||||
@click="
|
|
||||||
memberRemoveObj = scope.row;
|
memberRemoveObj = scope.row;
|
||||||
memberRemoveDialog = true;
|
memberRemoveDialog = true;
|
||||||
"
|
"
|
||||||
class="danger"
|
class="danger"
|
||||||
type="danger"
|
type="danger"
|
||||||
size="default"
|
size="default"
|
||||||
:disabled="scope.row.roleType == 1 ? true : false"
|
:disabled="scope.row.roleType == 1 ? true : false">删除</el-button>
|
||||||
>删除</el-button
|
|
||||||
>
|
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
<template #footer>
|
<template #footer>
|
||||||
<span class="dialog-footer">
|
<span class="dialog-footer">
|
||||||
<el-button type="primary" @click="memberDialog = false">
|
<el-button type="primary"
|
||||||
|
@click="memberDialog = false">
|
||||||
关闭
|
关闭
|
||||||
</el-button>
|
</el-button>
|
||||||
</span>
|
</span>
|
||||||
</template>
|
</template>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
<!-- 二次确认删除弹窗 -->
|
<!-- 二次确认删除弹窗 -->
|
||||||
<el-dialog v-model="memberRemoveDialog" title="提示" width="30%" center>
|
<el-dialog v-model="memberRemoveDialog"
|
||||||
|
title="提示"
|
||||||
|
width="30%"
|
||||||
|
center>
|
||||||
<span> 确定要删除该成员吗?</span>
|
<span> 确定要删除该成员吗?</span>
|
||||||
<template #footer>
|
<template #footer>
|
||||||
<span class="dialog-footer">
|
<span class="dialog-footer">
|
||||||
<el-button @click="memberRemoveDialog = false">取消</el-button>
|
<el-button @click="memberRemoveDialog = false">取消</el-button>
|
||||||
<el-button type="primary" @click="delmemberRemoveClick()">
|
<el-button type="primary"
|
||||||
|
@click="delmemberRemoveClick()">
|
||||||
确认
|
确认
|
||||||
</el-button>
|
</el-button>
|
||||||
</span>
|
</span>
|
||||||
@@ -453,7 +446,7 @@ import { dateFormat } from "@/utils/system-helper";
|
|||||||
import { ElMessage } from "element-plus";
|
import { ElMessage } from "element-plus";
|
||||||
export default {
|
export default {
|
||||||
name: "GuildInfoNew",
|
name: "GuildInfoNew",
|
||||||
data() {
|
data () {
|
||||||
return {
|
return {
|
||||||
loading: false,
|
loading: false,
|
||||||
delDialog: false,
|
delDialog: false,
|
||||||
@@ -510,12 +503,12 @@ export default {
|
|||||||
memberRemoveObj: {},
|
memberRemoveObj: {},
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
created() {
|
created () {
|
||||||
this.getData();
|
this.getData();
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
// 查询接口
|
// 查询接口
|
||||||
getData() {
|
getData () {
|
||||||
this.loading = true;
|
this.loading = true;
|
||||||
let time = this.inquire.time;
|
let time = this.inquire.time;
|
||||||
let startTime = "";
|
let startTime = "";
|
||||||
@@ -539,7 +532,7 @@ export default {
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
// 打开成员信息弹窗
|
// 打开成员信息弹窗
|
||||||
memberDialogFun(val) {
|
memberDialogFun (val) {
|
||||||
var than = this;
|
var than = this;
|
||||||
than.memberTitle = `【${val.name}】成员信息`;
|
than.memberTitle = `【${val.name}】成员信息`;
|
||||||
than.memberNew = val;
|
than.memberNew = val;
|
||||||
@@ -551,7 +544,7 @@ export default {
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
// 二次确认删除成员
|
// 二次确认删除成员
|
||||||
delmemberRemoveClick() {
|
delmemberRemoveClick () {
|
||||||
removeMember({
|
removeMember({
|
||||||
guildMemberId: this.memberRemoveObj.guildMemberId,
|
guildMemberId: this.memberRemoveObj.guildMemberId,
|
||||||
}).then((res) => {
|
}).then((res) => {
|
||||||
@@ -577,7 +570,7 @@ export default {
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
// 设置管理员
|
// 设置管理员
|
||||||
setMemberFun(val) {
|
setMemberFun (val) {
|
||||||
setManager({
|
setManager({
|
||||||
guildMemberId: val.guildMemberId,
|
guildMemberId: val.guildMemberId,
|
||||||
status: val.roleType == 3 ? true : val.roleType == 2 ? false : null,
|
status: val.roleType == 3 ? true : val.roleType == 2 ? false : null,
|
||||||
@@ -604,7 +597,7 @@ export default {
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
// 新增成员
|
// 新增成员
|
||||||
addMemberFun() {
|
addMemberFun () {
|
||||||
addMember({
|
addMember({
|
||||||
erbanNo: this.member.userID,
|
erbanNo: this.member.userID,
|
||||||
guildId: this.memberNew.id,
|
guildId: this.memberNew.id,
|
||||||
@@ -631,7 +624,7 @@ export default {
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
// 打开收款账户弹窗
|
// 打开收款账户弹窗
|
||||||
payAccountDialogFun(val) {
|
payAccountDialogFun (val) {
|
||||||
this.payAccountTitle = `(${val.ownerNick}【ID:${val.ownerErbanNo}】)的收款账户`;
|
this.payAccountTitle = `(${val.ownerNick}【ID:${val.ownerErbanNo}】)的收款账户`;
|
||||||
this.payAccount.payoneer = val.payAccount.payoneer;
|
this.payAccount.payoneer = val.payAccount.payoneer;
|
||||||
this.payAccount.usdt = val.payAccount.usdt;
|
this.payAccount.usdt = val.payAccount.usdt;
|
||||||
@@ -640,7 +633,7 @@ export default {
|
|||||||
this.payAccountNew = val;
|
this.payAccountNew = val;
|
||||||
},
|
},
|
||||||
// 保存收款账户
|
// 保存收款账户
|
||||||
payAccountClick() {
|
payAccountClick () {
|
||||||
savePayAccount({
|
savePayAccount({
|
||||||
id: this.payAccountNew.payAccount.familyId,
|
id: this.payAccountNew.payAccount.familyId,
|
||||||
payPal: this.payAccount.payPal,
|
payPal: this.payAccount.payPal,
|
||||||
@@ -665,7 +658,7 @@ export default {
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
// 导出
|
// 导出
|
||||||
exportInfoFun() {
|
exportInfoFun () {
|
||||||
let time = this.inquire.time;
|
let time = this.inquire.time;
|
||||||
let startTime = "";
|
let startTime = "";
|
||||||
let endTime = "";
|
let endTime = "";
|
||||||
@@ -679,20 +672,33 @@ export default {
|
|||||||
familyName: this.inquire.nick,
|
familyName: this.inquire.nick,
|
||||||
// startDate: startTime,
|
// startDate: startTime,
|
||||||
// endDate: endTime,
|
// endDate: endTime,
|
||||||
}).then((res) => {});
|
}).then((res) => { });
|
||||||
},
|
},
|
||||||
// 添加
|
// 添加
|
||||||
add() {
|
add () {
|
||||||
this.addDialog = false;
|
this.addDialog = false;
|
||||||
create({
|
create({
|
||||||
erbanNo: this.resource.id,
|
erbanNo: this.resource.id,
|
||||||
referrer: this.resource.referrer,
|
referrer: this.resource.referrer,
|
||||||
}).then((res) => {
|
}).then((res) => {
|
||||||
this.getData();
|
if (res.code == 200) {
|
||||||
|
ElMessage({
|
||||||
|
showClose: true,
|
||||||
|
message: "添加成功",
|
||||||
|
type: "success",
|
||||||
|
});
|
||||||
|
this.getData();
|
||||||
|
} else {
|
||||||
|
ElMessage({
|
||||||
|
showClose: true,
|
||||||
|
message: res.message,
|
||||||
|
type: "error",
|
||||||
|
});
|
||||||
|
}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
// 编辑按钮
|
// 编辑按钮
|
||||||
ediClick(res) {
|
ediClick (res) {
|
||||||
var obj = res.row;
|
var obj = res.row;
|
||||||
this.ediObj.leaderId = obj.ownerErbanNo;
|
this.ediObj.leaderId = obj.ownerErbanNo;
|
||||||
this.ediObj.leaderNick = obj.ownerNick;
|
this.ediObj.leaderNick = obj.ownerNick;
|
||||||
@@ -703,7 +709,7 @@ export default {
|
|||||||
this.editDialog = true;
|
this.editDialog = true;
|
||||||
},
|
},
|
||||||
// 二次确认弹窗
|
// 二次确认弹窗
|
||||||
editDialogClick() {
|
editDialogClick () {
|
||||||
console.log(this.ediObj);
|
console.log(this.ediObj);
|
||||||
update({
|
update({
|
||||||
id: this.ediObj.id,
|
id: this.ediObj.id,
|
||||||
@@ -730,9 +736,9 @@ export default {
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
// 解散按钮
|
// 解散按钮
|
||||||
delClick() {
|
delClick () {
|
||||||
console.log(this.delDialogData.id);
|
console.log(this.delDialogData.id);
|
||||||
var guildId = this.delDialogData.id ;
|
var guildId = this.delDialogData.id;
|
||||||
dismiss({ guildId }).then((res) => {
|
dismiss({ guildId }).then((res) => {
|
||||||
console.log();
|
console.log();
|
||||||
if (res.code == 200) {
|
if (res.code == 200) {
|
||||||
@@ -752,21 +758,21 @@ export default {
|
|||||||
this.delDialog = false;
|
this.delDialog = false;
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
beforeAvatarUpload() {
|
beforeAvatarUpload () {
|
||||||
ElMessage({
|
ElMessage({
|
||||||
showClose: true,
|
showClose: true,
|
||||||
message: "上传中~",
|
message: "上传中~",
|
||||||
type: "warning",
|
type: "warning",
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
handleAvatarError() {
|
handleAvatarError () {
|
||||||
ElMessage({
|
ElMessage({
|
||||||
showClose: true,
|
showClose: true,
|
||||||
message: "上传失败!",
|
message: "上传失败!",
|
||||||
type: "error",
|
type: "error",
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
handleAvatarSuccess(res, file) {
|
handleAvatarSuccess (res, file) {
|
||||||
console.log(file);
|
console.log(file);
|
||||||
// this.ediObj.imageUrl1 = URL.createObjectURL();
|
// this.ediObj.imageUrl1 = URL.createObjectURL();
|
||||||
this.ediObj.imageUrl1 = file.response.data;
|
this.ediObj.imageUrl1 = file.response.data;
|
||||||
@@ -777,10 +783,10 @@ export default {
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
// 分页导航
|
// 分页导航
|
||||||
handleSizeChange() {
|
handleSizeChange () {
|
||||||
this.getData();
|
this.getData();
|
||||||
},
|
},
|
||||||
handleCurrentChange() {
|
handleCurrentChange () {
|
||||||
this.getData();
|
this.getData();
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@@ -158,6 +158,7 @@ import {
|
|||||||
} from "@/api/relAgency/relAgency.js";
|
} from "@/api/relAgency/relAgency.js";
|
||||||
import TablePagination from "@/components/common/TablePagination";
|
import TablePagination from "@/components/common/TablePagination";
|
||||||
import { formatDate, formatDateYMD } from "@/utils/relDate";
|
import { formatDate, formatDateYMD } from "@/utils/relDate";
|
||||||
|
import { dateFormat } from "@/utils/system-helper";
|
||||||
import { ElMessage } from "element-plus";
|
import { ElMessage } from "element-plus";
|
||||||
import { ElMessageBox } from 'element-plus'; // 正确引入 ElM
|
import { ElMessageBox } from 'element-plus'; // 正确引入 ElM
|
||||||
// 混入
|
// 混入
|
||||||
@@ -225,6 +226,8 @@ export default {
|
|||||||
this.tableLoading = true;
|
this.tableLoading = true;
|
||||||
|
|
||||||
let { pageParams, searchForm } = this;
|
let { pageParams, searchForm } = this;
|
||||||
|
searchForm.startTime = dateFormat(searchForm.startTime,'yyyy-MM-dd hh:mm:ss');
|
||||||
|
searchForm.endTime = dateFormat(searchForm.endTime,'yyyy-MM-dd hh:mm:ss');
|
||||||
searchForm = JSON.parse(JSON.stringify(searchForm));
|
searchForm = JSON.parse(JSON.stringify(searchForm));
|
||||||
pageParams = JSON.parse(JSON.stringify(pageParams));
|
pageParams = JSON.parse(JSON.stringify(pageParams));
|
||||||
Object.keys(searchForm).forEach((item) => {
|
Object.keys(searchForm).forEach((item) => {
|
||||||
|
@@ -72,7 +72,7 @@ export default {
|
|||||||
name: "LoginView",
|
name: "LoginView",
|
||||||
data () {
|
data () {
|
||||||
return {
|
return {
|
||||||
smsSwitch: true,
|
smsSwitch: false,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
setup () {
|
setup () {
|
||||||
|
232
src/views/luckGift/arrange.vue
Normal file
232
src/views/luckGift/arrange.vue
Normal file
@@ -0,0 +1,232 @@
|
|||||||
|
<template>
|
||||||
|
<div class="box">
|
||||||
|
<div class="condition">
|
||||||
|
<!-- 分区 -->
|
||||||
|
<div class="inquire">
|
||||||
|
<span>奖池</span>
|
||||||
|
<el-select
|
||||||
|
v-model="inquire.value"
|
||||||
|
placeholder="请选择"
|
||||||
|
@change="handleChange"
|
||||||
|
>
|
||||||
|
<el-option
|
||||||
|
v-for="item in inquire.options"
|
||||||
|
:key="item.type"
|
||||||
|
:label="item.name"
|
||||||
|
:value="item.type"
|
||||||
|
>
|
||||||
|
</el-option>
|
||||||
|
</el-select>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- 总分组 -->
|
||||||
|
<div class="allArr">
|
||||||
|
目前数组 <span>{{ allArr.length }} </span> 组:
|
||||||
|
<span class="span" v-for="(item, index) in allArr" :key="index">
|
||||||
|
{{ item.expect }},
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- 数组设置 -->
|
||||||
|
<div class="arrSet">数组设置:</div>
|
||||||
|
|
||||||
|
<!-- 数组内容 -->
|
||||||
|
<div class="boxs">
|
||||||
|
<div class="arrContent" v-for="(item, index) in arr" :key="index">
|
||||||
|
<div class="arrBox">
|
||||||
|
<div class="left">
|
||||||
|
<div class="left_in1">
|
||||||
|
期望: <b class="b1">{{ item.expect }}</b> ,
|
||||||
|
</div>
|
||||||
|
<div class="left_in2">
|
||||||
|
得到率: <b class="b2">{{ (item.winRate * 100).toFixed(2) }}%</b> ,
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="right" v-for="(arrInItem, i) in item.itemList" :key="i">
|
||||||
|
<span>{{ arrInItem.multi }}</span>
|
||||||
|
<el-input
|
||||||
|
@input="handleInput(index, i, $event)"
|
||||||
|
v-model="arrInItem.num"
|
||||||
|
placeholder=""
|
||||||
|
class="input"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- 按钮 -->
|
||||||
|
<div class="but">
|
||||||
|
<el-button class="primary" type="primary" @click="saveFun()"
|
||||||
|
>保存
|
||||||
|
</el-button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
import { listType, list, save } from "@/api/luckGift/luckGift";
|
||||||
|
// @ts-ignore
|
||||||
|
import { dateFormat } from "@/utils/system-helper";
|
||||||
|
// @ts-ignore
|
||||||
|
import { ElMessage } from "element-plus";
|
||||||
|
import moment from "moment-timezone";
|
||||||
|
export default {
|
||||||
|
name: "luckGiftArrange",
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
//查询所需条件对象
|
||||||
|
inquire: {
|
||||||
|
value: "",
|
||||||
|
options: [],
|
||||||
|
},
|
||||||
|
allArr: [], //总数组
|
||||||
|
arr: [], //处理下面总数组
|
||||||
|
};
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
listType().then((res) => {
|
||||||
|
this.inquire.options = res.data;
|
||||||
|
this.inquire.value = res.data[0].type;
|
||||||
|
this.getData();
|
||||||
|
});
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
// 查询接口
|
||||||
|
getData() {
|
||||||
|
list({ type: this.inquire.value }).then((res) => {
|
||||||
|
this.allArr = res.data;
|
||||||
|
this.arr = res.data;
|
||||||
|
});
|
||||||
|
},
|
||||||
|
handleInput(index, i, val) {
|
||||||
|
// 期望值 expectedvalue = 倍数 * 5 * num / 2500
|
||||||
|
// 中奖率 winRate =不为θ的倍数的num / 500
|
||||||
|
this.arr[index].expect = this.calculationFun(index, i, val).expect;
|
||||||
|
this.arr[index].winRate = this.calculationFun(index, i, val).winRate;
|
||||||
|
},
|
||||||
|
// 计算函数
|
||||||
|
calculationFun(index, i, val) {
|
||||||
|
var expectNum = 0;
|
||||||
|
var winRate = 0;
|
||||||
|
this.arr[index].itemList.forEach((res) => {
|
||||||
|
expectNum += res.multi * res.num;
|
||||||
|
winRate += Number(res.num);
|
||||||
|
});
|
||||||
|
console.log(winRate);
|
||||||
|
return {
|
||||||
|
expect: (expectNum / 500).toFixed(2),
|
||||||
|
winRate: (winRate / 500).toFixed(4),
|
||||||
|
};
|
||||||
|
},
|
||||||
|
// 保存
|
||||||
|
saveFun() {
|
||||||
|
//
|
||||||
|
save(
|
||||||
|
JSON.stringify({ poolList: this.arr, type: this.inquire.value })
|
||||||
|
).then((res) => {
|
||||||
|
if (res.code == 200) {
|
||||||
|
ElMessage({
|
||||||
|
showClose: true,
|
||||||
|
message: "保存成功",
|
||||||
|
type: "success",
|
||||||
|
});
|
||||||
|
this.getData();
|
||||||
|
} else {
|
||||||
|
ElMessage({
|
||||||
|
showClose: true,
|
||||||
|
message: res.message,
|
||||||
|
type: "error",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
|
// 监听类型
|
||||||
|
handleChange(value) {
|
||||||
|
this.inquire.value = value;
|
||||||
|
this.getData();
|
||||||
|
},
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<style lang="less" scoped>
|
||||||
|
.box {
|
||||||
|
padding-top: 20px;
|
||||||
|
background: #ecf0f5;
|
||||||
|
font-size: 18px;
|
||||||
|
.condition {
|
||||||
|
margin-bottom: 20px;
|
||||||
|
.inquire {
|
||||||
|
display: inline-block;
|
||||||
|
margin-right: 20px;
|
||||||
|
span {
|
||||||
|
margin-right: 10px;
|
||||||
|
}
|
||||||
|
.input {
|
||||||
|
width: 180px;
|
||||||
|
margin-right: 10px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.but {
|
||||||
|
margin-bottom: 20px;
|
||||||
|
}
|
||||||
|
.allArr {
|
||||||
|
margin: 20px 0 10px 0;
|
||||||
|
span {
|
||||||
|
color: red;
|
||||||
|
}
|
||||||
|
.span {
|
||||||
|
margin: 0 10px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.arrSet {
|
||||||
|
margin-bottom: 0px;
|
||||||
|
}
|
||||||
|
.boxs {
|
||||||
|
display: flex;
|
||||||
|
// justify-content: space-between;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
.arrContent {
|
||||||
|
// margin-bottom: 20px;
|
||||||
|
width: 190px;
|
||||||
|
height: 395px;
|
||||||
|
line-height: 30px;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
.arrBox {
|
||||||
|
.left {
|
||||||
|
// float: left;
|
||||||
|
div {
|
||||||
|
min-width: 100px;
|
||||||
|
display: block;
|
||||||
|
// margin-bottom: -25px;
|
||||||
|
.b1 {
|
||||||
|
color: red;
|
||||||
|
}
|
||||||
|
.b2 {
|
||||||
|
color: blue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.left_in2 {
|
||||||
|
margin-bottom: 10px
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.right {
|
||||||
|
float: left;
|
||||||
|
margin-bottom: 15px;
|
||||||
|
span {
|
||||||
|
display: inline-block;
|
||||||
|
width: 45px;
|
||||||
|
}
|
||||||
|
.input {
|
||||||
|
display: inline-block;
|
||||||
|
width: 100px;
|
||||||
|
margin-right: 10px;
|
||||||
|
font-size: 16px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
183
src/views/luckGift/luckGiftData.vue
Normal file
183
src/views/luckGift/luckGiftData.vue
Normal file
@@ -0,0 +1,183 @@
|
|||||||
|
<template>
|
||||||
|
<div class="box">
|
||||||
|
<!-- ID -->
|
||||||
|
<div class="condition">
|
||||||
|
<!-- 分区 -->
|
||||||
|
<div class="inquire">
|
||||||
|
<span>分区</span>
|
||||||
|
<el-select
|
||||||
|
v-model="inquire.value"
|
||||||
|
placeholder="请选择"
|
||||||
|
@change="handleChange"
|
||||||
|
>
|
||||||
|
<el-option
|
||||||
|
v-for="item in inquire.options"
|
||||||
|
:key="item.type"
|
||||||
|
:label="item.name"
|
||||||
|
:value="item.type"
|
||||||
|
>
|
||||||
|
</el-option>
|
||||||
|
</el-select>
|
||||||
|
</div>
|
||||||
|
<div class="inquire">
|
||||||
|
<span>MoliStar ID</span>
|
||||||
|
<el-input v-model="inquire.userId" placeholder="" class="input">
|
||||||
|
</el-input>
|
||||||
|
</div>
|
||||||
|
<!-- 送出时间 -->
|
||||||
|
<div class="inquire">
|
||||||
|
<span>送出时间</span>
|
||||||
|
<el-date-picker v-model="inquire.time" type="date" placeholder="请选择">
|
||||||
|
</el-date-picker>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- 按钮 -->
|
||||||
|
<div class="but">
|
||||||
|
<el-button class="primary" type="primary" @click="getData()"
|
||||||
|
>查询
|
||||||
|
</el-button>
|
||||||
|
<el-button
|
||||||
|
@click="
|
||||||
|
inquire.userId = '';
|
||||||
|
inquire.time = '';
|
||||||
|
"
|
||||||
|
>重置筛选
|
||||||
|
</el-button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- 表格 -->
|
||||||
|
<el-table
|
||||||
|
v-loading="loading"
|
||||||
|
:data="tableData"
|
||||||
|
border
|
||||||
|
style="width: 100%; margin-top: 25px"
|
||||||
|
>
|
||||||
|
<el-table-column prop="date" align="center" label="日期" />
|
||||||
|
<el-table-column prop="uid" align="center" label="uid" />
|
||||||
|
<el-table-column prop="erbanNo" align="center" label="平台id" />
|
||||||
|
<el-table-column prop="totalInput" align="center" label="进入" />
|
||||||
|
<el-table-column prop="totalOutput" align="center" label="退出" />
|
||||||
|
<el-table-column prop="production" align="center" label="剩余" />
|
||||||
|
<el-table-column prop="productionRatio" align="center" label="退出/进入" />
|
||||||
|
<el-table-column prop="avgInput" align="center" label="每次进入" />
|
||||||
|
<el-table-column prop="num" align="center" label="总次数" />
|
||||||
|
<el-table-column prop="winNum" align="center" label="得到次数" />
|
||||||
|
<el-table-column prop="winRate" align="center" label="得到率" />
|
||||||
|
</el-table>
|
||||||
|
|
||||||
|
<!-- 分页 -->
|
||||||
|
<el-pagination
|
||||||
|
style="margin-top: 10px"
|
||||||
|
class="paginationClass"
|
||||||
|
v-model:current-page="currentPage"
|
||||||
|
v-model:page-size="pageSize"
|
||||||
|
:page-sizes="[10, 20, 30, 40, 50, 100, 200, 300, 400, 500, 999999999]"
|
||||||
|
layout="sizes, prev, pager, next"
|
||||||
|
:total="total"
|
||||||
|
@size-change="handleSizeChange"
|
||||||
|
@current-change="handleCurrentChange"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
import { personal } from "@/api/luckGift/luckGift";
|
||||||
|
// @ts-ignore
|
||||||
|
import { dateFormat } from "@/utils/system-helper";
|
||||||
|
// @ts-ignore
|
||||||
|
import { ElMessage } from "element-plus";
|
||||||
|
import moment from "moment-timezone";
|
||||||
|
export default {
|
||||||
|
name: "luckGiftData",
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
loading: false,
|
||||||
|
//查询所需条件对象
|
||||||
|
inquire: {
|
||||||
|
userId: "",
|
||||||
|
time: "",
|
||||||
|
value: 2,
|
||||||
|
options: [
|
||||||
|
{
|
||||||
|
name: "阿拉伯区",
|
||||||
|
type: 2,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "英语区",
|
||||||
|
type: 1,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "华语区",
|
||||||
|
type: 4,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
// 表格
|
||||||
|
tableData: [],
|
||||||
|
// 分页
|
||||||
|
total: 10, //总页数
|
||||||
|
currentPage: 1, //页码
|
||||||
|
pageSize: 10, //条数
|
||||||
|
};
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
// this.getData();
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
// 查询接口
|
||||||
|
getData() {
|
||||||
|
console.log(dateFormat(this.inquire.time, "yyyy-MM-dd"));
|
||||||
|
if (!this.inquire.time) {
|
||||||
|
ElMessage({
|
||||||
|
showClose: true,
|
||||||
|
message: "请选择时间",
|
||||||
|
type: "error",
|
||||||
|
});
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
this.loading = true;
|
||||||
|
personal({
|
||||||
|
erbanNo: this.inquire.userId,
|
||||||
|
pageNo: this.currentPage,
|
||||||
|
pageSize: this.pageSize,
|
||||||
|
startDate: dateFormat(this.inquire.time, "yyyy-MM-dd"),
|
||||||
|
endDate: dateFormat(this.inquire.time, "yyyy-MM-dd"),
|
||||||
|
partitionId: this.inquire.value,
|
||||||
|
}).then((res) => {
|
||||||
|
this.total = res.data.total;
|
||||||
|
this.tableData = res.data.rows;
|
||||||
|
this.loading = false;
|
||||||
|
});
|
||||||
|
},
|
||||||
|
// 分页导航
|
||||||
|
handleSizeChange() {
|
||||||
|
this.getData();
|
||||||
|
},
|
||||||
|
handleCurrentChange() {
|
||||||
|
this.getData();
|
||||||
|
},
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<style lang="less" scoped>
|
||||||
|
.box {
|
||||||
|
padding-top: 20px;
|
||||||
|
background: #ecf0f5;
|
||||||
|
.condition {
|
||||||
|
margin-bottom: 20px;
|
||||||
|
.inquire {
|
||||||
|
display: inline-block;
|
||||||
|
margin-right: 20px;
|
||||||
|
span {
|
||||||
|
margin-right: 10px;
|
||||||
|
}
|
||||||
|
.input {
|
||||||
|
width: 180px;
|
||||||
|
margin-right: 10px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.but {
|
||||||
|
margin-bottom: 20px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
158
src/views/luckGift/luckGiftDataAll.vue
Normal file
158
src/views/luckGift/luckGiftDataAll.vue
Normal file
@@ -0,0 +1,158 @@
|
|||||||
|
<template>
|
||||||
|
<div class="box">
|
||||||
|
<div class="condition">
|
||||||
|
<!-- 分区 -->
|
||||||
|
<div class="inquire">
|
||||||
|
<span>分区</span>
|
||||||
|
<el-select v-model="inquire.value" placeholder="请选择">
|
||||||
|
<el-option
|
||||||
|
v-for="item in inquire.options"
|
||||||
|
:key="item.value"
|
||||||
|
:label="item.label"
|
||||||
|
:value="item.value"
|
||||||
|
>
|
||||||
|
</el-option>
|
||||||
|
</el-select>
|
||||||
|
</div>
|
||||||
|
<!-- 时间 -->
|
||||||
|
<div class="inquire">
|
||||||
|
<span>时间</span>
|
||||||
|
<el-date-picker v-model="inquire.time" type="date" placeholder="请选择">
|
||||||
|
</el-date-picker>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- 按钮 -->
|
||||||
|
<div class="but">
|
||||||
|
<el-button class="primary" type="primary" @click="getData()"
|
||||||
|
>查询
|
||||||
|
</el-button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- 表格 -->
|
||||||
|
<el-table
|
||||||
|
v-loading="loading"
|
||||||
|
:data="tableData"
|
||||||
|
border
|
||||||
|
style="width: 100%; margin-top: 25px"
|
||||||
|
>
|
||||||
|
<el-table-column prop="date" align="center" label="日期" />
|
||||||
|
<el-table-column prop="totalInput" align="center" label="进入" />
|
||||||
|
<el-table-column prop="totalOutput" align="center" label="退出" />
|
||||||
|
<el-table-column prop="x" align="center" label="退出/进入比例"
|
||||||
|
><template v-slot="scope">
|
||||||
|
{{ (scope.row.totalOutput / scope.row.totalInput).toFixed(4) }}
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column prop="num" align="center" label="参与次数" />
|
||||||
|
<el-table-column prop="count" align="center" label="参与人数" />
|
||||||
|
<el-table-column prop="winCount" align="center" label="得到人数" />
|
||||||
|
<el-table-column prop="winNum" align="center" label="得到次数" />
|
||||||
|
<el-table-column prop="winRate" align="center" label="得到率"
|
||||||
|
><template v-slot="scope">
|
||||||
|
{{ scope.row.winRate ? scope.row.winRate : "-" }}
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column prop="stock" align="center" label="数组库存" />
|
||||||
|
</el-table>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
import { platform } from "@/api/luckGift/luckGift";
|
||||||
|
// @ts-ignore
|
||||||
|
import { dateFormat } from "@/utils/system-helper";
|
||||||
|
// @ts-ignore
|
||||||
|
import { ElMessage } from "element-plus";
|
||||||
|
import moment from "moment-timezone";
|
||||||
|
export default {
|
||||||
|
name: "luckGiftDataAll",
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
loading: false,
|
||||||
|
//查询所需条件对象
|
||||||
|
inquire: {
|
||||||
|
value: 2,
|
||||||
|
options: [
|
||||||
|
{
|
||||||
|
value: 2,
|
||||||
|
label: "阿拉伯区",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
value: 1,
|
||||||
|
label: "英语区",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
value: 4,
|
||||||
|
label: "华语区",
|
||||||
|
},
|
||||||
|
],
|
||||||
|
time: "",
|
||||||
|
},
|
||||||
|
// 表格
|
||||||
|
tableData: [],
|
||||||
|
// 分页
|
||||||
|
total: 10, //总页数
|
||||||
|
currentPage: 1, //页码
|
||||||
|
pageSize: 10, //条数
|
||||||
|
};
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
// this.getData();
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
// 查询接口
|
||||||
|
getData() {
|
||||||
|
console.log(dateFormat(this.inquire.time, "yyyy-MM-dd"));
|
||||||
|
if (!this.inquire.time) {
|
||||||
|
ElMessage({
|
||||||
|
showClose: true,
|
||||||
|
message: "请选择时间",
|
||||||
|
type: "error",
|
||||||
|
});
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
this.loading = true;
|
||||||
|
platform({
|
||||||
|
erbanNo: this.inquire.userId,
|
||||||
|
startDate: dateFormat(this.inquire.time, "yyyy-MM-dd"),
|
||||||
|
endDate: dateFormat(this.inquire.time, "yyyy-MM-dd"),
|
||||||
|
partitionId: this.inquire.value,
|
||||||
|
}).then((res) => {
|
||||||
|
this.total = res.data.total;
|
||||||
|
this.tableData = res.data;
|
||||||
|
this.loading = false;
|
||||||
|
console.log(this.tableData, 123);
|
||||||
|
});
|
||||||
|
},
|
||||||
|
// 分页导航
|
||||||
|
handleSizeChange() {
|
||||||
|
this.getData();
|
||||||
|
},
|
||||||
|
handleCurrentChange() {
|
||||||
|
this.getData();
|
||||||
|
},
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<style lang="less" scoped>
|
||||||
|
.box {
|
||||||
|
padding-top: 20px;
|
||||||
|
background: #ecf0f5;
|
||||||
|
.condition {
|
||||||
|
margin-bottom: 20px;
|
||||||
|
.inquire {
|
||||||
|
display: inline-block;
|
||||||
|
margin-right: 20px;
|
||||||
|
span {
|
||||||
|
margin-right: 10px;
|
||||||
|
}
|
||||||
|
.input {
|
||||||
|
width: 180px;
|
||||||
|
margin-right: 10px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.but {
|
||||||
|
margin-bottom: 20px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
500
src/views/luckGift/luckGiftSet.vue
Normal file
500
src/views/luckGift/luckGiftSet.vue
Normal file
@@ -0,0 +1,500 @@
|
|||||||
|
<template>
|
||||||
|
<div class="box">
|
||||||
|
<div class="condition">
|
||||||
|
<!-- 分区 -->
|
||||||
|
<div class="inquire">
|
||||||
|
<span>分区</span>
|
||||||
|
<el-select
|
||||||
|
v-model="inquire.value"
|
||||||
|
placeholder="请选择"
|
||||||
|
@change="handleChange"
|
||||||
|
>
|
||||||
|
<el-option
|
||||||
|
v-for="item in inquire.options"
|
||||||
|
:key="item.type"
|
||||||
|
:label="item.name"
|
||||||
|
:value="item.type"
|
||||||
|
>
|
||||||
|
</el-option>
|
||||||
|
</el-select>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="inquire">
|
||||||
|
<span>对比值N</span>
|
||||||
|
<!-- @input="handleInput" -->
|
||||||
|
<el-input
|
||||||
|
v-model="inquire.comparisonValue"
|
||||||
|
placeholder=""
|
||||||
|
class="input"
|
||||||
|
disabled
|
||||||
|
></el-input>
|
||||||
|
<el-button
|
||||||
|
class="primary"
|
||||||
|
type="primary"
|
||||||
|
@click="
|
||||||
|
editDialog = true;
|
||||||
|
butClick = false;
|
||||||
|
type = 1;
|
||||||
|
editDialogTitle = '对比值N';
|
||||||
|
value = inquire.comparisonValue;
|
||||||
|
"
|
||||||
|
>
|
||||||
|
编辑</el-button
|
||||||
|
>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="inquire">
|
||||||
|
<span>对比值M</span>
|
||||||
|
<el-input
|
||||||
|
v-model="inquire.supplement.supplementRatio"
|
||||||
|
placeholder=""
|
||||||
|
class="input"
|
||||||
|
disabled
|
||||||
|
></el-input>
|
||||||
|
<el-button
|
||||||
|
class="primary"
|
||||||
|
type="primary"
|
||||||
|
@click="
|
||||||
|
editDialog = true;
|
||||||
|
butClick = false;
|
||||||
|
type = 5;
|
||||||
|
editDialogTitle = '对比值M';
|
||||||
|
value = inquire.supplement.supplementRatio;
|
||||||
|
"
|
||||||
|
>
|
||||||
|
编辑</el-button
|
||||||
|
>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="inquire">
|
||||||
|
<span>金币对比值A</span>
|
||||||
|
<!-- @input="handleInput" -->
|
||||||
|
<el-input
|
||||||
|
v-model="inquire.supplement.conditionInput"
|
||||||
|
placeholder=""
|
||||||
|
class="input"
|
||||||
|
disabled
|
||||||
|
></el-input>
|
||||||
|
<el-button
|
||||||
|
class="primary"
|
||||||
|
type="primary"
|
||||||
|
@click="
|
||||||
|
editDialog = true;
|
||||||
|
butClick = false;
|
||||||
|
type = 6;
|
||||||
|
editDialogTitle = '金币对比值A';
|
||||||
|
value = inquire.supplement.conditionInput;
|
||||||
|
"
|
||||||
|
>
|
||||||
|
编辑</el-button
|
||||||
|
>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="inquire">
|
||||||
|
<span>奖励金币倍数</span>
|
||||||
|
<!-- @input="handleInput" -->
|
||||||
|
<el-input
|
||||||
|
v-model="inquire.supplement.supplementMulti"
|
||||||
|
placeholder=""
|
||||||
|
class="input"
|
||||||
|
disabled
|
||||||
|
></el-input>
|
||||||
|
<el-button
|
||||||
|
class="primary"
|
||||||
|
type="primary"
|
||||||
|
@click="
|
||||||
|
editDialog = true;
|
||||||
|
butClick = false;
|
||||||
|
type = 7;
|
||||||
|
editDialogTitle = '奖励金币倍数';
|
||||||
|
value = inquire.supplement.supplementMulti;
|
||||||
|
"
|
||||||
|
>
|
||||||
|
编辑</el-button
|
||||||
|
>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="inquire">
|
||||||
|
<span>幸运24金币库存</span>
|
||||||
|
<el-input
|
||||||
|
v-model="inquire.goldInventory"
|
||||||
|
placeholder=""
|
||||||
|
class="input"
|
||||||
|
disabled
|
||||||
|
></el-input>
|
||||||
|
<el-button
|
||||||
|
class="primary"
|
||||||
|
type="primary"
|
||||||
|
@click="
|
||||||
|
editDialog = true;
|
||||||
|
butClick = false;
|
||||||
|
type = 2;
|
||||||
|
editDialogTitle = '幸运24金币库存';
|
||||||
|
value = inquire.goldInventory;
|
||||||
|
"
|
||||||
|
>编辑</el-button
|
||||||
|
>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- <div class="inquire">
|
||||||
|
<span>幸运礼物ID</span>
|
||||||
|
<el-input
|
||||||
|
v-model="inquire.x"
|
||||||
|
placeholder=""
|
||||||
|
class="input"
|
||||||
|
disabled
|
||||||
|
></el-input>
|
||||||
|
<el-button
|
||||||
|
class="primary"
|
||||||
|
type="primary"
|
||||||
|
@click="
|
||||||
|
editDialog = true;
|
||||||
|
butClick = false;
|
||||||
|
type = 8;
|
||||||
|
editDialogTitle = '幸运礼物ID';
|
||||||
|
value = inquire.x;
|
||||||
|
"
|
||||||
|
>
|
||||||
|
编辑</el-button
|
||||||
|
>
|
||||||
|
</div> -->
|
||||||
|
|
||||||
|
<div class="inquire">
|
||||||
|
<span>平台抽成</span>
|
||||||
|
<el-input
|
||||||
|
v-model="inquire.platformCommission"
|
||||||
|
placeholder=""
|
||||||
|
class="input"
|
||||||
|
disabled
|
||||||
|
></el-input>
|
||||||
|
<el-button
|
||||||
|
class="primary"
|
||||||
|
type="primary"
|
||||||
|
@click="
|
||||||
|
editDialog = true;
|
||||||
|
butClick = false;
|
||||||
|
type = 3;
|
||||||
|
editDialogTitle = '平台抽成';
|
||||||
|
value = inquire.platformCommission;
|
||||||
|
"
|
||||||
|
>编辑</el-button
|
||||||
|
>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="inquire">
|
||||||
|
<span>用户收益比例</span>
|
||||||
|
<el-input
|
||||||
|
v-model="inquire.userRevenueRatio"
|
||||||
|
placeholder=""
|
||||||
|
class="input"
|
||||||
|
disabled
|
||||||
|
></el-input>
|
||||||
|
<el-button
|
||||||
|
class="primary"
|
||||||
|
type="primary"
|
||||||
|
@click="
|
||||||
|
editDialog = true;
|
||||||
|
butClick = false;
|
||||||
|
type = 4;
|
||||||
|
editDialogTitle = '用户收益比例';
|
||||||
|
value = inquire.userRevenueRatio;
|
||||||
|
"
|
||||||
|
>编辑</el-button
|
||||||
|
>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="inquire">
|
||||||
|
<span>通知制定金额</span>
|
||||||
|
<!-- @input="handleInput" -->
|
||||||
|
<el-input
|
||||||
|
v-model="inquire.warnMulti"
|
||||||
|
placeholder=""
|
||||||
|
class="input"
|
||||||
|
disabled
|
||||||
|
></el-input>
|
||||||
|
<el-button
|
||||||
|
class="primary"
|
||||||
|
type="primary"
|
||||||
|
@click="
|
||||||
|
editDialog = true;
|
||||||
|
butClick = false;
|
||||||
|
type = 9;
|
||||||
|
editDialogTitle = '通知制定金额';
|
||||||
|
value = inquire.warnMulti;
|
||||||
|
"
|
||||||
|
>
|
||||||
|
编辑</el-button
|
||||||
|
>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- <div class="inquire">
|
||||||
|
<span>库存告急通知</span>
|
||||||
|
<el-input
|
||||||
|
v-model="inquire.x"
|
||||||
|
placeholder=""
|
||||||
|
class="input"
|
||||||
|
disabled
|
||||||
|
></el-input>
|
||||||
|
<el-button
|
||||||
|
class="primary"
|
||||||
|
type="primary"
|
||||||
|
@click="
|
||||||
|
editDialog = true;
|
||||||
|
butClick = false;
|
||||||
|
type = 10;
|
||||||
|
editDialogTitle = '库存告急通知';
|
||||||
|
value = inquire.x;
|
||||||
|
"
|
||||||
|
>
|
||||||
|
编辑</el-button
|
||||||
|
>
|
||||||
|
</div> -->
|
||||||
|
|
||||||
|
<div class="inquire">
|
||||||
|
<span>用户上线列表</span>
|
||||||
|
<!-- @input="handleInput" -->
|
||||||
|
<el-input
|
||||||
|
v-model="inquire.followErbanNoList"
|
||||||
|
placeholder=""
|
||||||
|
class="input"
|
||||||
|
disabled
|
||||||
|
></el-input>
|
||||||
|
<el-button
|
||||||
|
class="primary"
|
||||||
|
type="primary"
|
||||||
|
@click="
|
||||||
|
editDialog = true;
|
||||||
|
butClick = false;
|
||||||
|
type = 11;
|
||||||
|
editDialogTitle = '用户上线列表';
|
||||||
|
value = inquire.followErbanNoList;
|
||||||
|
"
|
||||||
|
>
|
||||||
|
编辑</el-button
|
||||||
|
>
|
||||||
|
</div>
|
||||||
|
<div class="inquire">
|
||||||
|
<span>赠送1000倍奖励</span>
|
||||||
|
<el-button
|
||||||
|
class="primary"
|
||||||
|
type="primary"
|
||||||
|
:disabled="butClick"
|
||||||
|
@click="
|
||||||
|
editDialog = true;
|
||||||
|
type = 12;
|
||||||
|
editDialogTitle = '赠送1000倍奖励';
|
||||||
|
value = inquire.x;
|
||||||
|
"
|
||||||
|
>
|
||||||
|
赠送</el-button
|
||||||
|
>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- 编辑弹窗 -->
|
||||||
|
<el-dialog v-model="editDialog" :title="editDialogTitle" width="36%" center>
|
||||||
|
<div style="margin-bottom: 25px; margin-top: 10px">
|
||||||
|
<span
|
||||||
|
style="display: inline-block; margin-right: 20px"
|
||||||
|
class="col-sm-2 control-label"
|
||||||
|
>{{ editDialogTitle }}</span
|
||||||
|
>
|
||||||
|
<el-input
|
||||||
|
v-model="value"
|
||||||
|
style="width: 75%"
|
||||||
|
class="input"
|
||||||
|
placeholder="请输入"
|
||||||
|
></el-input>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<template #footer>
|
||||||
|
<span class="dialog-footer">
|
||||||
|
<el-button
|
||||||
|
@click="
|
||||||
|
editDialog = false;
|
||||||
|
butClick = false;
|
||||||
|
"
|
||||||
|
>取消</el-button
|
||||||
|
>
|
||||||
|
<el-button
|
||||||
|
type="primary"
|
||||||
|
:disabled="butClick"
|
||||||
|
@click="editDialogClick()"
|
||||||
|
>
|
||||||
|
保存
|
||||||
|
</el-button>
|
||||||
|
</span>
|
||||||
|
</template>
|
||||||
|
</el-dialog>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
import { getConfig, updateSet, updateUserMulti } from "@/api/luckGift/luckGift";
|
||||||
|
// @ts-ignore
|
||||||
|
import { dateFormat } from "@/utils/system-helper";
|
||||||
|
// @ts-ignore
|
||||||
|
import { ElMessage } from "element-plus";
|
||||||
|
import moment from "moment-timezone";
|
||||||
|
export default {
|
||||||
|
name: "luckGiftSet",
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
loading: false,
|
||||||
|
butClick: false,
|
||||||
|
butClickTime: null,
|
||||||
|
//查询所需条件对象
|
||||||
|
inquire: {
|
||||||
|
value: 2,
|
||||||
|
options: [
|
||||||
|
{
|
||||||
|
name: "阿拉伯区",
|
||||||
|
type: 2,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "英语区",
|
||||||
|
type: 1,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "华语区",
|
||||||
|
type: 4,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
comparisonValue: "",
|
||||||
|
goldInventory: "",
|
||||||
|
giftId: "",
|
||||||
|
platformCommission: "",
|
||||||
|
userRevenueRatio: "",
|
||||||
|
supplement: {
|
||||||
|
conditionInput: "",
|
||||||
|
conditionNum: "",
|
||||||
|
supplementMulti: "",
|
||||||
|
supplementNum: "",
|
||||||
|
supplementRatio: "",
|
||||||
|
},
|
||||||
|
warnMulti: "",
|
||||||
|
followErbanNoList: "",
|
||||||
|
},
|
||||||
|
editDialog: false,
|
||||||
|
editDialogTitle: "",
|
||||||
|
value: "",
|
||||||
|
type: null,
|
||||||
|
};
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
this.getData();
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
// 查询接口
|
||||||
|
getData() {
|
||||||
|
getConfig({ partitionId: this.inquire.value }).then((res) => {
|
||||||
|
this.inquire.comparisonValue = res.data.productionRatio;
|
||||||
|
this.inquire.goldInventory = res.data.stock;
|
||||||
|
this.inquire.platformCommission = res.data.platformRatio;
|
||||||
|
this.inquire.userRevenueRatio = res.data.receiverRatio;
|
||||||
|
this.inquire.supplement = res.data.supplement;
|
||||||
|
this.inquire.warnMulti = res.data.warnMulti;
|
||||||
|
this.inquire.followErbanNoList = res.data.followErbanNoList.join();
|
||||||
|
});
|
||||||
|
},
|
||||||
|
// 确认保存
|
||||||
|
editDialogClick() {
|
||||||
|
var obj = {};
|
||||||
|
obj.partitionId = this.inquire.value;
|
||||||
|
if (this.type == 12) {
|
||||||
|
this.butClick = true;
|
||||||
|
updateUserMulti({ erbanNo: this.value }).then((res) => {
|
||||||
|
if (res.code == 200) {
|
||||||
|
ElMessage({
|
||||||
|
showClose: true,
|
||||||
|
message:'赠送成功',
|
||||||
|
type: "success",
|
||||||
|
});
|
||||||
|
setTimeout(() => {
|
||||||
|
this.butClick = false;
|
||||||
|
}, 3000);
|
||||||
|
this.editDialog = false;
|
||||||
|
this.getData();
|
||||||
|
} else {
|
||||||
|
this.butClick = false;
|
||||||
|
ElMessage({
|
||||||
|
showClose: true,
|
||||||
|
message: res.message,
|
||||||
|
type: "error",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
if (this.type == 1) {
|
||||||
|
obj.productionRatio = this.value;
|
||||||
|
} else if (this.type == 2) {
|
||||||
|
obj.stock = this.value;
|
||||||
|
} else if (this.type == 3) {
|
||||||
|
obj.platformRatio = this.value;
|
||||||
|
} else if (this.type == 4) {
|
||||||
|
obj.receiverRatio = this.value;
|
||||||
|
}else if (this.type == 5) {
|
||||||
|
obj.supplement = this.inquire.supplement;
|
||||||
|
obj.supplement.supplementRatio = this.value;
|
||||||
|
} else if (this.type == 6) {
|
||||||
|
obj.supplement = this.inquire.supplement;
|
||||||
|
obj.supplement.conditionInput = this.value;
|
||||||
|
} else if (this.type == 7) {
|
||||||
|
obj.supplement = this.inquire.supplement;
|
||||||
|
obj.supplement.supplementMulti = this.value;
|
||||||
|
} else if (this.type == 9) {
|
||||||
|
obj.warnMulti = this.value;
|
||||||
|
} else if (this.type == 11) {
|
||||||
|
obj.followErbanNoList = this.value.split(",");
|
||||||
|
}
|
||||||
|
updateSet(obj).then((res) => {
|
||||||
|
if (res.code == 200) {
|
||||||
|
ElMessage({
|
||||||
|
showClose: true,
|
||||||
|
message: "保存成功",
|
||||||
|
type: "success",
|
||||||
|
});
|
||||||
|
this.editDialog = false;
|
||||||
|
this.getData();
|
||||||
|
} else {
|
||||||
|
ElMessage({
|
||||||
|
showClose: true,
|
||||||
|
message: res.message,
|
||||||
|
type: "error",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
},
|
||||||
|
// 监听类型
|
||||||
|
handleChange(value) {
|
||||||
|
this.inquire.value = value;
|
||||||
|
this.getData();
|
||||||
|
},
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<style lang="less" scoped>
|
||||||
|
.box {
|
||||||
|
padding-top: 20px;
|
||||||
|
background: #ecf0f5;
|
||||||
|
.condition {
|
||||||
|
margin-bottom: 20px;
|
||||||
|
.inquire {
|
||||||
|
margin-right: 20px;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
span {
|
||||||
|
display: inline-block;
|
||||||
|
width: 110px;
|
||||||
|
margin-right: 10px;
|
||||||
|
// text-align: right;
|
||||||
|
}
|
||||||
|
.input {
|
||||||
|
width: 180px;
|
||||||
|
margin-right: 10px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.but {
|
||||||
|
margin-bottom: 20px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
@@ -306,7 +306,8 @@ export default {
|
|||||||
this.inquire.value1 = e;
|
this.inquire.value1 = e;
|
||||||
luckyGiftRangeConfigList({ giftId: this.inquire.value1 }).then((res) => {
|
luckyGiftRangeConfigList({ giftId: this.inquire.value1 }).then((res) => {
|
||||||
this.inquire.giftsNum = res.data;
|
this.inquire.giftsNum = res.data;
|
||||||
// this.inquire.value2 = res.data[0].id;
|
// this.inquire.value2 = "";
|
||||||
|
this.inquire.value2 = res.data[0].id;
|
||||||
// this.loading = true;
|
// this.loading = true;
|
||||||
// luckyGiftRewardList({
|
// luckyGiftRewardList({
|
||||||
// giftId: e,
|
// giftId: e,
|
||||||
|
@@ -245,7 +245,7 @@ export default {
|
|||||||
$("#tipModal").modal('show');
|
$("#tipModal").modal('show');
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (actualGold != parseInt(actualAmount * 1000)) {
|
if (actualGold != parseInt(actualAmount * 7000)) {
|
||||||
$("#tipMsg").text("赠送金币与充值金额兑换比例不正确!");
|
$("#tipMsg").text("赠送金币与充值金额兑换比例不正确!");
|
||||||
$("#tipModal").modal('show');
|
$("#tipModal").modal('show');
|
||||||
return;
|
return;
|
||||||
@@ -332,15 +332,8 @@ export default {
|
|||||||
$("#tipModal").modal('show');
|
$("#tipModal").modal('show');
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
var minGold = parseInt(actualAmount * 800);
|
const actualGold = parseInt(num);
|
||||||
var maxGold = parseInt(actualAmount * 1200);
|
if (actualGold != parseInt(actualAmount * 7000)) {
|
||||||
var actualGold = parseInt(num);
|
|
||||||
if (actualGold < minGold || actualGold > maxGold) {
|
|
||||||
$("#tipMsg").text("赠送金币与充值金额兑换比例不正确!");
|
|
||||||
$("#tipModal").modal('show');
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (actualGold != parseInt(actualAmount * 1000)) {
|
|
||||||
$("#tipMsg").text("赠送金币与充值金额兑换比例不正确!");
|
$("#tipMsg").text("赠送金币与充值金额兑换比例不正确!");
|
||||||
$("#tipModal").modal('show');
|
$("#tipModal").modal('show');
|
||||||
return;
|
return;
|
||||||
|
374
src/views/ssGuild/SsGuild.vue
Normal file
374
src/views/ssGuild/SsGuild.vue
Normal file
@@ -0,0 +1,374 @@
|
|||||||
|
<template>
|
||||||
|
<div class="box">
|
||||||
|
<!-- 查询 -->
|
||||||
|
<div class="inquire">
|
||||||
|
<span>主播ID</span>
|
||||||
|
<el-input
|
||||||
|
v-model="inquire.anchorId"
|
||||||
|
placeholder=""
|
||||||
|
class="input"
|
||||||
|
></el-input>
|
||||||
|
</div>
|
||||||
|
<div class="inquire">
|
||||||
|
<span>公会ID</span>
|
||||||
|
<el-input
|
||||||
|
v-model="inquire.guildId"
|
||||||
|
placeholder=""
|
||||||
|
class="input"
|
||||||
|
></el-input>
|
||||||
|
</div>
|
||||||
|
<div class="inquire">
|
||||||
|
<span>公会长ID</span>
|
||||||
|
<el-input
|
||||||
|
v-model="inquire.guildUserId"
|
||||||
|
placeholder=""
|
||||||
|
class="input"
|
||||||
|
></el-input>
|
||||||
|
</div>
|
||||||
|
<div class="inquire">
|
||||||
|
<span>周期</span>
|
||||||
|
<el-select v-model="inquire.weekTime" placeholder="请选择">
|
||||||
|
<el-option
|
||||||
|
v-for="item in inquire.weekTimeOptions"
|
||||||
|
:key="item.cycleDateBegin"
|
||||||
|
:label="item.cycleDateShow"
|
||||||
|
:value="item.cycleDateBegin"
|
||||||
|
>
|
||||||
|
</el-option>
|
||||||
|
</el-select>
|
||||||
|
</div>
|
||||||
|
<div class="inquire">
|
||||||
|
<span>发放状态</span>
|
||||||
|
<el-select v-model="inquire.status" placeholder="请选择">
|
||||||
|
<el-option
|
||||||
|
v-for="item in inquire.statusOptions"
|
||||||
|
:key="item.value"
|
||||||
|
:label="item.label"
|
||||||
|
:value="item.value"
|
||||||
|
>
|
||||||
|
</el-option>
|
||||||
|
</el-select>
|
||||||
|
</div>
|
||||||
|
<!-- 查询按钮 -->
|
||||||
|
<el-button class="primary" type="primary" @click="getData()"
|
||||||
|
>查询</el-button
|
||||||
|
>
|
||||||
|
<el-button class="primary" type="primary" @click="confirmExport2Excel()"
|
||||||
|
>导出</el-button
|
||||||
|
>
|
||||||
|
<el-button class="warning" type="warning " @click="sendGoldFun()"
|
||||||
|
>批量发放</el-button
|
||||||
|
>
|
||||||
|
|
||||||
|
<!-- 表格 -->
|
||||||
|
<el-table
|
||||||
|
v-loading="loading"
|
||||||
|
:data="tableData"
|
||||||
|
ref="multipleTable"
|
||||||
|
@selection-change="handleSelectionChange"
|
||||||
|
border
|
||||||
|
style="width: 100%; margin-top: 25px"
|
||||||
|
>
|
||||||
|
<el-table-column type="selection" :selectable="callback" label="选择" />
|
||||||
|
<el-table-column prop="cycleDate" align="center" label="周期" />
|
||||||
|
<el-table-column prop="erbanNo" align="center" label="主播ID" />
|
||||||
|
<el-table-column prop="guildId" align="center" label="公会ID" />
|
||||||
|
<el-table-column
|
||||||
|
prop="guildDiamondNum"
|
||||||
|
align="center"
|
||||||
|
label="公会总流水"
|
||||||
|
/>
|
||||||
|
<el-table-column prop="ssLevelName" align="center" label="公会等级" />
|
||||||
|
<el-table-column prop="diamondNum" align="center" label="主播流水" />
|
||||||
|
<el-table-column prop="memberLevelName" align="center" label="主播档位" />
|
||||||
|
<el-table-column prop="goldNum" align="center" label="主播获得奖励" />
|
||||||
|
<el-table-column align="center" prop="giftInfo" label="发放状态">
|
||||||
|
<template v-slot="scope">
|
||||||
|
{{ scope.row.sendStatusStr }}
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column prop="sendUser" align="center" label="发放人" />
|
||||||
|
<el-table-column align="center" label="操作" width="300">
|
||||||
|
<template v-slot="scope">
|
||||||
|
<el-button
|
||||||
|
@click="sendGoldOneFun(scope.row)"
|
||||||
|
:class="scope.row.sendStatusStr == '未发放' ? 'primary' : 'info'"
|
||||||
|
:type="scope.row.sendStatusStr == '未发放' ? 'primary' : 'info'"
|
||||||
|
size="default"
|
||||||
|
:disabled="scope.row.sendStatusStr == '未发放' ? false : true"
|
||||||
|
>{{
|
||||||
|
scope.row.sendStatusStr == "未发放" ? "发放" : "已发放"
|
||||||
|
}}</el-button
|
||||||
|
>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
|
||||||
|
<!-- 分页 -->
|
||||||
|
<el-pagination
|
||||||
|
style="margin-top: 10px"
|
||||||
|
class="paginationClass"
|
||||||
|
v-model:current-page="currentPage"
|
||||||
|
v-model:page-size="pageSize"
|
||||||
|
:page-sizes="[10, 20, 30, 40, 50, 100, 200, 300, 400, 500, 999999999]"
|
||||||
|
layout="sizes, prev, pager, next"
|
||||||
|
:total="total"
|
||||||
|
@size-change="handleSizeChange"
|
||||||
|
@current-change="handleCurrentChange"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
import {
|
||||||
|
cycleDateList,
|
||||||
|
list,
|
||||||
|
ssGuildExport,
|
||||||
|
sendGold,
|
||||||
|
} from "@/api/SsGuild/SsGuild";
|
||||||
|
// @ts-ignore
|
||||||
|
import { dateFormat } from "@/utils/system-helper";
|
||||||
|
// @ts-ignore
|
||||||
|
import { ElMessage, ElTable } from "element-plus";
|
||||||
|
import { ref } from "vue";
|
||||||
|
import { ElMessageBox } from "element-plus"; // 正确引入 ElM
|
||||||
|
export default {
|
||||||
|
name: "SsGuild",
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
loading: false,
|
||||||
|
delDialog: false,
|
||||||
|
delDialogData: null,
|
||||||
|
selectedRows: [], //存储选中行数据
|
||||||
|
//查询所需条件对象
|
||||||
|
inquire: {
|
||||||
|
anchorId: "",
|
||||||
|
guildId: "",
|
||||||
|
guildUserId: "",
|
||||||
|
weekTime: "",
|
||||||
|
weekTimeOptions: [],
|
||||||
|
status: "",
|
||||||
|
statusOptions: [
|
||||||
|
{ value: 0, label: "未发放" },
|
||||||
|
{ value: 1, label: "已发放" },
|
||||||
|
],
|
||||||
|
},
|
||||||
|
// 表格
|
||||||
|
tableData: [],
|
||||||
|
// 分页
|
||||||
|
total: 10, //总页数
|
||||||
|
currentPage: 1, //页码
|
||||||
|
pageSize: 10, //条数
|
||||||
|
};
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
cycleDateList().then((res) => {
|
||||||
|
this.inquire.weekTimeOptions = res.data;
|
||||||
|
});
|
||||||
|
this.getData();
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
// 查询接口
|
||||||
|
getData() {
|
||||||
|
this.loading = true;
|
||||||
|
let time = this.inquire.time;
|
||||||
|
let startTime = "";
|
||||||
|
let endTime = "";
|
||||||
|
if (time && time.length > 0) {
|
||||||
|
startTime = dateFormat(this.inquire.time[0], "yyyy-MM-dd hh:mm:ss");
|
||||||
|
endTime = dateFormat(this.inquire.time[1], "yyyy-MM-dd hh:mm:ss");
|
||||||
|
}
|
||||||
|
list({
|
||||||
|
erbanNo: this.inquire.anchorId,
|
||||||
|
guildId: this.inquire.guildId,
|
||||||
|
ownerErbanNo: this.inquire.guildUserId,
|
||||||
|
cycleDate: this.inquire.weekTime,
|
||||||
|
status: this.inquire.status,
|
||||||
|
pageNo: this.currentPage,
|
||||||
|
pageSize: this.pageSize,
|
||||||
|
}).then((res) => {
|
||||||
|
if (res.code == 200) {
|
||||||
|
this.total = res.data.total;
|
||||||
|
this.tableData = res.data.rows;
|
||||||
|
} else {
|
||||||
|
ElMessage({
|
||||||
|
showClose: true,
|
||||||
|
message: res.message,
|
||||||
|
type: "error",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
this.loading = false;
|
||||||
|
});
|
||||||
|
},
|
||||||
|
handleSelectionChange(val) {
|
||||||
|
this.selectedRows = val;
|
||||||
|
console.log("Selected rows:", this.selectedRows);
|
||||||
|
},
|
||||||
|
handleGetSelection() {
|
||||||
|
// 获取选中的行数据
|
||||||
|
console.log("Current selected rows:", this.selectedRows);
|
||||||
|
},
|
||||||
|
// 确认导出
|
||||||
|
confirmExport2Excel() {
|
||||||
|
ElMessageBox.confirm("确定导出Excel吗?", "提示", {
|
||||||
|
confirmButtonText: "确定",
|
||||||
|
cancelButtonText: "取消",
|
||||||
|
type: "warning",
|
||||||
|
})
|
||||||
|
.then(() => {
|
||||||
|
ssGuildExport({
|
||||||
|
erbanNo: this.inquire.anchorId,
|
||||||
|
guildId: this.inquire.guildId,
|
||||||
|
ownerErbanNo: this.inquire.guildUserId,
|
||||||
|
cycleDate: this.inquire.weekTime,
|
||||||
|
status: this.inquire.status,
|
||||||
|
})
|
||||||
|
.then((res) => {
|
||||||
|
// if (res) {
|
||||||
|
// this.exportVisible = false;
|
||||||
|
// this.btnLoading = false;
|
||||||
|
// let alink = document.createElement("a");
|
||||||
|
// alink.download = `SS公会奖励发放.xls`;
|
||||||
|
// alink.style.display = "none";
|
||||||
|
// const blob = new Blob([res.data]);
|
||||||
|
// alink.href = URL.createObjectURL(blob);
|
||||||
|
// document.body.appendChild(alink);
|
||||||
|
// alink.click();
|
||||||
|
// URL.revokeObjectURL(alink.href);
|
||||||
|
// }
|
||||||
|
})
|
||||||
|
.catch((err) => {
|
||||||
|
console.error(err); // 打印错误信息
|
||||||
|
ElMessage.error("导出失败");
|
||||||
|
});
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
ElMessage({
|
||||||
|
type: "info",
|
||||||
|
message: "取消",
|
||||||
|
});
|
||||||
|
});
|
||||||
|
},
|
||||||
|
callback(row) {
|
||||||
|
return row.sendStatusStr == "未发放" ? true : false;
|
||||||
|
},
|
||||||
|
// 确认批量发放
|
||||||
|
sendGoldFun() {
|
||||||
|
ElMessageBox.confirm("确定发放奖励吗?", "提示", {
|
||||||
|
confirmButtonText: "确定",
|
||||||
|
cancelButtonText: "取消",
|
||||||
|
type: "warning",
|
||||||
|
})
|
||||||
|
.then(() => {
|
||||||
|
var str = "";
|
||||||
|
this.selectedRows.forEach((res) => {
|
||||||
|
str += `${res.id},`;
|
||||||
|
});
|
||||||
|
sendGold({ ids: str })
|
||||||
|
.then((res) => {
|
||||||
|
if (res.code == 200) {
|
||||||
|
ElMessage({
|
||||||
|
showClose: true,
|
||||||
|
message: "发放成功",
|
||||||
|
type: "success",
|
||||||
|
});
|
||||||
|
this.getData();
|
||||||
|
} else {
|
||||||
|
ElMessage({
|
||||||
|
showClose: true,
|
||||||
|
message: res.message,
|
||||||
|
type: "error",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch((err) => {
|
||||||
|
console.error(err); // 打印错误信息
|
||||||
|
ElMessage.error("发放失败");
|
||||||
|
});
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
ElMessage({
|
||||||
|
type: "info",
|
||||||
|
message: "取消",
|
||||||
|
});
|
||||||
|
});
|
||||||
|
},
|
||||||
|
// 确认单个发放
|
||||||
|
sendGoldOneFun(val) {
|
||||||
|
ElMessageBox.confirm("确定发放奖励吗?", "提示", {
|
||||||
|
confirmButtonText: "确定",
|
||||||
|
cancelButtonText: "取消",
|
||||||
|
type: "warning",
|
||||||
|
})
|
||||||
|
.then(() => {
|
||||||
|
sendGold({ ids: val.id })
|
||||||
|
.then((res) => {
|
||||||
|
if (res.code == 200) {
|
||||||
|
ElMessage({
|
||||||
|
showClose: true,
|
||||||
|
message: "发放成功",
|
||||||
|
type: "success",
|
||||||
|
});
|
||||||
|
this.getData();
|
||||||
|
} else {
|
||||||
|
ElMessage({
|
||||||
|
showClose: true,
|
||||||
|
message: res.message,
|
||||||
|
type: "error",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch((err) => {
|
||||||
|
console.error(err); // 打印错误信息
|
||||||
|
ElMessage.error("发放失败");
|
||||||
|
});
|
||||||
|
})
|
||||||
|
.catch(() => {
|
||||||
|
ElMessage({
|
||||||
|
type: "info",
|
||||||
|
message: "取消",
|
||||||
|
});
|
||||||
|
});
|
||||||
|
},
|
||||||
|
// 分页导航
|
||||||
|
handleSizeChange() {
|
||||||
|
this.getData();
|
||||||
|
},
|
||||||
|
handleCurrentChange() {
|
||||||
|
this.getData();
|
||||||
|
},
|
||||||
|
},
|
||||||
|
};
|
||||||
|
</script>
|
||||||
|
<style lang="less" scoped>
|
||||||
|
.box {
|
||||||
|
padding-top: 20px;
|
||||||
|
background: #ecf0f5;
|
||||||
|
.inquire {
|
||||||
|
display: inline-block;
|
||||||
|
margin-right: 20px;
|
||||||
|
span {
|
||||||
|
margin-right: 10px;
|
||||||
|
}
|
||||||
|
.input {
|
||||||
|
width: 180px;
|
||||||
|
margin-right: 10px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.dialogTableVisibleBut {
|
||||||
|
display: block;
|
||||||
|
margin: 30px 0 0 830px;
|
||||||
|
}
|
||||||
|
.paginationClass {
|
||||||
|
margin: 15px 0 5px 0px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.selectBox {
|
||||||
|
display: flex;
|
||||||
|
height: 35px;
|
||||||
|
line-height: 35px;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
}
|
||||||
|
.selectBoxImg {
|
||||||
|
height: 150px;
|
||||||
|
}
|
||||||
|
</style>
|
@@ -103,6 +103,7 @@ export default {
|
|||||||
{ field: 'googleUsd', title: 'google充值美元', align: 'center', width: '14%' },
|
{ field: 'googleUsd', title: 'google充值美元', align: 'center', width: '14%' },
|
||||||
{ field: 'payermaxUsd', title: 'payermax充值美元', align: 'center', width: '14%' },
|
{ field: 'payermaxUsd', title: 'payermax充值美元', align: 'center', width: '14%' },
|
||||||
{ field: 'myCardUsd', title: 'myCard充值美元', align: 'center', width: '14%' },
|
{ field: 'myCardUsd', title: 'myCard充值美元', align: 'center', width: '14%' },
|
||||||
|
{ field: 'startPayUsd', title: 'startPay充值美元', align: 'center', width: '14%' },
|
||||||
{ field: 'iosUsd', title: 'ios充值美元', align: 'center', width: '14%' },
|
{ field: 'iosUsd', title: 'ios充值美元', align: 'center', width: '14%' },
|
||||||
{ field: 'companyUsd', title: '对公打款美元', align: 'center', width: '14%' },
|
{ field: 'companyUsd', title: '对公打款美元', align: 'center', width: '14%' },
|
||||||
{ field: 'totalUsd', title: '总充值美元', align: 'center', width: '14%' },
|
{ field: 'totalUsd', title: '总充值美元', align: 'center', width: '14%' },
|
||||||
|
@@ -1,24 +1,29 @@
|
|||||||
<template>
|
<template>
|
||||||
<section class="content">
|
<section class="content">
|
||||||
<div class="box box-primary">
|
<div class="box box-primary">
|
||||||
<div class="box-body">
|
<div class="box-body">
|
||||||
<!-- Content Header (Page header) -->
|
<!-- Content Header (Page header) -->
|
||||||
<section class="content-header">
|
<section class="content-header">
|
||||||
<h1 id="itemTitle"></h1>
|
<h1 id="itemTitle"></h1>
|
||||||
</section>
|
</section>
|
||||||
<div id="toolbar">
|
<div id="toolbar">
|
||||||
<form class="col-sm-12" id="searchForm" action="/admin/chargeRecord/dailyexport" method="get"
|
<form class="col-sm-12"
|
||||||
target="_blank">
|
id="searchForm"
|
||||||
|
action="/admin/chargeRecord/dailyexport"
|
||||||
|
method="get"
|
||||||
|
target="_blank">
|
||||||
|
|
||||||
</form>
|
</form>
|
||||||
<div class="col-sm-12 pull-left">
|
<div class="col-sm-12 pull-left">
|
||||||
<h4>
|
<h4>
|
||||||
今日充值数据:<span class="totalAmount" style="color: red">0</span>(总金额)/
|
今日充值数据:<span class="totalAmount"
|
||||||
<span class="totalCount" style="color: red">0</span>(总笔数)
|
style="color: red">0</span>(总金额)/
|
||||||
<span style="color: red">(单位:美元)</span>
|
<span class="totalCount"
|
||||||
</h4>
|
style="color: red">0</span>(总笔数)
|
||||||
</div>
|
<span style="color: red">(单位:美元)</span>
|
||||||
<!-- <div class="col-sm-3 pull-right">
|
</h4>
|
||||||
|
</div>
|
||||||
|
<!-- <div class="col-sm-3 pull-right">
|
||||||
<button id="btnSearch" class="btn btn-default">
|
<button id="btnSearch" class="btn btn-default">
|
||||||
<i class="glyphicon glyphicon-search"></i>查询
|
<i class="glyphicon glyphicon-search"></i>查询
|
||||||
</button>
|
</button>
|
||||||
@@ -26,185 +31,194 @@
|
|||||||
<i class="glyphicon glyphicon-export"></i>导出
|
<i class="glyphicon glyphicon-export"></i>导出
|
||||||
</button>
|
</button>
|
||||||
</div>-->
|
</div>-->
|
||||||
</div>
|
|
||||||
<!-- .content -->
|
|
||||||
<div id="table"></div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</section>
|
<!-- .content -->
|
||||||
|
<div id="table"></div>
|
||||||
|
|
||||||
<div class="modal fade" id="recordDetail" tabindex="-1" role="dialog" aria-labelledby="modalLabel">
|
</div>
|
||||||
<div class="modal-dialog" role="document">
|
|
||||||
<div class="modal-content">
|
|
||||||
<div class="modal-header">
|
|
||||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span
|
|
||||||
aria-hidden="true">×</span>
|
|
||||||
</button>
|
|
||||||
<h4 class="modal-title" id="modalLabel"></h4>
|
|
||||||
</div>
|
|
||||||
<div class="modal-body">
|
|
||||||
<div id="detailtable"></div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<div class="modal fade"
|
||||||
|
id="recordDetail"
|
||||||
|
tabindex="-1"
|
||||||
|
role="dialog"
|
||||||
|
aria-labelledby="modalLabel">
|
||||||
|
<div class="modal-dialog"
|
||||||
|
role="document">
|
||||||
|
<div class="modal-content">
|
||||||
|
<div class="modal-header">
|
||||||
|
<button type="button"
|
||||||
|
class="close"
|
||||||
|
data-dismiss="modal"
|
||||||
|
aria-label="Close"><span aria-hidden="true">×</span>
|
||||||
|
</button>
|
||||||
|
<h4 class="modal-title"
|
||||||
|
id="modalLabel"></h4>
|
||||||
|
</div>
|
||||||
|
<div class="modal-body">
|
||||||
|
<div id="detailtable"></div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import TableHelper from '@/utils/bootstrap-table-helper';
|
import TableHelper from '@/utils/bootstrap-table-helper';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "ChargeRecordDailyStatisticsView",
|
name: "ChargeRecordDailyStatisticsView",
|
||||||
setup() {
|
setup () {
|
||||||
return {};
|
return {};
|
||||||
},
|
},
|
||||||
created() {
|
created () {
|
||||||
this.$nextTick(function () {
|
this.$nextTick(function () {
|
||||||
this.initData();
|
this.initData();
|
||||||
|
});
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
initData () {
|
||||||
|
$(function () {
|
||||||
|
$('#table').bootstrapTable('destroy');
|
||||||
|
$('#table').bootstrapTable({
|
||||||
|
columns: [
|
||||||
|
{ field: 'timeStr', title: '日期', align: 'center', width: '5%' },
|
||||||
|
/*{field: 'wxAmount', title: '微信支付', align: 'center', width: '5%'},
|
||||||
|
{field: 'wxWapAmount', title: '微信H5支付', align: 'center', width: '5%'},
|
||||||
|
{field: 'wxPubAmount', title: '微信公众号', align: 'center', width: '5%'},
|
||||||
|
{field: 'wxMicroMallPubAmount', title: '微商城公众号', align: 'center', width: '5%'},
|
||||||
|
{field: 'wxPub2Amount', title: '平台公众号', align: 'center', width: '5%'},
|
||||||
|
{field: 'wxPub2H5Amount', title: '平台公众号H5支付', align: 'center', width: '5%'},
|
||||||
|
{field: 'alipayAmount', title: '支付宝', align: 'center', width: '5%'},
|
||||||
|
{field: 'alipayWapAmount', title: '支付宝H5', align: 'center', width: '5%'},
|
||||||
|
{field: 'iosPayAmount', title: 'IOS支付', align: 'center', width: '5%'},
|
||||||
|
{field: 'wxMiniAppAmount', title: '小程序支付', align: 'center', width: '5%'},*/
|
||||||
|
{ field: 'googleAmount', title: 'google支付', align: 'center', width: '5%' },
|
||||||
|
{ field: 'payermaxAmount', title: 'payermax支付', align: 'center', width: '5%' },
|
||||||
|
{ field: 'myCardAmount', title: 'MyCard支付', align: 'center', width: '5%' },
|
||||||
|
{ field: 'startPayAmount', title: 'startPay支付', align: 'center', width: '5%' },
|
||||||
|
{ field: 'iosPayAmount', title: 'ios支付', align: 'center', width: '5%' },
|
||||||
|
{ field: 'companyAccount', title: '充值打公账', align: 'center', width: '5%' },
|
||||||
|
{
|
||||||
|
field: 'time',
|
||||||
|
title: '操作',
|
||||||
|
align: 'center',
|
||||||
|
width: '5%',
|
||||||
|
formatter: function (val, row, index) {
|
||||||
|
return '<button id="btnDetail" name="btnDetail" class="btn btn-sm btn-success opt-detail" data-id=' + val + '>' +
|
||||||
|
'<i class="glyphicon glyphicon-edit"></i> 明细</button>';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
undefinedText: 0,
|
||||||
|
cache: false,
|
||||||
|
striped: true,
|
||||||
|
showRefresh: false,
|
||||||
|
pageSize: 20,
|
||||||
|
pagination: true,
|
||||||
|
pageList: [20, 50, 100, 200, 300, 500],
|
||||||
|
search: false,
|
||||||
|
sidePagination: "client", //表示服务端请求
|
||||||
|
queryParamsType: "undefined",
|
||||||
|
queryParams: function queryParams (params) { //设置查询参数
|
||||||
|
var param = {
|
||||||
|
pageNum: params.pageNumber,
|
||||||
|
pageSize: params.pageSize
|
||||||
|
};
|
||||||
|
return param;
|
||||||
|
},
|
||||||
|
toolbar: '#toolbar',
|
||||||
|
url: '/admin/chargeRecord/dailylist',
|
||||||
|
onLoadSuccess: function () { //加载成功时执行
|
||||||
|
console.log("load success");
|
||||||
|
getTotalStatis();
|
||||||
|
},
|
||||||
|
onLoadError: function () { //加载失败时执行
|
||||||
|
console.log("load fail");
|
||||||
|
}
|
||||||
});
|
});
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
initData() {
|
|
||||||
$(function () {
|
|
||||||
$('#table').bootstrapTable('destroy');
|
|
||||||
$('#table').bootstrapTable({
|
|
||||||
columns: [
|
|
||||||
{ field: 'timeStr', title: '日期', align: 'center', width: '5%' },
|
|
||||||
/*{field: 'wxAmount', title: '微信支付', align: 'center', width: '5%'},
|
|
||||||
{field: 'wxWapAmount', title: '微信H5支付', align: 'center', width: '5%'},
|
|
||||||
{field: 'wxPubAmount', title: '微信公众号', align: 'center', width: '5%'},
|
|
||||||
{field: 'wxMicroMallPubAmount', title: '微商城公众号', align: 'center', width: '5%'},
|
|
||||||
{field: 'wxPub2Amount', title: '平台公众号', align: 'center', width: '5%'},
|
|
||||||
{field: 'wxPub2H5Amount', title: '平台公众号H5支付', align: 'center', width: '5%'},
|
|
||||||
{field: 'alipayAmount', title: '支付宝', align: 'center', width: '5%'},
|
|
||||||
{field: 'alipayWapAmount', title: '支付宝H5', align: 'center', width: '5%'},
|
|
||||||
{field: 'iosPayAmount', title: 'IOS支付', align: 'center', width: '5%'},
|
|
||||||
{field: 'wxMiniAppAmount', title: '小程序支付', align: 'center', width: '5%'},*/
|
|
||||||
{ field: 'googleAmount', title: 'google支付', align: 'center', width: '5%' },
|
|
||||||
{ field: 'payermaxAmount', title: 'payermax支付', align: 'center', width: '5%' },
|
|
||||||
{ field: 'myCardAmount', title: 'MyCard支付', align: 'center', width: '5%' },
|
|
||||||
{ field: 'iosPayAmount', title: 'ios支付', align: 'center', width: '5%' },
|
|
||||||
{ field: 'companyAccount', title: '充值打公账', align: 'center', width: '5%' },
|
|
||||||
{
|
|
||||||
field: 'time',
|
|
||||||
title: '操作',
|
|
||||||
align: 'center',
|
|
||||||
width: '5%',
|
|
||||||
formatter: function (val, row, index) {
|
|
||||||
return '<button id="btnDetail" name="btnDetail" class="btn btn-sm btn-success opt-detail" data-id=' + val + '>' +
|
|
||||||
'<i class="glyphicon glyphicon-edit"></i> 明细</button>';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
undefinedText: 0,
|
|
||||||
cache: false,
|
|
||||||
striped: true,
|
|
||||||
showRefresh: false,
|
|
||||||
pageSize: 20,
|
|
||||||
pagination: true,
|
|
||||||
pageList: [20, 50, 100, 200, 300, 500],
|
|
||||||
search: false,
|
|
||||||
sidePagination: "client", //表示服务端请求
|
|
||||||
queryParamsType: "undefined",
|
|
||||||
queryParams: function queryParams(params) { //设置查询参数
|
|
||||||
var param = {
|
|
||||||
pageNum: params.pageNumber,
|
|
||||||
pageSize: params.pageSize
|
|
||||||
};
|
|
||||||
return param;
|
|
||||||
},
|
|
||||||
toolbar: '#toolbar',
|
|
||||||
url: '/admin/chargeRecord/dailylist',
|
|
||||||
onLoadSuccess: function () { //加载成功时执行
|
|
||||||
console.log("load success");
|
|
||||||
getTotalStatis();
|
|
||||||
},
|
|
||||||
onLoadError: function () { //加载失败时执行
|
|
||||||
console.log("load fail");
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
// 导出EXCEL
|
// 导出EXCEL
|
||||||
$('#btnExport').on('click', function () {
|
$('#btnExport').on('click', function () {
|
||||||
$("#searchForm").submit();
|
$("#searchForm").submit();
|
||||||
});
|
});
|
||||||
|
|
||||||
// 查询刷新
|
// 查询刷新
|
||||||
$('#btnSearch').on('click', function () {
|
$('#btnSearch').on('click', function () {
|
||||||
TableHelper.doRefresh('#table');
|
TableHelper.doRefresh('#table');
|
||||||
});
|
});
|
||||||
|
|
||||||
$("#table").on("click", '.opt-detail', function () {
|
$("#table").on("click", '.opt-detail', function () {
|
||||||
|
|
||||||
$("#recordDetail").modal('show');
|
$("#recordDetail").modal('show');
|
||||||
var time = $(this).attr("data-id");
|
var time = $(this).attr("data-id");
|
||||||
|
|
||||||
var date = new Date().format("yyyy-MM-dd ");
|
var date = new Date().format("yyyy-MM-dd ");
|
||||||
$("#modalLabel").html(date + parseTime(time));
|
$("#modalLabel").html(date + parseTime(time));
|
||||||
|
|
||||||
$('#detailtable').bootstrapTable('destroy');
|
$('#detailtable').bootstrapTable('destroy');
|
||||||
$('#detailtable').bootstrapTable({
|
$('#detailtable').bootstrapTable({
|
||||||
columns: [
|
columns: [
|
||||||
{ field: 'channel', title: '渠道', align: 'center', width: '5%' },
|
{ field: 'channel', title: '渠道', align: 'center', width: '5%' },
|
||||||
{ field: 'amount', title: '充值金额', align: 'center', width: '5%' },
|
{ field: 'amount', title: '充值金额', align: 'center', width: '5%' },
|
||||||
{ field: 'count', title: '充值笔数', align: 'center', width: '5%' }
|
{ field: 'count', title: '充值笔数', align: 'center', width: '5%' }
|
||||||
|
|
||||||
],
|
],
|
||||||
undefinedText: 0,
|
undefinedText: 0,
|
||||||
height: 600,
|
height: 600,
|
||||||
cache: false,
|
cache: false,
|
||||||
striped: true,
|
striped: true,
|
||||||
showRefresh: false,
|
showRefresh: false,
|
||||||
pageSize: 20,
|
pageSize: 20,
|
||||||
pagination: false,
|
pagination: false,
|
||||||
pageList: [20, 50, 100, 200, 300, 500],
|
pageList: [20, 50, 100, 200, 300, 500],
|
||||||
search: false,
|
search: false,
|
||||||
sidePagination: "client", //表示服务端请求
|
sidePagination: "client", //表示服务端请求
|
||||||
queryParamsType: "undefined",
|
queryParamsType: "undefined",
|
||||||
queryParams: function queryParams(params) { //设置查询参数
|
queryParams: function queryParams (params) { //设置查询参数
|
||||||
var param = {
|
var param = {
|
||||||
pageNum: params.pageNumber,
|
pageNum: params.pageNumber,
|
||||||
pageSize: params.pageSize,
|
pageSize: params.pageSize,
|
||||||
time: time
|
time: time
|
||||||
};
|
};
|
||||||
return param;
|
return param;
|
||||||
},
|
},
|
||||||
url: '/admin/chargeRecord/dailydetail',
|
url: '/admin/chargeRecord/dailydetail',
|
||||||
onLoadSuccess: function () { //加载成功时执行
|
onLoadSuccess: function () { //加载成功时执行
|
||||||
console.log("load success");
|
console.log("load success");
|
||||||
},
|
},
|
||||||
onLoadError: function () { //加载失败时执行
|
onLoadError: function () { //加载失败时执行
|
||||||
console.log("load fail");
|
console.log("load fail");
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
function parseTime(val) {
|
function parseTime (val) {
|
||||||
if (val < 10) {
|
if (val < 10) {
|
||||||
return '0' + val + ':00-0' + val + ':59';
|
return '0' + val + ':00-0' + val + ':59';
|
||||||
} else {
|
} else {
|
||||||
return val + ':00-' + val + ':59';
|
return val + ':00-' + val + ':59';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
function getTotalStatis() {
|
function getTotalStatis () {
|
||||||
$.get('/admin/chargeRecord/dailytotal', function (res) {
|
$.get('/admin/chargeRecord/dailytotal', function (res) {
|
||||||
if (res.code == 200) {
|
if (res.code == 200) {
|
||||||
console.log(res.data);
|
console.log(res.data);
|
||||||
if (res.data) {
|
if (res.data) {
|
||||||
$('.totalAmount').html(res.data.amount);
|
$('.totalAmount').html(res.data.amount);
|
||||||
$('.totalCount').html(res.data.count);
|
$('.totalCount').html(res.data.count);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
@@ -103,6 +103,7 @@ export default {
|
|||||||
{ field: 'googleUsd', title: 'google充值美元', align: 'center', width: '14%' },
|
{ field: 'googleUsd', title: 'google充值美元', align: 'center', width: '14%' },
|
||||||
{ field: 'payermaxUsd', title: 'payermax充值美元', align: 'center', width: '14%' },
|
{ field: 'payermaxUsd', title: 'payermax充值美元', align: 'center', width: '14%' },
|
||||||
{ field: 'myCardUsd', title: 'myCard充值美元', align: 'center', width: '14%' },
|
{ field: 'myCardUsd', title: 'myCard充值美元', align: 'center', width: '14%' },
|
||||||
|
{ field: 'startPayUsd', title: 'startPay充值美元', align: 'center', width: '14%' },
|
||||||
{ field: 'iosUsd', title: 'ios充值美元', align: 'center', width: '14%' },
|
{ field: 'iosUsd', title: 'ios充值美元', align: 'center', width: '14%' },
|
||||||
{ field: 'companyUsd', title: '对公打款美元', align: 'center', width: '14%' },
|
{ field: 'companyUsd', title: '对公打款美元', align: 'center', width: '14%' },
|
||||||
{ field: 'totalUsd', title: '总充值美元', align: 'center', width: '14%' },
|
{ field: 'totalUsd', title: '总充值美元', align: 'center', width: '14%' },
|
||||||
|
@@ -1,228 +1,250 @@
|
|||||||
<template>
|
<template>
|
||||||
<section class="content">
|
<section class="content">
|
||||||
<div class="box box-primary">
|
<div class="box box-primary">
|
||||||
<div class="box-body">
|
<div class="box-body">
|
||||||
<!-- Content Header (Page header) -->
|
<!-- Content Header (Page header) -->
|
||||||
<section class="content-header">
|
<section class="content-header">
|
||||||
<h1 id="itemTitle"></h1>
|
<h1 id="itemTitle"></h1>
|
||||||
</section>
|
</section>
|
||||||
<div id="toolbar">
|
<div id="toolbar">
|
||||||
<div class="col-sm-12">
|
<div class="col-sm-12">
|
||||||
<div class="pull-left">
|
<div class="pull-left">
|
||||||
<form id="searchForm" class="col-sm-pull-12" action="/admin/chargeRecord/totalexport"
|
<form id="searchForm"
|
||||||
method="get" target="_blank">
|
class="col-sm-pull-12"
|
||||||
<div class="col-sm-11">
|
action="/admin/chargeRecord/totalexport"
|
||||||
<label for="beginDate" class="col-sm-2 control-label">开始日期:</label>
|
method="get"
|
||||||
<div class="col-sm-4"><input type="text" class="form-control" name="beginDate"
|
target="_blank">
|
||||||
id="beginDate" placeholder="必填">
|
<div class="col-sm-11">
|
||||||
</div>
|
<label for="beginDate"
|
||||||
<label for="endDate" class="col-sm-2 control-label">结束日期:</label>
|
class="col-sm-2 control-label">开始日期:</label>
|
||||||
<div class="col-sm-4"><input type="text" class="form-control" name="endDate"
|
<div class="col-sm-4"><input type="text"
|
||||||
id="endDate" placeholder="必填"></div>
|
class="form-control"
|
||||||
|
name="beginDate"
|
||||||
|
id="beginDate"
|
||||||
|
placeholder="必填">
|
||||||
|
</div>
|
||||||
|
<label for="endDate"
|
||||||
|
class="col-sm-2 control-label">结束日期:</label>
|
||||||
|
<div class="col-sm-4"><input type="text"
|
||||||
|
class="form-control"
|
||||||
|
name="endDate"
|
||||||
|
id="endDate"
|
||||||
|
placeholder="必填"></div>
|
||||||
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
<div class="pull-right">
|
|
||||||
|
|
||||||
<button id="btnSearch" class="btn btn-default">
|
|
||||||
<i class="glyphicon glyphicon-search"></i>查询
|
|
||||||
</button>
|
|
||||||
<button id="btnExport" class="btn btn-default">
|
|
||||||
<i class="glyphicon glyphicon-export"></i>导出
|
|
||||||
</button>
|
|
||||||
<span style="color: red">(单位:美元)</span>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
|
</form>
|
||||||
<!-- .content -->
|
|
||||||
<div id="table"></div>
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="pull-right">
|
||||||
</section>
|
|
||||||
|
|
||||||
<div class="modal fade" id="recordDetail" tabindex="-1" role="dialog" aria-labelledby="modalLabel">
|
|
||||||
<div class="modal-dialog" role="document">
|
|
||||||
<div class="modal-content">
|
|
||||||
<div class="modal-header">
|
|
||||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span
|
|
||||||
aria-hidden="true">×</span>
|
|
||||||
</button>
|
|
||||||
<h4 class="modal-title" id="modalLabel"></h4>
|
|
||||||
</div>
|
|
||||||
<div class="modal-body">
|
|
||||||
<div id="detailtable"></div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
<button id="btnSearch"
|
||||||
|
class="btn btn-default">
|
||||||
|
<i class="glyphicon glyphicon-search"></i>查询
|
||||||
|
</button>
|
||||||
|
<button id="btnExport"
|
||||||
|
class="btn btn-default">
|
||||||
|
<i class="glyphicon glyphicon-export"></i>导出
|
||||||
|
</button>
|
||||||
|
<span style="color: red">(单位:美元)</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<!-- .content -->
|
||||||
|
<div id="table"></div>
|
||||||
|
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<div class="modal fade"
|
||||||
|
id="recordDetail"
|
||||||
|
tabindex="-1"
|
||||||
|
role="dialog"
|
||||||
|
aria-labelledby="modalLabel">
|
||||||
|
<div class="modal-dialog"
|
||||||
|
role="document">
|
||||||
|
<div class="modal-content">
|
||||||
|
<div class="modal-header">
|
||||||
|
<button type="button"
|
||||||
|
class="close"
|
||||||
|
data-dismiss="modal"
|
||||||
|
aria-label="Close"><span aria-hidden="true">×</span>
|
||||||
|
</button>
|
||||||
|
<h4 class="modal-title"
|
||||||
|
id="modalLabel"></h4>
|
||||||
|
</div>
|
||||||
|
<div class="modal-body">
|
||||||
|
<div id="detailtable"></div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import TableHelper from '@/utils/bootstrap-table-helper';
|
import TableHelper from '@/utils/bootstrap-table-helper';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "ChargeRecordTotalStatisticsView",
|
name: "ChargeRecordTotalStatisticsView",
|
||||||
setup() {
|
setup () {
|
||||||
return {};
|
return {};
|
||||||
},
|
},
|
||||||
created() {
|
created () {
|
||||||
this.$nextTick(function () {
|
this.$nextTick(function () {
|
||||||
this.initData();
|
this.initData();
|
||||||
|
});
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
initData () {
|
||||||
|
$(function () {
|
||||||
|
$('#table').bootstrapTable('destroy');
|
||||||
|
$('#table').bootstrapTable({
|
||||||
|
columns: [
|
||||||
|
{ field: 'timeStr', title: '日期', align: 'center', width: '5%' },
|
||||||
|
/*{field: 'wxAmount', title: '微信支付', align: 'center', width: '5%'},
|
||||||
|
{field: 'wxWapAmount', title: '微信H5支付', align: 'center', width: '5%'},
|
||||||
|
{field: 'wxPubAmount', title: '微信公众号', align: 'center', width: '5%'},
|
||||||
|
{field: 'alipayAmount', title: '支付宝', align: 'center', width: '5%'},
|
||||||
|
{field: 'alipayV2Amount', title: '支付宝V2', align: 'center', width: '5%'},
|
||||||
|
{field: 'wxMicroMallPubAmount', title: '微商城公众号', align: 'center', width: '5%'},
|
||||||
|
{field: 'wxPub2Amount', title: '平台公众号', align: 'center', width: '5%'},
|
||||||
|
{field: 'wxPub2H5Amount', title: '平台公众号H5支付', align: 'center', width: '5%'},
|
||||||
|
{field: 'alipayWapAmount', title: '支付宝H5', align: 'center', width: '5%'},
|
||||||
|
{field: 'iosPayAmount', title: 'IOS支付', align: 'center', width: '5%'},
|
||||||
|
{field: 'wxMiniAppAmount', title: '小程序支付', align: 'center', width: '5%'},*/
|
||||||
|
{ field: 'googleAmount', title: 'google支付', align: 'center', width: '5%' },
|
||||||
|
{ field: 'payermaxAmount', title: 'payermax支付', align: 'center', width: '5%' },
|
||||||
|
{ field: 'myCardAmount', title: 'myCard支付', align: 'center', width: '5%' },
|
||||||
|
{ field: 'startPayAmount', title: 'startPay支付', align: 'center', width: '5%' },
|
||||||
|
{ field: 'iosPayAmount', title: 'ios支付', align: 'center', width: '5%' },
|
||||||
|
{ field: 'companyAccount', title: '充值打公账', align: 'center', width: '5%' },
|
||||||
|
{ field: 'totalAmount', title: '总计充值金额数', align: 'center', width: '5%' },
|
||||||
|
{
|
||||||
|
field: 'timeStr',
|
||||||
|
title: '操作',
|
||||||
|
align: 'center',
|
||||||
|
width: '5%',
|
||||||
|
formatter: function (val, row, index) {
|
||||||
|
return '<button id="btnDetail" name="btnDetail" class="btn btn-sm btn-success opt-detail" data-id=' + val + '>' +
|
||||||
|
'<i class="glyphicon glyphicon-edit"></i> 明细</button>';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
undefinedText: 0,
|
||||||
|
cache: false,
|
||||||
|
striped: true,
|
||||||
|
showRefresh: false,
|
||||||
|
pageSize: 20,
|
||||||
|
pagination: true,
|
||||||
|
pageList: [20, 50, 100, 200, 300, 500],
|
||||||
|
search: false,
|
||||||
|
sidePagination: "server", //表示服务端请求
|
||||||
|
queryParamsType: "undefined",
|
||||||
|
queryParams: function queryParams (params) { //设置查询参数
|
||||||
|
var param = {
|
||||||
|
pageNum: params.pageNumber,
|
||||||
|
pageSize: params.pageSize,
|
||||||
|
beginDate: $('#beginDate').val(),
|
||||||
|
endDate: $('#endDate').val()
|
||||||
|
};
|
||||||
|
return param;
|
||||||
|
},
|
||||||
|
toolbar: '#toolbar',
|
||||||
|
url: '/admin/chargeRecord/totallist',
|
||||||
|
onLoadSuccess: function () { //加载成功时执行
|
||||||
|
console.log("load success");
|
||||||
|
},
|
||||||
|
onLoadError: function () { //加载失败时执行
|
||||||
|
console.log("load fail");
|
||||||
|
}
|
||||||
});
|
});
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
initData() {
|
|
||||||
$(function () {
|
|
||||||
$('#table').bootstrapTable('destroy');
|
|
||||||
$('#table').bootstrapTable({
|
|
||||||
columns: [
|
|
||||||
{ field: 'timeStr', title: '日期', align: 'center', width: '5%' },
|
|
||||||
/*{field: 'wxAmount', title: '微信支付', align: 'center', width: '5%'},
|
|
||||||
{field: 'wxWapAmount', title: '微信H5支付', align: 'center', width: '5%'},
|
|
||||||
{field: 'wxPubAmount', title: '微信公众号', align: 'center', width: '5%'},
|
|
||||||
{field: 'alipayAmount', title: '支付宝', align: 'center', width: '5%'},
|
|
||||||
{field: 'alipayV2Amount', title: '支付宝V2', align: 'center', width: '5%'},
|
|
||||||
{field: 'wxMicroMallPubAmount', title: '微商城公众号', align: 'center', width: '5%'},
|
|
||||||
{field: 'wxPub2Amount', title: '平台公众号', align: 'center', width: '5%'},
|
|
||||||
{field: 'wxPub2H5Amount', title: '平台公众号H5支付', align: 'center', width: '5%'},
|
|
||||||
{field: 'alipayWapAmount', title: '支付宝H5', align: 'center', width: '5%'},
|
|
||||||
{field: 'iosPayAmount', title: 'IOS支付', align: 'center', width: '5%'},
|
|
||||||
{field: 'wxMiniAppAmount', title: '小程序支付', align: 'center', width: '5%'},*/
|
|
||||||
{ field: 'googleAmount', title: 'google支付', align: 'center', width: '5%' },
|
|
||||||
{ field: 'payermaxAmount', title: 'payermax支付', align: 'center', width: '5%' },
|
|
||||||
{ field: 'myCardAmount', title: 'myCard支付', align: 'center', width: '5%' },
|
|
||||||
{ field: 'iosPayAmount', title: 'ios支付', align: 'center', width: '5%' },
|
|
||||||
{ field: 'companyAccount', title: '充值打公账', align: 'center', width: '5%' },
|
|
||||||
{ field: 'totalAmount', title: '总计充值金额数', align: 'center', width: '5%' },
|
|
||||||
{
|
|
||||||
field: 'timeStr',
|
|
||||||
title: '操作',
|
|
||||||
align: 'center',
|
|
||||||
width: '5%',
|
|
||||||
formatter: function (val, row, index) {
|
|
||||||
return '<button id="btnDetail" name="btnDetail" class="btn btn-sm btn-success opt-detail" data-id=' + val + '>' +
|
|
||||||
'<i class="glyphicon glyphicon-edit"></i> 明细</button>';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
undefinedText: 0,
|
|
||||||
cache: false,
|
|
||||||
striped: true,
|
|
||||||
showRefresh: false,
|
|
||||||
pageSize: 20,
|
|
||||||
pagination: true,
|
|
||||||
pageList: [20, 50, 100, 200, 300, 500],
|
|
||||||
search: false,
|
|
||||||
sidePagination: "server", //表示服务端请求
|
|
||||||
queryParamsType: "undefined",
|
|
||||||
queryParams: function queryParams(params) { //设置查询参数
|
|
||||||
var param = {
|
|
||||||
pageNum: params.pageNumber,
|
|
||||||
pageSize: params.pageSize,
|
|
||||||
beginDate: $('#beginDate').val(),
|
|
||||||
endDate: $('#endDate').val()
|
|
||||||
};
|
|
||||||
return param;
|
|
||||||
},
|
|
||||||
toolbar: '#toolbar',
|
|
||||||
url: '/admin/chargeRecord/totallist',
|
|
||||||
onLoadSuccess: function () { //加载成功时执行
|
|
||||||
console.log("load success");
|
|
||||||
},
|
|
||||||
onLoadError: function () { //加载失败时执行
|
|
||||||
console.log("load fail");
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
// 导出EXCEL
|
// 导出EXCEL
|
||||||
$('#btnExport').on('click', function () {
|
$('#btnExport').on('click', function () {
|
||||||
if (!$('#beginDate').val() || !$('#endDate').val()) {
|
if (!$('#beginDate').val() || !$('#endDate').val()) {
|
||||||
$("#tipMsg").text("请输入必填的信息");
|
$("#tipMsg").text("请输入必填的信息");
|
||||||
$("#tipModal").modal('show');
|
$("#tipModal").modal('show');
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
$("#searchForm").submit();
|
$("#searchForm").submit();
|
||||||
});
|
});
|
||||||
|
|
||||||
// 查询刷新
|
// 查询刷新
|
||||||
$('#btnSearch').on('click', function () {
|
$('#btnSearch').on('click', function () {
|
||||||
if (!$('#beginDate').val() || !$('#endDate').val()) {
|
if (!$('#beginDate').val() || !$('#endDate').val()) {
|
||||||
$("#tipMsg").text("请输入必填的信息");
|
$("#tipMsg").text("请输入必填的信息");
|
||||||
$("#tipModal").modal('show');
|
$("#tipModal").modal('show');
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
TableHelper.doRefresh('#table');
|
TableHelper.doRefresh('#table');
|
||||||
});
|
});
|
||||||
var chargeStart = $('#beginDate').datepicker({
|
var chargeStart = $('#beginDate').datepicker({
|
||||||
format: 'yyyy-mm-dd',
|
format: 'yyyy-mm-dd',
|
||||||
autoclose: true
|
autoclose: true
|
||||||
});
|
});
|
||||||
|
|
||||||
var chargeEnd = $('#endDate').datepicker({
|
var chargeEnd = $('#endDate').datepicker({
|
||||||
format: 'yyyy-mm-dd',
|
format: 'yyyy-mm-dd',
|
||||||
autoclose: true
|
autoclose: true
|
||||||
});
|
});
|
||||||
chargeStart.on('changeDate', function () {
|
chargeStart.on('changeDate', function () {
|
||||||
var date = $('#beginDate').datepicker('getDate');
|
var date = $('#beginDate').datepicker('getDate');
|
||||||
chargeEnd.datepicker('setStartDate', date);
|
chargeEnd.datepicker('setStartDate', date);
|
||||||
});
|
});
|
||||||
chargeEnd.on('changeDate', function () {
|
chargeEnd.on('changeDate', function () {
|
||||||
var date = $('#endDate').datepicker('getDate');
|
var date = $('#endDate').datepicker('getDate');
|
||||||
chargeStart.datepicker('setEndDate', date);
|
chargeStart.datepicker('setEndDate', date);
|
||||||
});
|
});
|
||||||
|
|
||||||
$("#table").on("click", '.opt-detail', function () {
|
$("#table").on("click", '.opt-detail', function () {
|
||||||
|
|
||||||
$("#recordDetail").modal('show');
|
$("#recordDetail").modal('show');
|
||||||
var time = $(this).attr("data-id");
|
var time = $(this).attr("data-id");
|
||||||
|
|
||||||
$("#modalLabel").html(time);
|
$("#modalLabel").html(time);
|
||||||
|
|
||||||
$('#detailtable').bootstrapTable('destroy');
|
$('#detailtable').bootstrapTable('destroy');
|
||||||
$('#detailtable').bootstrapTable({
|
$('#detailtable').bootstrapTable({
|
||||||
columns: [
|
columns: [
|
||||||
{ field: 'channel', title: '渠道', align: 'center', width: '5%' },
|
{ field: 'channel', title: '渠道', align: 'center', width: '5%' },
|
||||||
{ field: 'amount', title: '充值金额', align: 'center', width: '5%' },
|
{ field: 'amount', title: '充值金额', align: 'center', width: '5%' },
|
||||||
{ field: 'count', title: '充值笔数', align: 'center', width: '5%' }
|
{ field: 'count', title: '充值笔数', align: 'center', width: '5%' }
|
||||||
|
|
||||||
],
|
],
|
||||||
undefinedText: 0,
|
undefinedText: 0,
|
||||||
height: 600,
|
height: 600,
|
||||||
cache: false,
|
cache: false,
|
||||||
striped: true,
|
striped: true,
|
||||||
showRefresh: false,
|
showRefresh: false,
|
||||||
pageSize: 20,
|
pageSize: 20,
|
||||||
pagination: false,
|
pagination: false,
|
||||||
pageList: [20, 50, 100, 200, 300, 500],
|
pageList: [20, 50, 100, 200, 300, 500],
|
||||||
search: false,
|
search: false,
|
||||||
sidePagination: "client", //表示服务端请求
|
sidePagination: "client", //表示服务端请求
|
||||||
queryParamsType: "undefined",
|
queryParamsType: "undefined",
|
||||||
queryParams: function queryParams(params) { //设置查询参数
|
queryParams: function queryParams (params) { //设置查询参数
|
||||||
var param = {
|
var param = {
|
||||||
pageNum: params.pageNumber,
|
pageNum: params.pageNumber,
|
||||||
pageSize: params.pageSize,
|
pageSize: params.pageSize,
|
||||||
time: time
|
time: time
|
||||||
};
|
};
|
||||||
return param;
|
return param;
|
||||||
},
|
},
|
||||||
url: '/admin/chargeRecord/totaldetail',
|
url: '/admin/chargeRecord/totaldetail',
|
||||||
onLoadSuccess: function () { //加载成功时执行
|
onLoadSuccess: function () { //加载成功时执行
|
||||||
console.log("load success");
|
console.log("load success");
|
||||||
},
|
},
|
||||||
onLoadError: function () { //加载失败时执行
|
onLoadError: function () { //加载失败时执行
|
||||||
console.log("load fail");
|
console.log("load fail");
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
@@ -103,6 +103,7 @@ export default {
|
|||||||
{ field: 'googleUsd', title: 'google充值美元', align: 'center', width: '14%' },
|
{ field: 'googleUsd', title: 'google充值美元', align: 'center', width: '14%' },
|
||||||
{ field: 'payermaxUsd', title: 'payermax充值美元', align: 'center', width: '14%' },
|
{ field: 'payermaxUsd', title: 'payermax充值美元', align: 'center', width: '14%' },
|
||||||
{ field: 'myCardUsd', title: 'myCard充值美元', align: 'center', width: '14%' },
|
{ field: 'myCardUsd', title: 'myCard充值美元', align: 'center', width: '14%' },
|
||||||
|
{ field: 'startPayUsd', title: 'startPay充值美元', align: 'center', width: '14%' },
|
||||||
{ field: 'iosUsd', title: 'ios充值美元', align: 'center', width: '14%' },
|
{ field: 'iosUsd', title: 'ios充值美元', align: 'center', width: '14%' },
|
||||||
{ field: 'companyUsd', title: '对公打款美元', align: 'center', width: '14%' },
|
{ field: 'companyUsd', title: '对公打款美元', align: 'center', width: '14%' },
|
||||||
{ field: 'totalUsd', title: '总充值美元', align: 'center', width: '14%' },
|
{ field: 'totalUsd', title: '总充值美元', align: 'center', width: '14%' },
|
||||||
|
@@ -66,6 +66,9 @@
|
|||||||
<option value="15">线性福袋礼物</option>
|
<option value="15">线性福袋礼物</option>
|
||||||
<option value="16">超级幸运礼物</option>
|
<option value="16">超级幸运礼物</option>
|
||||||
<option value="17">国家礼物</option>
|
<option value="17">国家礼物</option>
|
||||||
|
<option value="18">幸运礼物</option>
|
||||||
|
<option value="19">CP礼物</option>
|
||||||
|
<option value="20">定制礼物</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<label for="partitionId" class="col-sm-1 control-label">地区:</label>
|
<label for="partitionId" class="col-sm-1 control-label">地区:</label>
|
||||||
@@ -208,6 +211,9 @@
|
|||||||
<option value="15">线性福袋礼物</option>
|
<option value="15">线性福袋礼物</option>
|
||||||
<option value="16">超级幸运礼物</option>
|
<option value="16">超级幸运礼物</option>
|
||||||
<option value="17">国家礼物</option>
|
<option value="17">国家礼物</option>
|
||||||
|
<option value="18">幸运礼物</option>
|
||||||
|
<option value="19">CP礼物</option>
|
||||||
|
<option value="20">定制礼物</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@@ -91,6 +91,24 @@
|
|||||||
</el-select>
|
</el-select>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<!-- 赠送天数 -->
|
||||||
|
<div style="margin-bottom: 25px; margin-top: 10px">
|
||||||
|
<span
|
||||||
|
style="display: inline-block; margin-right: 20px"
|
||||||
|
class="col-sm-2 control-label"
|
||||||
|
>赠送天数</span
|
||||||
|
>
|
||||||
|
<el-select v-model="editObj.value2" placeholder="请选择">
|
||||||
|
<el-option
|
||||||
|
v-for="item in editObj.options2"
|
||||||
|
:key="item.day"
|
||||||
|
:label="item.dayName"
|
||||||
|
:value="item.day"
|
||||||
|
>
|
||||||
|
</el-option>
|
||||||
|
</el-select>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<!-- 用户昵称 -->
|
<!-- 用户昵称 -->
|
||||||
<div style="margin-bottom: 25px; margin-top: 10px">
|
<div style="margin-bottom: 25px; margin-top: 10px">
|
||||||
@@ -183,6 +201,33 @@ export default {
|
|||||||
userId: "",
|
userId: "",
|
||||||
value: "",
|
value: "",
|
||||||
options: [],
|
options: [],
|
||||||
|
value2: "",
|
||||||
|
options2: [
|
||||||
|
{
|
||||||
|
dayName: "1天",
|
||||||
|
day: 1,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
dayName: "3天",
|
||||||
|
day: 3,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
dayName: "5天",
|
||||||
|
day: 5,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
dayName: "7天",
|
||||||
|
day: 7,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
dayName: "15天",
|
||||||
|
day: 15,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
dayName: "30天",
|
||||||
|
day: 30,
|
||||||
|
},
|
||||||
|
],
|
||||||
nick: "",
|
nick: "",
|
||||||
time: "",
|
time: "",
|
||||||
region: "",
|
region: "",
|
||||||
@@ -248,6 +293,7 @@ export default {
|
|||||||
vipSendSend({
|
vipSendSend({
|
||||||
uid: this.editObj.uid,
|
uid: this.editObj.uid,
|
||||||
vipLevel: this.editObj.value,
|
vipLevel: this.editObj.value,
|
||||||
|
days: this.editObj.value2,
|
||||||
}).then((res) => {
|
}).then((res) => {
|
||||||
if (res.code == 200) {
|
if (res.code == 200) {
|
||||||
this.getData();
|
this.getData();
|
||||||
|
Reference in New Issue
Block a user