This commit is contained in:
张良(004796)
2024-03-04 18:57:53 +08:00
commit ca842d24f3
491 changed files with 53313 additions and 0 deletions

View File

@@ -0,0 +1,401 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="用户ID" prop="userId">
<el-input
v-model="queryParams.userId"
placeholder="请输入用户ID"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="用户号" prop="usercode">
<el-input
v-model="queryParams.usercode"
placeholder="请输入用户号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="目标用户ID" prop="tarUserId">
<el-input
v-model="queryParams.tarUserId"
placeholder="请输入目标用户ID"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="目标用户基本信息备份" prop="tarJson">
<el-input
v-model="queryParams.tarJson"
placeholder="请输入目标用户基本信息备份"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="类别CODE" prop="cateId">
<el-input
v-model="queryParams.cateId"
placeholder="请输入类别CODE"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="变化编号" prop="changeValue">
<el-input
v-model="queryParams.changeValue"
placeholder="请输入变化编号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="变化值,为正 或者为负" prop="traceId">
<el-input
v-model="queryParams.traceId"
placeholder="请输入变化值,为正 或者为负"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="是否为后台用户手动调整" prop="isAdmin">
<el-input
v-model="queryParams.isAdmin"
placeholder="请输入是否为后台用户手动调整"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['xq:accountChangeLog:add']"
>新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="success"
plain
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['xq:accountChangeLog:edit']"
>修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['xq:accountChangeLog:remove']"
>删除</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['xq:accountChangeLog:export']"
>导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="accountChangeLogList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="" align="center" prop="id" v-if="true"/>
<el-table-column label="用户ID" align="center" prop="userId" />
<el-table-column label="用户号" align="center" prop="usercode" />
<el-table-column label="账户类型 1-余额 2-收益" align="center" prop="accountType" />
<el-table-column label="目标用户ID" align="center" prop="tarUserId" />
<el-table-column label="目标用户基本信息备份" align="center" prop="tarJson" />
<el-table-column label="类别CODE" align="center" prop="cateId" />
<el-table-column label="变化编号" align="center" prop="changeType" />
<el-table-column label="变化编号" align="center" prop="changeValue" />
<el-table-column label="变化值,为正 或者为负" align="center" prop="traceId" />
<el-table-column label="是否为后台用户手动调整" align="center" prop="isAdmin" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['xq:accountChangeLog:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['xq:accountChangeLog:remove']"
>删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改账户明细对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="用户ID" prop="userId">
<el-input v-model="form.userId" placeholder="请输入用户ID" />
</el-form-item>
<el-form-item label="用户号" prop="usercode">
<el-input v-model="form.usercode" placeholder="请输入用户号" />
</el-form-item>
<el-form-item label="目标用户ID" prop="tarUserId">
<el-input v-model="form.tarUserId" placeholder="请输入目标用户ID" />
</el-form-item>
<el-form-item label="目标用户基本信息备份" prop="tarJson">
<el-input v-model="form.tarJson" type="textarea" placeholder="请输入内容" />
</el-form-item>
<el-form-item label="类别CODE" prop="cateId">
<el-input v-model="form.cateId" placeholder="请输入类别CODE" />
</el-form-item>
<el-form-item label="变化编号" prop="changeValue">
<el-input v-model="form.changeValue" placeholder="请输入变化编号" />
</el-form-item>
<el-form-item label="变化值,为正 或者为负" prop="traceId">
<el-input v-model="form.traceId" placeholder="请输入变化值,为正 或者为负" />
</el-form-item>
<el-form-item label="是否为后台用户手动调整" prop="isAdmin">
<el-input v-model="form.isAdmin" placeholder="请输入是否为后台用户手动调整" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button :loading="buttonLoading" type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { listAccountChangeLog, getAccountChangeLog, delAccountChangeLog, addAccountChangeLog, updateAccountChangeLog } from "@/api/xq/accountChangeLog";
export default {
name: "AccountChangeLog",
data() {
return {
// 按钮loading
buttonLoading: false,
// 遮罩层
loading: true,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 账户明细表格数据
accountChangeLogList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
userId: undefined,
usercode: undefined,
accountType: undefined,
tarUserId: undefined,
tarJson: undefined,
cateId: undefined,
changeType: undefined,
changeValue: undefined,
traceId: undefined,
isAdmin: undefined,
},
// 表单参数
form: {},
// 表单校验
rules: {
id: [
{ required: true, message: "不能为空", trigger: "blur" }
],
userId: [
{ required: true, message: "用户ID不能为空", trigger: "blur" }
],
usercode: [
{ required: true, message: "用户号不能为空", trigger: "blur" }
],
accountType: [
{ required: true, message: "账户类型 1-余额 2-收益不能为空", trigger: "change" }
],
tarUserId: [
{ required: true, message: "目标用户ID不能为空", trigger: "blur" }
],
tarJson: [
{ required: true, message: "目标用户基本信息备份不能为空", trigger: "blur" }
],
cateId: [
{ required: true, message: "类别CODE不能为空", trigger: "blur" }
],
changeType: [
{ required: true, message: "变化编号不能为空", trigger: "change" }
],
changeValue: [
{ required: true, message: "变化编号不能为空", trigger: "blur" }
],
traceId: [
{ required: true, message: "变化值,为正 或者为负不能为空", trigger: "blur" }
],
isAdmin: [
{ required: true, message: "是否为后台用户手动调整不能为空", trigger: "blur" }
],
createTime: [
{ required: true, message: "创建时间不能为空", trigger: "blur" }
],
}
};
},
created() {
this.getList();
},
methods: {
/** 查询账户明细列表 */
getList() {
this.loading = true;
listAccountChangeLog(this.queryParams).then(response => {
this.accountChangeLogList = response.rows;
this.total = response.total;
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
id: undefined,
userId: undefined,
usercode: undefined,
accountType: undefined,
tarUserId: undefined,
tarJson: undefined,
cateId: undefined,
changeType: undefined,
changeValue: undefined,
traceId: undefined,
isAdmin: undefined,
createTime: undefined,
updateTime: undefined
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map(item => item.id)
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加账户明细";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.loading = true;
this.reset();
const id = row.id || this.ids
getAccountChangeLog(id).then(response => {
this.loading = false;
this.form = response.data;
this.open = true;
this.title = "修改账户明细";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
this.buttonLoading = true;
if (this.form.id != null) {
updateAccountChangeLog(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
} else {
addAccountChangeLog(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal.confirm('是否确认删除账户明细编号为"' + ids + '"的数据项?').then(() => {
this.loading = true;
return delAccountChangeLog(ids);
}).then(() => {
this.loading = false;
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {
}).finally(() => {
this.loading = false;
});
},
/** 导出按钮操作 */
handleExport() {
this.download('xq/accountChangeLog/export', {
...this.queryParams
}, `accountChangeLog_${new Date().getTime()}.xlsx`)
}
}
};
</script>

View File

@@ -0,0 +1,299 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="用户协议" prop="userAgreement">
<el-input
v-model="queryParams.userAgreement"
placeholder="请输入用户协议"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="主播入驻协议" prop="anchorJoinAgreement">
<el-input
v-model="queryParams.anchorJoinAgreement"
placeholder="请输入主播入驻协议"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="隐私协议" prop="privacyAgreement">
<el-input
v-model="queryParams.privacyAgreement"
placeholder="请输入隐私协议"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['xq:agreementSetting:add']"
>新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="success"
plain
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['xq:agreementSetting:edit']"
>修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['xq:agreementSetting:remove']"
>删除</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['xq:agreementSetting:export']"
>导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="agreementSettingList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="ID" align="center" prop="id" v-if="true"/>
<el-table-column label="用户协议" align="center" prop="userAgreement" />
<el-table-column label="主播入驻协议" align="center" prop="anchorJoinAgreement" />
<el-table-column label="隐私协议" align="center" prop="privacyAgreement" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['xq:agreementSetting:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['xq:agreementSetting:remove']"
>删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改协议设置对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="用户协议" prop="userAgreement">
<el-input v-model="form.userAgreement" type="textarea" placeholder="请输入内容" />
</el-form-item>
<el-form-item label="主播入驻协议" prop="anchorJoinAgreement">
<el-input v-model="form.anchorJoinAgreement" type="textarea" placeholder="请输入内容" />
</el-form-item>
<el-form-item label="隐私协议" prop="privacyAgreement">
<el-input v-model="form.privacyAgreement" type="textarea" placeholder="请输入内容" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button :loading="buttonLoading" type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { listAgreementSetting, getAgreementSetting, delAgreementSetting, addAgreementSetting, updateAgreementSetting } from "@/api/xq/agreementSetting";
export default {
name: "AgreementSetting",
data() {
return {
// 按钮loading
buttonLoading: false,
// 遮罩层
loading: true,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 协议设置表格数据
agreementSettingList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
userAgreement: undefined,
anchorJoinAgreement: undefined,
privacyAgreement: undefined
},
// 表单参数
form: {},
// 表单校验
rules: {
id: [
{ required: true, message: "ID不能为空", trigger: "blur" }
],
userAgreement: [
{ required: true, message: "用户协议不能为空", trigger: "blur" }
],
anchorJoinAgreement: [
{ required: true, message: "主播入驻协议不能为空", trigger: "blur" }
],
privacyAgreement: [
{ required: true, message: "隐私协议不能为空", trigger: "blur" }
]
}
};
},
created() {
this.getList();
},
methods: {
/** 查询协议设置列表 */
getList() {
this.loading = true;
listAgreementSetting(this.queryParams).then(response => {
this.agreementSettingList = response.rows;
this.total = response.total;
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
id: undefined,
userAgreement: undefined,
anchorJoinAgreement: undefined,
privacyAgreement: undefined
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map(item => item.id)
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加协议设置";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.loading = true;
this.reset();
const id = row.id || this.ids
getAgreementSetting(id).then(response => {
this.loading = false;
this.form = response.data;
this.open = true;
this.title = "修改协议设置";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
this.buttonLoading = true;
if (this.form.id != null) {
updateAgreementSetting(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
} else {
addAgreementSetting(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal.confirm('是否确认删除协议设置编号为"' + ids + '"的数据项?').then(() => {
this.loading = true;
return delAgreementSetting(ids);
}).then(() => {
this.loading = false;
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {
}).finally(() => {
this.loading = false;
});
},
/** 导出按钮操作 */
handleExport() {
this.download('xq/agreementSetting/export', {
...this.queryParams
}, `agreementSetting_${new Date().getTime()}.xlsx`)
}
}
};
</script>

View File

@@ -0,0 +1,276 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="轮播" prop="banner">
<el-input
v-model="queryParams.banner"
placeholder="请输入轮播"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['xq:banner:add']"
>新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="success"
plain
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['xq:banner:edit']"
>修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['xq:banner:remove']"
>删除</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['xq:banner:export']"
>导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="bannerList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="" align="center" prop="id" v-if="true"/>
<el-table-column label="轮播" align="center" prop="banner" />
<el-table-column label="1-启用 0-禁用" align="center" prop="enableStatus" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['xq:banner:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['xq:banner:remove']"
>删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改轮播图对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="轮播" prop="banner">
<el-input v-model="form.banner" placeholder="请输入轮播" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button :loading="buttonLoading" type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { listBanner, getBanner, delBanner, addBanner, updateBanner } from "@/api/xq/banner";
export default {
name: "Banner",
data() {
return {
// 按钮loading
buttonLoading: false,
// 遮罩层
loading: true,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 轮播图表格数据
bannerList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
banner: undefined,
enableStatus: undefined,
},
// 表单参数
form: {},
// 表单校验
rules: {
id: [
{ required: true, message: "不能为空", trigger: "blur" }
],
banner: [
{ required: true, message: "轮播不能为空", trigger: "blur" }
],
enableStatus: [
{ required: true, message: "1-启用 0-禁用不能为空", trigger: "change" }
],
createTime: [
{ required: true, message: "创建时间不能为空", trigger: "blur" }
],
}
};
},
created() {
this.getList();
},
methods: {
/** 查询轮播图列表 */
getList() {
this.loading = true;
listBanner(this.queryParams).then(response => {
this.bannerList = response.rows;
this.total = response.total;
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
id: undefined,
banner: undefined,
enableStatus: undefined,
createTime: undefined,
updateTime: undefined
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map(item => item.id)
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加轮播图";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.loading = true;
this.reset();
const id = row.id || this.ids
getBanner(id).then(response => {
this.loading = false;
this.form = response.data;
this.open = true;
this.title = "修改轮播图";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
this.buttonLoading = true;
if (this.form.id != null) {
updateBanner(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
} else {
addBanner(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal.confirm('是否确认删除轮播图编号为"' + ids + '"的数据项?').then(() => {
this.loading = true;
return delBanner(ids);
}).then(() => {
this.loading = false;
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {
}).finally(() => {
this.loading = false;
});
},
/** 导出按钮操作 */
handleExport() {
this.download('xq/banner/export', {
...this.queryParams
}, `banner_${new Date().getTime()}.xlsx`)
}
}
};
</script>

View File

@@ -0,0 +1,116 @@
<template>
<div class="app-container">
<el-row :gutter="10" class="mb8">
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="configList" >
<el-table-column label="名称" align="center" prop="desc" />
<el-table-column label="数值" align="center" prop="value" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" fixed="right">
<template v-slot="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
v-hasPermi="['xq:businessConfig:edit']"
@click="handleUpdate(scope.row)"
>修改</el-button>
</template>
</el-table-column>
</el-table>
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="名称" prop="desc">
<el-input v-model="form.desc" placeholder="请输入" disabled/>
</el-form-item>
<el-form-item label="数值" prop="value">
<el-input v-model="form.value" placeholder="请输入数值" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button :loading="buttonLoading" type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import {listBusinessConfigList, updateBusinessConfig } from "@/api/xq/systemConfig";
export default {
name: "Banner",
components: {
},
data() {
return {
// 遮罩层
buttonLoading: false,
loading: true,
// 显示搜索条件
showSearch: true,
queryParams:{},
form:{},
// 轮播表格数据
configList: [],
title: "",
open: false,
rules:[]
};
},
created() {
this.getList();
},
methods: {
/** 查询轮播列表 */
getList() {
this.loading = true;
listBusinessConfigList().then(response => {
this.configList = response.data;
}).finally(()=>{
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
reset() {
this.form = {
key: undefined,
desc: undefined,
value: undefined
};
this.resetForm("form");
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
this.form = {
key: row.key,
desc: row.desc,
value: row.value
};
this.open = true;
this.title = "修改业务设置";
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
this.buttonLoading = true;
updateBusinessConfig(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
}
});
},
}
};
</script>

View File

@@ -0,0 +1,469 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="用户ID" prop="userId">
<el-input
v-model="queryParams.userId"
placeholder="请输入用户ID"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="用户号" prop="usercode">
<el-input
v-model="queryParams.usercode"
placeholder="请输入用户号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="城市ID" prop="cityId">
<el-input
v-model="queryParams.cityId"
placeholder="请输入城市ID"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="城市" prop="city">
<el-input
v-model="queryParams.city"
placeholder="请输入城市"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="是否有附件 0 没有 1 有" prop="isAttach">
<el-input
v-model="queryParams.isAttach"
placeholder="请输入是否有附件 0 没有 1 有"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="审核备注" prop="auditRemark">
<el-input
v-model="queryParams.auditRemark"
placeholder="请输入审核备注"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="审核时间" prop="auditTime">
<el-date-picker clearable
v-model="queryParams.auditTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择审核时间">
</el-date-picker>
</el-form-item>
<el-form-item label="审核人ID" prop="auditOpId">
<el-input
v-model="queryParams.auditOpId"
placeholder="请输入审核人ID"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="审核人名称" prop="auditOpName">
<el-input
v-model="queryParams.auditOpName"
placeholder="请输入审核人名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="审核人IP" prop="auditIp">
<el-date-picker clearable
v-model="queryParams.auditIp"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择审核人IP">
</el-date-picker>
</el-form-item>
<el-form-item label="排序字段" prop="sort">
<el-input
v-model="queryParams.sort"
placeholder="请输入排序字段"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['xq:dynamic:add']"
>新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="success"
plain
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['xq:dynamic:edit']"
>修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['xq:dynamic:remove']"
>删除</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['xq:dynamic:export']"
>导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="dynamicList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="" align="center" prop="id" v-if="true"/>
<el-table-column label="用户ID" align="center" prop="userId" />
<el-table-column label="用户号" align="center" prop="usercode" />
<el-table-column label="内容" align="center" prop="content" />
<el-table-column label="城市ID" align="center" prop="cityId" />
<el-table-column label="城市" align="center" prop="city" />
<el-table-column label="是否有附件 0 没有 1 有" align="center" prop="isAttach" />
<el-table-column label="1-待审核 2-审核成功 3-审核失败" align="center" prop="auditStatus" />
<el-table-column label="审核备注" align="center" prop="auditRemark" />
<el-table-column label="审核时间" align="center" prop="auditTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.auditTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="审核人ID" align="center" prop="auditOpId" />
<el-table-column label="审核人名称" align="center" prop="auditOpName" />
<el-table-column label="审核人IP" align="center" prop="auditIp" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.auditIp, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="排序字段" align="center" prop="sort" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['xq:dynamic:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['xq:dynamic:remove']"
>删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改动态审核对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="用户ID" prop="userId">
<el-input v-model="form.userId" placeholder="请输入用户ID" />
</el-form-item>
<el-form-item label="用户号" prop="usercode">
<el-input v-model="form.usercode" placeholder="请输入用户号" />
</el-form-item>
<el-form-item label="内容">
<editor v-model="form.content" :min-height="192"/>
</el-form-item>
<el-form-item label="城市ID" prop="cityId">
<el-input v-model="form.cityId" placeholder="请输入城市ID" />
</el-form-item>
<el-form-item label="城市" prop="city">
<el-input v-model="form.city" placeholder="请输入城市" />
</el-form-item>
<el-form-item label="是否有附件 0 没有 1 有" prop="isAttach">
<el-input v-model="form.isAttach" placeholder="请输入是否有附件 0 没有 1 有" />
</el-form-item>
<el-form-item label="审核备注" prop="auditRemark">
<el-input v-model="form.auditRemark" placeholder="请输入审核备注" />
</el-form-item>
<el-form-item label="审核时间" prop="auditTime">
<el-date-picker clearable
v-model="form.auditTime"
type="datetime"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择审核时间">
</el-date-picker>
</el-form-item>
<el-form-item label="审核人ID" prop="auditOpId">
<el-input v-model="form.auditOpId" placeholder="请输入审核人ID" />
</el-form-item>
<el-form-item label="审核人名称" prop="auditOpName">
<el-input v-model="form.auditOpName" placeholder="请输入审核人名称" />
</el-form-item>
<el-form-item label="审核人IP" prop="auditIp">
<el-date-picker clearable
v-model="form.auditIp"
type="datetime"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择审核人IP">
</el-date-picker>
</el-form-item>
<el-form-item label="排序字段" prop="sort">
<el-input v-model="form.sort" placeholder="请输入排序字段" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button :loading="buttonLoading" type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { listDynamic, getDynamic, delDynamic, addDynamic, updateDynamic } from "@/api/xq/dynamic";
export default {
name: "Dynamic",
data() {
return {
// 按钮loading
buttonLoading: false,
// 遮罩层
loading: true,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 动态审核表格数据
dynamicList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
userId: undefined,
usercode: undefined,
content: undefined,
cityId: undefined,
city: undefined,
isAttach: undefined,
auditStatus: undefined,
auditRemark: undefined,
auditTime: undefined,
auditOpId: undefined,
auditOpName: undefined,
auditIp: undefined,
sort: undefined
},
// 表单参数
form: {},
// 表单校验
rules: {
id: [
{ required: true, message: "不能为空", trigger: "blur" }
],
userId: [
{ required: true, message: "用户ID不能为空", trigger: "blur" }
],
usercode: [
{ required: true, message: "用户号不能为空", trigger: "blur" }
],
content: [
{ required: true, message: "内容不能为空", trigger: "blur" }
],
cityId: [
{ required: true, message: "城市ID不能为空", trigger: "blur" }
],
city: [
{ required: true, message: "城市不能为空", trigger: "blur" }
],
isAttach: [
{ required: true, message: "是否有附件 0 没有 1 有不能为空", trigger: "blur" }
],
auditStatus: [
{ required: true, message: "1-待审核 2-审核成功 3-审核失败不能为空", trigger: "change" }
],
auditRemark: [
{ required: true, message: "审核备注不能为空", trigger: "blur" }
],
auditTime: [
{ required: true, message: "审核时间不能为空", trigger: "blur" }
],
auditOpId: [
{ required: true, message: "审核人ID不能为空", trigger: "blur" }
],
auditOpName: [
{ required: true, message: "审核人名称不能为空", trigger: "blur" }
],
auditIp: [
{ required: true, message: "审核人IP不能为空", trigger: "blur" }
],
sort: [
{ required: true, message: "排序字段不能为空", trigger: "blur" }
]
}
};
},
created() {
this.getList();
},
methods: {
/** 查询动态审核列表 */
getList() {
this.loading = true;
listDynamic(this.queryParams).then(response => {
this.dynamicList = response.rows;
this.total = response.total;
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
id: undefined,
userId: undefined,
usercode: undefined,
content: undefined,
cityId: undefined,
city: undefined,
isAttach: undefined,
auditStatus: undefined,
auditRemark: undefined,
auditTime: undefined,
auditOpId: undefined,
auditOpName: undefined,
auditIp: undefined,
createTime: undefined,
sort: undefined
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map(item => item.id)
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加动态审核";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.loading = true;
this.reset();
const id = row.id || this.ids
getDynamic(id).then(response => {
this.loading = false;
this.form = response.data;
this.open = true;
this.title = "修改动态审核";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
this.buttonLoading = true;
if (this.form.id != null) {
updateDynamic(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
} else {
addDynamic(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal.confirm('是否确认删除动态审核编号为"' + ids + '"的数据项?').then(() => {
this.loading = true;
return delDynamic(ids);
}).then(() => {
this.loading = false;
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {
}).finally(() => {
this.loading = false;
});
},
/** 导出按钮操作 */
handleExport() {
this.download('xq/dynamic/export', {
...this.queryParams
}, `dynamic_${new Date().getTime()}.xlsx`)
}
}
};
</script>

View File

@@ -0,0 +1,116 @@
<template>
<div class="app-container">
<el-row :gutter="10" class="mb8">
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="configList" >
<el-table-column label="名称" align="center" prop="desc" />
<el-table-column label="数值" align="center" prop="value" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" fixed="right">
<template v-slot="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
v-hasPermi="['xq:systemConfig:edit']"
@click="handleUpdate(scope.row)"
>修改</el-button>
</template>
</el-table-column>
</el-table>
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="名称" prop="desc">
<el-input v-model="form.desc" placeholder="请输入" disabled/>
</el-form-item>
<el-form-item label="数值" prop="value">
<el-input v-model="form.value" placeholder="请输入数值" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button :loading="buttonLoading" type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import {listSystemConfigList, updateSystemConfig} from "@/api/xq/systemConfig";
export default {
name: "Banner",
components: {
},
data() {
return {
// 遮罩层
buttonLoading: false,
loading: true,
// 显示搜索条件
showSearch: true,
queryParams:{},
form:{},
// 轮播表格数据
configList: [],
title: "",
open: false,
rules:[]
};
},
created() {
this.getList();
},
methods: {
/** 查询轮播列表 */
getList() {
this.loading = true;
listSystemConfigList().then(response => {
this.configList = response.data;
}).finally(()=>{
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
reset() {
this.form = {
key: undefined,
desc: undefined,
value: undefined
};
this.resetForm("form");
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
this.form = {
key: row.key,
desc: row.desc,
value: row.value
};
this.open = true;
this.title = "修改业务设置";
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
this.buttonLoading = true;
updateSystemConfig(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
}
});
},
}
};
</script>

713
src/views/xq/user/index.vue Normal file
View File

@@ -0,0 +1,713 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="用户号" prop="usercode">
<el-input
v-model="queryParams.usercode"
placeholder="请输入用户号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="昵称" prop="nickname">
<el-input
v-model="queryParams.nickname"
placeholder="请输入昵称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="密码" prop="password">
<el-input
v-model="queryParams.password"
placeholder="请输入密码"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="手机号" prop="mobile">
<el-input
v-model="queryParams.mobile"
placeholder="请输入手机号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="头像" prop="avatar">
<el-input
v-model="queryParams.avatar"
placeholder="请输入头像"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="自定义头像 1-自定义头像 0-默认头像" prop="avatarState">
<el-input
v-model="queryParams.avatarState"
placeholder="请输入自定义头像 1-自定义头像 0-默认头像"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="性别 0-未知 1-女 2-男" prop="gender">
<el-input
v-model="queryParams.gender"
placeholder="请输入性别 0-未知 1-女 2-男"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="年龄" prop="age">
<el-input
v-model="queryParams.age"
placeholder="请输入年龄"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="生日" prop="birthday">
<el-date-picker clearable
v-model="queryParams.birthday"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择生日">
</el-date-picker>
</el-form-item>
<el-form-item label="身高" prop="height">
<el-input
v-model="queryParams.height"
placeholder="请输入身高"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="体重" prop="weight">
<el-input
v-model="queryParams.weight"
placeholder="请输入体重"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="生肖" prop="zodiac">
<el-input
v-model="queryParams.zodiac"
placeholder="请输入生肖"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="星座" prop="sign">
<el-input
v-model="queryParams.sign"
placeholder="请输入星座"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="居住地" prop="residence">
<el-input
v-model="queryParams.residence"
placeholder="请输入居住地"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="户籍地" prop="address">
<el-input
v-model="queryParams.address"
placeholder="请输入户籍地"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="居住城市" prop="residenceCity">
<el-input
v-model="queryParams.residenceCity"
placeholder="请输入居住城市"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="学历" prop="education">
<el-input
v-model="queryParams.education"
placeholder="请输入学历"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="婚况" prop="marriage">
<el-input
v-model="queryParams.marriage"
placeholder="请输入婚况"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="职业" prop="profession">
<el-input
v-model="queryParams.profession"
placeholder="请输入职业"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="年收入" prop="annualIncome">
<el-input
v-model="queryParams.annualIncome"
placeholder="请输入年收入"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="公司性质" prop="companyNature">
<el-input
v-model="queryParams.companyNature"
placeholder="请输入公司性质"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="为谁征婚" prop="forPersonals">
<el-input
v-model="queryParams.forPersonals"
placeholder="请输入为谁征婚"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="邀请人" prop="inviteId">
<el-input
v-model="queryParams.inviteId"
placeholder="请输入邀请人"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="邀请人Code" prop="inviteCode">
<el-input
v-model="queryParams.inviteCode"
placeholder="请输入邀请人Code"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="im_token" prop="imToken">
<el-input
v-model="queryParams.imToken"
placeholder="请输入im_token"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['xq:user:add']"
>新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="success"
plain
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['xq:user:edit']"
>修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['xq:user:remove']"
>删除</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['xq:user:export']"
>导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="userList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="" align="center" prop="id" v-if="true"/>
<el-table-column label="用户号" align="center" prop="usercode" />
<el-table-column label="昵称" align="center" prop="nickname" />
<el-table-column label="用户类型: 0普通用户 1 内部用户 2 审核人员账号" align="center" prop="type" />
<el-table-column label="密码" align="center" prop="password" />
<el-table-column label="手机号" align="center" prop="mobile" />
<el-table-column label="头像" align="center" prop="avatar" />
<el-table-column label="自定义头像 1-自定义头像 0-默认头像" align="center" prop="avatarState" />
<el-table-column label="性别 0-未知 1-女 2-男" align="center" prop="gender" />
<el-table-column label="年龄" align="center" prop="age" />
<el-table-column label="生日" align="center" prop="birthday" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.birthday, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="身高" align="center" prop="height" />
<el-table-column label="体重" align="center" prop="weight" />
<el-table-column label="体型" align="center" prop="somatotype" />
<el-table-column label="生肖" align="center" prop="zodiac" />
<el-table-column label="星座" align="center" prop="sign" />
<el-table-column label="居住地" align="center" prop="residence" />
<el-table-column label="户籍地" align="center" prop="address" />
<el-table-column label="居住城市" align="center" prop="residenceCity" />
<el-table-column label="学历" align="center" prop="education" />
<el-table-column label="婚况" align="center" prop="marriage" />
<el-table-column label="职业" align="center" prop="profession" />
<el-table-column label="年收入" align="center" prop="annualIncome" />
<el-table-column label="公司性质" align="center" prop="companyNature" />
<el-table-column label="为谁征婚" align="center" prop="forPersonals" />
<el-table-column label="自我描述" align="center" prop="remark" />
<el-table-column label="状态 0-可用 1-不可用" align="center" prop="status" />
<el-table-column label="邀请人" align="center" prop="inviteId" />
<el-table-column label="邀请人Code" align="center" prop="inviteCode" />
<el-table-column label="im_token" align="center" prop="imToken" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['xq:user:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['xq:user:remove']"
>删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改用户管理对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="用户号" prop="usercode">
<el-input v-model="form.usercode" placeholder="请输入用户号" />
</el-form-item>
<el-form-item label="昵称" prop="nickname">
<el-input v-model="form.nickname" placeholder="请输入昵称" />
</el-form-item>
<el-form-item label="密码" prop="password">
<el-input v-model="form.password" placeholder="请输入密码" />
</el-form-item>
<el-form-item label="手机号" prop="mobile">
<el-input v-model="form.mobile" placeholder="请输入手机号" />
</el-form-item>
<el-form-item label="头像" prop="avatar">
<el-input v-model="form.avatar" placeholder="请输入头像" />
</el-form-item>
<el-form-item label="自定义头像 1-自定义头像 0-默认头像" prop="avatarState">
<el-input v-model="form.avatarState" placeholder="请输入自定义头像 1-自定义头像 0-默认头像" />
</el-form-item>
<el-form-item label="性别 0-未知 1-女 2-男" prop="gender">
<el-input v-model="form.gender" placeholder="请输入性别 0-未知 1-女 2-男" />
</el-form-item>
<el-form-item label="年龄" prop="age">
<el-input v-model="form.age" placeholder="请输入年龄" />
</el-form-item>
<el-form-item label="生日" prop="birthday">
<el-date-picker clearable
v-model="form.birthday"
type="datetime"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择生日">
</el-date-picker>
</el-form-item>
<el-form-item label="身高" prop="height">
<el-input v-model="form.height" placeholder="请输入身高" />
</el-form-item>
<el-form-item label="体重" prop="weight">
<el-input v-model="form.weight" placeholder="请输入体重" />
</el-form-item>
<el-form-item label="生肖" prop="zodiac">
<el-input v-model="form.zodiac" placeholder="请输入生肖" />
</el-form-item>
<el-form-item label="星座" prop="sign">
<el-input v-model="form.sign" placeholder="请输入星座" />
</el-form-item>
<el-form-item label="居住地" prop="residence">
<el-input v-model="form.residence" placeholder="请输入居住地" />
</el-form-item>
<el-form-item label="户籍地" prop="address">
<el-input v-model="form.address" placeholder="请输入户籍地" />
</el-form-item>
<el-form-item label="居住城市" prop="residenceCity">
<el-input v-model="form.residenceCity" placeholder="请输入居住城市" />
</el-form-item>
<el-form-item label="学历" prop="education">
<el-input v-model="form.education" placeholder="请输入学历" />
</el-form-item>
<el-form-item label="婚况" prop="marriage">
<el-input v-model="form.marriage" placeholder="请输入婚况" />
</el-form-item>
<el-form-item label="职业" prop="profession">
<el-input v-model="form.profession" placeholder="请输入职业" />
</el-form-item>
<el-form-item label="年收入" prop="annualIncome">
<el-input v-model="form.annualIncome" placeholder="请输入年收入" />
</el-form-item>
<el-form-item label="公司性质" prop="companyNature">
<el-input v-model="form.companyNature" placeholder="请输入公司性质" />
</el-form-item>
<el-form-item label="为谁征婚" prop="forPersonals">
<el-input v-model="form.forPersonals" placeholder="请输入为谁征婚" />
</el-form-item>
<el-form-item label="自我描述" prop="remark">
<el-input v-model="form.remark" placeholder="请输入自我描述" />
</el-form-item>
<el-form-item label="邀请人" prop="inviteId">
<el-input v-model="form.inviteId" placeholder="请输入邀请人" />
</el-form-item>
<el-form-item label="邀请人Code" prop="inviteCode">
<el-input v-model="form.inviteCode" placeholder="请输入邀请人Code" />
</el-form-item>
<el-form-item label="im_token" prop="imToken">
<el-input v-model="form.imToken" placeholder="请输入im_token" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button :loading="buttonLoading" type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { listUser, getUser, delUser, addUser, updateUser } from "@/api/xq/user";
export default {
name: "User",
data() {
return {
// 按钮loading
buttonLoading: false,
// 遮罩层
loading: true,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 用户管理表格数据
userList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
usercode: undefined,
nickname: undefined,
type: undefined,
password: undefined,
mobile: undefined,
avatar: undefined,
avatarState: undefined,
gender: undefined,
age: undefined,
birthday: undefined,
height: undefined,
weight: undefined,
somatotype: undefined,
zodiac: undefined,
sign: undefined,
residence: undefined,
address: undefined,
residenceCity: undefined,
education: undefined,
marriage: undefined,
profession: undefined,
annualIncome: undefined,
companyNature: undefined,
forPersonals: undefined,
status: undefined,
inviteId: undefined,
inviteCode: undefined,
imToken: undefined
},
// 表单参数
form: {},
// 表单校验
rules: {
id: [
{ required: true, message: "不能为空", trigger: "blur" }
],
usercode: [
{ required: true, message: "用户号不能为空", trigger: "blur" }
],
nickname: [
{ required: true, message: "昵称不能为空", trigger: "blur" }
],
type: [
{ required: true, message: "用户类型: 0普通用户 1 内部用户 2 审核人员账号不能为空", trigger: "change" }
],
password: [
{ required: true, message: "密码不能为空", trigger: "blur" }
],
mobile: [
{ required: true, message: "手机号不能为空", trigger: "blur" }
],
avatar: [
{ required: true, message: "头像不能为空", trigger: "blur" }
],
avatarState: [
{ required: true, message: "自定义头像 1-自定义头像 0-默认头像不能为空", trigger: "blur" }
],
gender: [
{ required: true, message: "性别 0-未知 1-女 2-男不能为空", trigger: "blur" }
],
age: [
{ required: true, message: "年龄不能为空", trigger: "blur" }
],
birthday: [
{ required: true, message: "生日不能为空", trigger: "blur" }
],
height: [
{ required: true, message: "身高不能为空", trigger: "blur" }
],
weight: [
{ required: true, message: "体重不能为空", trigger: "blur" }
],
somatotype: [
{ required: true, message: "体型不能为空", trigger: "change" }
],
zodiac: [
{ required: true, message: "生肖不能为空", trigger: "blur" }
],
sign: [
{ required: true, message: "星座不能为空", trigger: "blur" }
],
residence: [
{ required: true, message: "居住地不能为空", trigger: "blur" }
],
address: [
{ required: true, message: "户籍地不能为空", trigger: "blur" }
],
residenceCity: [
{ required: true, message: "居住城市不能为空", trigger: "blur" }
],
education: [
{ required: true, message: "学历不能为空", trigger: "blur" }
],
marriage: [
{ required: true, message: "婚况不能为空", trigger: "blur" }
],
profession: [
{ required: true, message: "职业不能为空", trigger: "blur" }
],
annualIncome: [
{ required: true, message: "年收入不能为空", trigger: "blur" }
],
companyNature: [
{ required: true, message: "公司性质不能为空", trigger: "blur" }
],
forPersonals: [
{ required: true, message: "为谁征婚不能为空", trigger: "blur" }
],
remark: [
{ required: true, message: "自我描述不能为空", trigger: "blur" }
],
createTime: [
{ required: true, message: "创建时间不能为空", trigger: "blur" }
],
status: [
{ required: true, message: "状态 0-可用 1-不可用不能为空", trigger: "change" }
],
inviteId: [
{ required: true, message: "邀请人不能为空", trigger: "blur" }
],
inviteCode: [
{ required: true, message: "邀请人Code不能为空", trigger: "blur" }
],
imToken: [
{ required: true, message: "im_token不能为空", trigger: "blur" }
]
}
};
},
created() {
this.getList();
},
methods: {
/** 查询用户管理列表 */
getList() {
this.loading = true;
listUser(this.queryParams).then(response => {
this.userList = response.rows;
this.total = response.total;
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
id: undefined,
usercode: undefined,
nickname: undefined,
type: undefined,
password: undefined,
mobile: undefined,
avatar: undefined,
avatarState: undefined,
gender: undefined,
age: undefined,
birthday: undefined,
height: undefined,
weight: undefined,
somatotype: undefined,
zodiac: undefined,
sign: undefined,
residence: undefined,
address: undefined,
residenceCity: undefined,
education: undefined,
marriage: undefined,
profession: undefined,
annualIncome: undefined,
companyNature: undefined,
forPersonals: undefined,
remark: undefined,
createTime: undefined,
updateTime: undefined,
status: undefined,
inviteId: undefined,
inviteCode: undefined,
imToken: undefined
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map(item => item.id)
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加用户管理";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.loading = true;
this.reset();
const id = row.id || this.ids
getUser(id).then(response => {
this.loading = false;
this.form = response.data;
this.open = true;
this.title = "修改用户管理";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
this.buttonLoading = true;
if (this.form.id != null) {
updateUser(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
} else {
addUser(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal.confirm('是否确认删除用户管理编号为"' + ids + '"的数据项?').then(() => {
this.loading = true;
return delUser(ids);
}).then(() => {
this.loading = false;
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {
}).finally(() => {
this.loading = false;
});
},
/** 导出按钮操作 */
handleExport() {
this.download('xq/user/export', {
...this.queryParams
}, `user_${new Date().getTime()}.xlsx`)
}
}
};
</script>

View File

@@ -0,0 +1,565 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="用户ID" prop="userId">
<el-input
v-model="queryParams.userId"
placeholder="请输入用户ID"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="用户号" prop="usercode">
<el-input
v-model="queryParams.usercode"
placeholder="请输入用户号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="实名认证 0-待提交 1-审核中 2-审核通过" prop="cardNumAuth">
<el-input
v-model="queryParams.cardNumAuth"
placeholder="请输入实名认证 0-待提交 1-审核中 2-审核通过"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="身份证ID" prop="cardNumId">
<el-input
v-model="queryParams.cardNumId"
placeholder="请输入身份证ID"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="身份证ID" prop="cardNumName">
<el-input
v-model="queryParams.cardNumName"
placeholder="请输入身份证ID"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="手机认证 0-待提交 1-审核中 2-审核通过" prop="phoneAuth">
<el-input
v-model="queryParams.phoneAuth"
placeholder="请输入手机认证 0-待提交 1-审核中 2-审核通过"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="手机号" prop="phone">
<el-input
v-model="queryParams.phone"
placeholder="请输入手机号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="单身认证 0-待提交 1-审核中 2-审核通过" prop="singlePersonAuth">
<el-input
v-model="queryParams.singlePersonAuth"
placeholder="请输入单身认证 0-待提交 1-审核中 2-审核通过"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="学历认证 0-待提交 1-审核中 2-审核通过" prop="educationAuth">
<el-input
v-model="queryParams.educationAuth"
placeholder="请输入学历认证 0-待提交 1-审核中 2-审核通过"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="学历照片" prop="educationPic">
<el-input
v-model="queryParams.educationPic"
placeholder="请输入学历照片"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="工作认证 0-待提交 1-审核中 2-审核通过" prop="jobAuth">
<el-input
v-model="queryParams.jobAuth"
placeholder="请输入工作认证 0-待提交 1-审核中 2-审核通过"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="工作照片" prop="jobPic">
<el-input
v-model="queryParams.jobPic"
placeholder="请输入工作照片"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="车辆认证 0-待提交 1-审核中 2-审核通过" prop="carAuth">
<el-input
v-model="queryParams.carAuth"
placeholder="请输入车辆认证 0-待提交 1-审核中 2-审核通过"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="车辆照片" prop="carPic">
<el-input
v-model="queryParams.carPic"
placeholder="请输入车辆照片"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="房子认证 0-待提交 1-审核中 2-审核通过" prop="houseAuth">
<el-input
v-model="queryParams.houseAuth"
placeholder="请输入房子认证 0-待提交 1-审核中 2-审核通过"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="房子照片" prop="housePic">
<el-input
v-model="queryParams.housePic"
placeholder="请输入房子照片"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="婚况认证 0-待提交 1-审核中 2-审核通过" prop="marriageAuth">
<el-input
v-model="queryParams.marriageAuth"
placeholder="请输入婚况认证 0-待提交 1-审核中 2-审核通过"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="婚况照片" prop="marriagePic">
<el-input
v-model="queryParams.marriagePic"
placeholder="请输入婚况照片"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['xq:userAuth:add']"
>新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="success"
plain
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['xq:userAuth:edit']"
>修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['xq:userAuth:remove']"
>删除</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['xq:userAuth:export']"
>导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="userAuthList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="" align="center" prop="id" v-if="true"/>
<el-table-column label="用户ID" align="center" prop="userId" />
<el-table-column label="用户号" align="center" prop="usercode" />
<el-table-column label="实名认证 0-待提交 1-审核中 2-审核通过" align="center" prop="cardNumAuth" />
<el-table-column label="身份证ID" align="center" prop="cardNumId" />
<el-table-column label="身份证ID" align="center" prop="cardNumName" />
<el-table-column label="手机认证 0-待提交 1-审核中 2-审核通过" align="center" prop="phoneAuth" />
<el-table-column label="手机号" align="center" prop="phone" />
<el-table-column label="单身认证 0-待提交 1-审核中 2-审核通过" align="center" prop="singlePersonAuth" />
<el-table-column label="学历认证 0-待提交 1-审核中 2-审核通过" align="center" prop="educationAuth" />
<el-table-column label="学历照片" align="center" prop="educationPic" />
<el-table-column label="工作认证 0-待提交 1-审核中 2-审核通过" align="center" prop="jobAuth" />
<el-table-column label="工作认证类型" align="center" prop="jobAuthType" />
<el-table-column label="工作照片" align="center" prop="jobPic" />
<el-table-column label="车辆认证 0-待提交 1-审核中 2-审核通过" align="center" prop="carAuth" />
<el-table-column label="车辆照片" align="center" prop="carPic" />
<el-table-column label="房子认证 0-待提交 1-审核中 2-审核通过" align="center" prop="houseAuth" />
<el-table-column label="房子照片" align="center" prop="housePic" />
<el-table-column label="婚况认证 0-待提交 1-审核中 2-审核通过" align="center" prop="marriageAuth" />
<el-table-column label="婚况照片" align="center" prop="marriagePic" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['xq:userAuth:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['xq:userAuth:remove']"
>删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改用户认证管理对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="用户ID" prop="userId">
<el-input v-model="form.userId" placeholder="请输入用户ID" />
</el-form-item>
<el-form-item label="用户号" prop="usercode">
<el-input v-model="form.usercode" placeholder="请输入用户号" />
</el-form-item>
<el-form-item label="实名认证 0-待提交 1-审核中 2-审核通过" prop="cardNumAuth">
<el-input v-model="form.cardNumAuth" placeholder="请输入实名认证 0-待提交 1-审核中 2-审核通过" />
</el-form-item>
<el-form-item label="身份证ID" prop="cardNumId">
<el-input v-model="form.cardNumId" placeholder="请输入身份证ID" />
</el-form-item>
<el-form-item label="身份证ID" prop="cardNumName">
<el-input v-model="form.cardNumName" placeholder="请输入身份证ID" />
</el-form-item>
<el-form-item label="手机认证 0-待提交 1-审核中 2-审核通过" prop="phoneAuth">
<el-input v-model="form.phoneAuth" placeholder="请输入手机认证 0-待提交 1-审核中 2-审核通过" />
</el-form-item>
<el-form-item label="手机号" prop="phone">
<el-input v-model="form.phone" placeholder="请输入手机号" />
</el-form-item>
<el-form-item label="单身认证 0-待提交 1-审核中 2-审核通过" prop="singlePersonAuth">
<el-input v-model="form.singlePersonAuth" placeholder="请输入单身认证 0-待提交 1-审核中 2-审核通过" />
</el-form-item>
<el-form-item label="学历认证 0-待提交 1-审核中 2-审核通过" prop="educationAuth">
<el-input v-model="form.educationAuth" placeholder="请输入学历认证 0-待提交 1-审核中 2-审核通过" />
</el-form-item>
<el-form-item label="学历照片" prop="educationPic">
<el-input v-model="form.educationPic" placeholder="请输入学历照片" />
</el-form-item>
<el-form-item label="工作认证 0-待提交 1-审核中 2-审核通过" prop="jobAuth">
<el-input v-model="form.jobAuth" placeholder="请输入工作认证 0-待提交 1-审核中 2-审核通过" />
</el-form-item>
<el-form-item label="工作照片" prop="jobPic">
<el-input v-model="form.jobPic" placeholder="请输入工作照片" />
</el-form-item>
<el-form-item label="车辆认证 0-待提交 1-审核中 2-审核通过" prop="carAuth">
<el-input v-model="form.carAuth" placeholder="请输入车辆认证 0-待提交 1-审核中 2-审核通过" />
</el-form-item>
<el-form-item label="车辆照片" prop="carPic">
<el-input v-model="form.carPic" placeholder="请输入车辆照片" />
</el-form-item>
<el-form-item label="房子认证 0-待提交 1-审核中 2-审核通过" prop="houseAuth">
<el-input v-model="form.houseAuth" placeholder="请输入房子认证 0-待提交 1-审核中 2-审核通过" />
</el-form-item>
<el-form-item label="房子照片" prop="housePic">
<el-input v-model="form.housePic" placeholder="请输入房子照片" />
</el-form-item>
<el-form-item label="婚况认证 0-待提交 1-审核中 2-审核通过" prop="marriageAuth">
<el-input v-model="form.marriageAuth" placeholder="请输入婚况认证 0-待提交 1-审核中 2-审核通过" />
</el-form-item>
<el-form-item label="婚况照片" prop="marriagePic">
<el-input v-model="form.marriagePic" placeholder="请输入婚况照片" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button :loading="buttonLoading" type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { listUserAuth, getUserAuth, delUserAuth, addUserAuth, updateUserAuth } from "@/api/xq/userAuth";
export default {
name: "UserAuth",
data() {
return {
// 按钮loading
buttonLoading: false,
// 遮罩层
loading: true,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 用户认证管理表格数据
userAuthList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
userId: undefined,
usercode: undefined,
cardNumAuth: undefined,
cardNumId: undefined,
cardNumName: undefined,
phoneAuth: undefined,
phone: undefined,
singlePersonAuth: undefined,
educationAuth: undefined,
educationPic: undefined,
jobAuth: undefined,
jobAuthType: undefined,
jobPic: undefined,
carAuth: undefined,
carPic: undefined,
houseAuth: undefined,
housePic: undefined,
marriageAuth: undefined,
marriagePic: undefined,
},
// 表单参数
form: {},
// 表单校验
rules: {
id: [
{ required: true, message: "不能为空", trigger: "blur" }
],
userId: [
{ required: true, message: "用户ID不能为空", trigger: "blur" }
],
usercode: [
{ required: true, message: "用户号不能为空", trigger: "blur" }
],
cardNumAuth: [
{ required: true, message: "实名认证 0-待提交 1-审核中 2-审核通过不能为空", trigger: "blur" }
],
cardNumId: [
{ required: true, message: "身份证ID不能为空", trigger: "blur" }
],
cardNumName: [
{ required: true, message: "身份证ID不能为空", trigger: "blur" }
],
phoneAuth: [
{ required: true, message: "手机认证 0-待提交 1-审核中 2-审核通过不能为空", trigger: "blur" }
],
phone: [
{ required: true, message: "手机号不能为空", trigger: "blur" }
],
singlePersonAuth: [
{ required: true, message: "单身认证 0-待提交 1-审核中 2-审核通过不能为空", trigger: "blur" }
],
educationAuth: [
{ required: true, message: "学历认证 0-待提交 1-审核中 2-审核通过不能为空", trigger: "blur" }
],
educationPic: [
{ required: true, message: "学历照片不能为空", trigger: "blur" }
],
jobAuth: [
{ required: true, message: "工作认证 0-待提交 1-审核中 2-审核通过不能为空", trigger: "blur" }
],
jobAuthType: [
{ required: true, message: "工作认证类型不能为空", trigger: "change" }
],
jobPic: [
{ required: true, message: "工作照片不能为空", trigger: "blur" }
],
carAuth: [
{ required: true, message: "车辆认证 0-待提交 1-审核中 2-审核通过不能为空", trigger: "blur" }
],
carPic: [
{ required: true, message: "车辆照片不能为空", trigger: "blur" }
],
houseAuth: [
{ required: true, message: "房子认证 0-待提交 1-审核中 2-审核通过不能为空", trigger: "blur" }
],
housePic: [
{ required: true, message: "房子照片不能为空", trigger: "blur" }
],
marriageAuth: [
{ required: true, message: "婚况认证 0-待提交 1-审核中 2-审核通过不能为空", trigger: "blur" }
],
marriagePic: [
{ required: true, message: "婚况照片不能为空", trigger: "blur" }
],
createTime: [
{ required: true, message: "创建时间不能为空", trigger: "blur" }
],
}
};
},
created() {
this.getList();
},
methods: {
/** 查询用户认证管理列表 */
getList() {
this.loading = true;
listUserAuth(this.queryParams).then(response => {
this.userAuthList = response.rows;
this.total = response.total;
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
id: undefined,
userId: undefined,
usercode: undefined,
cardNumAuth: undefined,
cardNumId: undefined,
cardNumName: undefined,
phoneAuth: undefined,
phone: undefined,
singlePersonAuth: undefined,
educationAuth: undefined,
educationPic: undefined,
jobAuth: undefined,
jobAuthType: undefined,
jobPic: undefined,
carAuth: undefined,
carPic: undefined,
houseAuth: undefined,
housePic: undefined,
marriageAuth: undefined,
marriagePic: undefined,
createTime: undefined,
updateTime: undefined
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map(item => item.id)
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加用户认证管理";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.loading = true;
this.reset();
const id = row.id || this.ids
getUserAuth(id).then(response => {
this.loading = false;
this.form = response.data;
this.open = true;
this.title = "修改用户认证管理";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
this.buttonLoading = true;
if (this.form.id != null) {
updateUserAuth(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
} else {
addUserAuth(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal.confirm('是否确认删除用户认证管理编号为"' + ids + '"的数据项?').then(() => {
this.loading = true;
return delUserAuth(ids);
}).then(() => {
this.loading = false;
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {
}).finally(() => {
this.loading = false;
});
},
/** 导出按钮操作 */
handleExport() {
this.download('xq/userAuth/export', {
...this.queryParams
}, `userAuth_${new Date().getTime()}.xlsx`)
}
}
};
</script>

View File

@@ -0,0 +1,442 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="用户ID" prop="userId">
<el-input
v-model="queryParams.userId"
placeholder="请输入用户ID"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="用户号" prop="usercode">
<el-input
v-model="queryParams.usercode"
placeholder="请输入用户号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="权限认证说明" prop="authRemark">
<el-input
v-model="queryParams.authRemark"
placeholder="请输入权限认证说明"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="权限认证照片" prop="authPic">
<el-input
v-model="queryParams.authPic"
placeholder="请输入权限认证照片"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="审核备注" prop="auditRemark">
<el-input
v-model="queryParams.auditRemark"
placeholder="请输入审核备注"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="审核时间" prop="auditTime">
<el-date-picker clearable
v-model="queryParams.auditTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择审核时间">
</el-date-picker>
</el-form-item>
<el-form-item label="审核人ID" prop="auditOpId">
<el-input
v-model="queryParams.auditOpId"
placeholder="请输入审核人ID"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="审核人名称" prop="auditOpName">
<el-input
v-model="queryParams.auditOpName"
placeholder="请输入审核人名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="审核人IP" prop="auditIp">
<el-date-picker clearable
v-model="queryParams.auditIp"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择审核人IP">
</el-date-picker>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['xq:userAuthAudit:add']"
>新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="success"
plain
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['xq:userAuthAudit:edit']"
>修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['xq:userAuthAudit:remove']"
>删除</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['xq:userAuthAudit:export']"
>导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="userAuthAuditList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="" align="center" prop="id" v-if="true"/>
<el-table-column label="用户ID" align="center" prop="userId" />
<el-table-column label="用户号" align="center" prop="usercode" />
<el-table-column label="single-单身认证 education-学历认证 job-工作认证 car-车辆认证 house-房子认证 marriage-婚况认证" align="center" prop="authType" />
<el-table-column label="权限认证说明" align="center" prop="authRemark" />
<el-table-column label="权限认证照片" align="center" prop="authPic" />
<el-table-column label="其他字段" align="center" prop="auitOther" />
<el-table-column label="1-待审核 2-审核成功 3-审核失败" align="center" prop="auditStatus" />
<el-table-column label="审核备注" align="center" prop="auditRemark" />
<el-table-column label="审核时间" align="center" prop="auditTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.auditTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="审核人ID" align="center" prop="auditOpId" />
<el-table-column label="审核人名称" align="center" prop="auditOpName" />
<el-table-column label="审核人IP" align="center" prop="auditIp" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.auditIp, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['xq:userAuthAudit:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['xq:userAuthAudit:remove']"
>删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改用户认证审核对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="用户ID" prop="userId">
<el-input v-model="form.userId" placeholder="请输入用户ID" />
</el-form-item>
<el-form-item label="用户号" prop="usercode">
<el-input v-model="form.usercode" placeholder="请输入用户号" />
</el-form-item>
<el-form-item label="权限认证说明" prop="authRemark">
<el-input v-model="form.authRemark" placeholder="请输入权限认证说明" />
</el-form-item>
<el-form-item label="权限认证照片" prop="authPic">
<el-input v-model="form.authPic" placeholder="请输入权限认证照片" />
</el-form-item>
<el-form-item label="审核备注" prop="auditRemark">
<el-input v-model="form.auditRemark" placeholder="请输入审核备注" />
</el-form-item>
<el-form-item label="审核时间" prop="auditTime">
<el-date-picker clearable
v-model="form.auditTime"
type="datetime"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择审核时间">
</el-date-picker>
</el-form-item>
<el-form-item label="审核人ID" prop="auditOpId">
<el-input v-model="form.auditOpId" placeholder="请输入审核人ID" />
</el-form-item>
<el-form-item label="审核人名称" prop="auditOpName">
<el-input v-model="form.auditOpName" placeholder="请输入审核人名称" />
</el-form-item>
<el-form-item label="审核人IP" prop="auditIp">
<el-date-picker clearable
v-model="form.auditIp"
type="datetime"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择审核人IP">
</el-date-picker>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button :loading="buttonLoading" type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { listUserAuthAudit, getUserAuthAudit, delUserAuthAudit, addUserAuthAudit, updateUserAuthAudit } from "@/api/xq/userAuthAudit";
export default {
name: "UserAuthAudit",
data() {
return {
// 按钮loading
buttonLoading: false,
// 遮罩层
loading: true,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 用户认证审核表格数据
userAuthAuditList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
userId: undefined,
usercode: undefined,
authType: undefined,
authRemark: undefined,
authPic: undefined,
auitOther: undefined,
auditStatus: undefined,
auditRemark: undefined,
auditTime: undefined,
auditOpId: undefined,
auditOpName: undefined,
auditIp: undefined,
},
// 表单参数
form: {},
// 表单校验
rules: {
id: [
{ required: true, message: "不能为空", trigger: "blur" }
],
userId: [
{ required: true, message: "用户ID不能为空", trigger: "blur" }
],
usercode: [
{ required: true, message: "用户号不能为空", trigger: "blur" }
],
authType: [
{ required: true, message: "single-单身认证 education-学历认证 job-工作认证 car-车辆认证 house-房子认证 marriage-婚况认证不能为空", trigger: "change" }
],
authRemark: [
{ required: true, message: "权限认证说明不能为空", trigger: "blur" }
],
authPic: [
{ required: true, message: "权限认证照片不能为空", trigger: "blur" }
],
auitOther: [
{ required: true, message: "其他字段不能为空", trigger: "blur" }
],
auditStatus: [
{ required: true, message: "1-待审核 2-审核成功 3-审核失败不能为空", trigger: "change" }
],
auditRemark: [
{ required: true, message: "审核备注不能为空", trigger: "blur" }
],
auditTime: [
{ required: true, message: "审核时间不能为空", trigger: "blur" }
],
auditOpId: [
{ required: true, message: "审核人ID不能为空", trigger: "blur" }
],
auditOpName: [
{ required: true, message: "审核人名称不能为空", trigger: "blur" }
],
auditIp: [
{ required: true, message: "审核人IP不能为空", trigger: "blur" }
],
createTime: [
{ required: true, message: "创建时间不能为空", trigger: "blur" }
],
}
};
},
created() {
this.getList();
},
methods: {
/** 查询用户认证审核列表 */
getList() {
this.loading = true;
listUserAuthAudit(this.queryParams).then(response => {
this.userAuthAuditList = response.rows;
this.total = response.total;
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
id: undefined,
userId: undefined,
usercode: undefined,
authType: undefined,
authRemark: undefined,
authPic: undefined,
auitOther: undefined,
auditStatus: undefined,
auditRemark: undefined,
auditTime: undefined,
auditOpId: undefined,
auditOpName: undefined,
auditIp: undefined,
createTime: undefined,
updateTime: undefined
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map(item => item.id)
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加用户认证审核";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.loading = true;
this.reset();
const id = row.id || this.ids
getUserAuthAudit(id).then(response => {
this.loading = false;
this.form = response.data;
this.open = true;
this.title = "修改用户认证审核";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
this.buttonLoading = true;
if (this.form.id != null) {
updateUserAuthAudit(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
} else {
addUserAuthAudit(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal.confirm('是否确认删除用户认证审核编号为"' + ids + '"的数据项?').then(() => {
this.loading = true;
return delUserAuthAudit(ids);
}).then(() => {
this.loading = false;
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {
}).finally(() => {
this.loading = false;
});
},
/** 导出按钮操作 */
handleExport() {
this.download('xq/userAuthAudit/export', {
...this.queryParams
}, `userAuthAudit_${new Date().getTime()}.xlsx`)
}
}
};
</script>

View File

@@ -0,0 +1,608 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="用户ID" prop="userId">
<el-input
v-model="queryParams.userId"
placeholder="请输入用户ID"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="用户号" prop="usercode">
<el-input
v-model="queryParams.usercode"
placeholder="请输入用户号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="民族" prop="nation">
<el-input
v-model="queryParams.nation"
placeholder="请输入民族"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="家庭背景" prop="familyBackground">
<el-input
v-model="queryParams.familyBackground"
placeholder="请输入家庭背景"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="家中排行" prop="familyRanking">
<el-input
v-model="queryParams.familyRanking"
placeholder="请输入家中排行"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="是否接受异地恋" prop="loveAtDistance">
<el-input
v-model="queryParams.loveAtDistance"
placeholder="请输入是否接受异地恋"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="何时结婚" prop="whenMarriage">
<el-input
v-model="queryParams.whenMarriage"
placeholder="请输入何时结婚"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="是否要小孩" prop="wantChild">
<el-input
v-model="queryParams.wantChild"
placeholder="请输入是否要小孩"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="愿与对方父母同住" prop="liveAtParent">
<el-input
v-model="queryParams.liveAtParent"
placeholder="请输入愿与对方父母同住"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="交友目的" prop="findTag">
<el-input
v-model="queryParams.findTag"
placeholder="请输入交友目的"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="毕业院校" prop="graduateSchool">
<el-input
v-model="queryParams.graduateSchool"
placeholder="请输入毕业院校"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="兴趣爱好" prop="hobbys">
<el-input
v-model="queryParams.hobbys"
placeholder="请输入兴趣爱好"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="择偶条件-年龄" prop="filterAge">
<el-input
v-model="queryParams.filterAge"
placeholder="请输入择偶条件-年龄"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="择偶条件-身高" prop="filterHeight">
<el-input
v-model="queryParams.filterHeight"
placeholder="请输入择偶条件-身高"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="择偶条件-婚况" prop="filterMarriage">
<el-input
v-model="queryParams.filterMarriage"
placeholder="请输入择偶条件-婚况"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="择偶条件-学历" prop="filterEducation">
<el-input
v-model="queryParams.filterEducation"
placeholder="请输入择偶条件-学历"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="择偶条件-地区" prop="filterResidence">
<el-input
v-model="queryParams.filterResidence"
placeholder="请输入择偶条件-地区"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="择偶条件-年收入" prop="filterAnnualIncome">
<el-input
v-model="queryParams.filterAnnualIncome"
placeholder="请输入择偶条件-年收入"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['xq:userInfo:add']"
>新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="success"
plain
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['xq:userInfo:edit']"
>修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['xq:userInfo:remove']"
>删除</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['xq:userInfo:export']"
>导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="userInfoList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="" align="center" prop="id" v-if="true"/>
<el-table-column label="用户ID" align="center" prop="userId" />
<el-table-column label="用户号" align="center" prop="usercode" />
<el-table-column label="住房情况" align="center" prop="housingStatus" />
<el-table-column label="购车情况" align="center" prop="carStatus" />
<el-table-column label="是否吸烟" align="center" prop="smokeStatus" />
<el-table-column label="是否喝酒" align="center" prop="drinkStatus" />
<el-table-column label="民族" align="center" prop="nation" />
<el-table-column label="有没有小孩" align="center" prop="childStatus" />
<el-table-column label="家庭背景" align="center" prop="familyBackground" />
<el-table-column label="家中排行" align="center" prop="familyRanking" />
<el-table-column label="是否接受异地恋" align="center" prop="loveAtDistance" />
<el-table-column label="何时结婚" align="center" prop="whenMarriage" />
<el-table-column label="是否要小孩" align="center" prop="wantChild" />
<el-table-column label="愿与对方父母同住" align="center" prop="liveAtParent" />
<el-table-column label="交友目的" align="center" prop="findTag" />
<el-table-column label="毕业院校" align="center" prop="graduateSchool" />
<el-table-column label="兴趣爱好" align="center" prop="hobbys" />
<el-table-column label="择偶条件-年龄" align="center" prop="filterAge" />
<el-table-column label="择偶条件-身高" align="center" prop="filterHeight" />
<el-table-column label="择偶条件-体型" align="center" prop="filterSomatotype" />
<el-table-column label="择偶条件-婚况" align="center" prop="filterMarriage" />
<el-table-column label="择偶条件-学历" align="center" prop="filterEducation" />
<el-table-column label="择偶条件-地区" align="center" prop="filterResidence" />
<el-table-column label="择偶条件-年收入" align="center" prop="filterAnnualIncome" />
<el-table-column label="择偶条件-小孩情况" align="center" prop="filterChildStatus" />
<el-table-column label="择偶条件-住房情况" align="center" prop="filterHousingStatus" />
<el-table-column label="择偶条件-购车情况" align="center" prop="filterCarStatus" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['xq:userInfo:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['xq:userInfo:remove']"
>删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改用户信息对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="用户ID" prop="userId">
<el-input v-model="form.userId" placeholder="请输入用户ID" />
</el-form-item>
<el-form-item label="用户号" prop="usercode">
<el-input v-model="form.usercode" placeholder="请输入用户号" />
</el-form-item>
<el-form-item label="民族" prop="nation">
<el-input v-model="form.nation" placeholder="请输入民族" />
</el-form-item>
<el-form-item label="家庭背景" prop="familyBackground">
<el-input v-model="form.familyBackground" placeholder="请输入家庭背景" />
</el-form-item>
<el-form-item label="家中排行" prop="familyRanking">
<el-input v-model="form.familyRanking" placeholder="请输入家中排行" />
</el-form-item>
<el-form-item label="是否接受异地恋" prop="loveAtDistance">
<el-input v-model="form.loveAtDistance" placeholder="请输入是否接受异地恋" />
</el-form-item>
<el-form-item label="何时结婚" prop="whenMarriage">
<el-input v-model="form.whenMarriage" placeholder="请输入何时结婚" />
</el-form-item>
<el-form-item label="是否要小孩" prop="wantChild">
<el-input v-model="form.wantChild" placeholder="请输入是否要小孩" />
</el-form-item>
<el-form-item label="愿与对方父母同住" prop="liveAtParent">
<el-input v-model="form.liveAtParent" placeholder="请输入愿与对方父母同住" />
</el-form-item>
<el-form-item label="交友目的" prop="findTag">
<el-input v-model="form.findTag" placeholder="请输入交友目的" />
</el-form-item>
<el-form-item label="毕业院校" prop="graduateSchool">
<el-input v-model="form.graduateSchool" placeholder="请输入毕业院校" />
</el-form-item>
<el-form-item label="兴趣爱好" prop="hobbys">
<el-input v-model="form.hobbys" placeholder="请输入兴趣爱好" />
</el-form-item>
<el-form-item label="择偶条件-年龄" prop="filterAge">
<el-input v-model="form.filterAge" placeholder="请输入择偶条件-年龄" />
</el-form-item>
<el-form-item label="择偶条件-身高" prop="filterHeight">
<el-input v-model="form.filterHeight" placeholder="请输入择偶条件-身高" />
</el-form-item>
<el-form-item label="择偶条件-婚况" prop="filterMarriage">
<el-input v-model="form.filterMarriage" placeholder="请输入择偶条件-婚况" />
</el-form-item>
<el-form-item label="择偶条件-学历" prop="filterEducation">
<el-input v-model="form.filterEducation" placeholder="请输入择偶条件-学历" />
</el-form-item>
<el-form-item label="择偶条件-地区" prop="filterResidence">
<el-input v-model="form.filterResidence" placeholder="请输入择偶条件-地区" />
</el-form-item>
<el-form-item label="择偶条件-年收入" prop="filterAnnualIncome">
<el-input v-model="form.filterAnnualIncome" placeholder="请输入择偶条件-年收入" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button :loading="buttonLoading" type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { listUserInfo, getUserInfo, delUserInfo, addUserInfo, updateUserInfo } from "@/api/xq/userInfo";
export default {
name: "UserInfo",
data() {
return {
// 按钮loading
buttonLoading: false,
// 遮罩层
loading: true,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 用户信息表格数据
userInfoList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
userId: undefined,
usercode: undefined,
housingStatus: undefined,
carStatus: undefined,
smokeStatus: undefined,
drinkStatus: undefined,
nation: undefined,
childStatus: undefined,
familyBackground: undefined,
familyRanking: undefined,
loveAtDistance: undefined,
whenMarriage: undefined,
wantChild: undefined,
liveAtParent: undefined,
findTag: undefined,
graduateSchool: undefined,
hobbys: undefined,
filterAge: undefined,
filterHeight: undefined,
filterSomatotype: undefined,
filterMarriage: undefined,
filterEducation: undefined,
filterResidence: undefined,
filterAnnualIncome: undefined,
filterChildStatus: undefined,
filterHousingStatus: undefined,
filterCarStatus: undefined
},
// 表单参数
form: {},
// 表单校验
rules: {
id: [
{ required: true, message: "不能为空", trigger: "blur" }
],
userId: [
{ required: true, message: "用户ID不能为空", trigger: "blur" }
],
usercode: [
{ required: true, message: "用户号不能为空", trigger: "blur" }
],
housingStatus: [
{ required: true, message: "住房情况不能为空", trigger: "change" }
],
carStatus: [
{ required: true, message: "购车情况不能为空", trigger: "change" }
],
smokeStatus: [
{ required: true, message: "是否吸烟不能为空", trigger: "change" }
],
drinkStatus: [
{ required: true, message: "是否喝酒不能为空", trigger: "change" }
],
nation: [
{ required: true, message: "民族不能为空", trigger: "blur" }
],
childStatus: [
{ required: true, message: "有没有小孩不能为空", trigger: "change" }
],
familyBackground: [
{ required: true, message: "家庭背景不能为空", trigger: "blur" }
],
familyRanking: [
{ required: true, message: "家中排行不能为空", trigger: "blur" }
],
loveAtDistance: [
{ required: true, message: "是否接受异地恋不能为空", trigger: "blur" }
],
whenMarriage: [
{ required: true, message: "何时结婚不能为空", trigger: "blur" }
],
wantChild: [
{ required: true, message: "是否要小孩不能为空", trigger: "blur" }
],
liveAtParent: [
{ required: true, message: "愿与对方父母同住不能为空", trigger: "blur" }
],
findTag: [
{ required: true, message: "交友目的不能为空", trigger: "blur" }
],
graduateSchool: [
{ required: true, message: "毕业院校不能为空", trigger: "blur" }
],
hobbys: [
{ required: true, message: "兴趣爱好不能为空", trigger: "blur" }
],
filterAge: [
{ required: true, message: "择偶条件-年龄不能为空", trigger: "blur" }
],
filterHeight: [
{ required: true, message: "择偶条件-身高不能为空", trigger: "blur" }
],
filterSomatotype: [
{ required: true, message: "择偶条件-体型不能为空", trigger: "change" }
],
filterMarriage: [
{ required: true, message: "择偶条件-婚况不能为空", trigger: "blur" }
],
filterEducation: [
{ required: true, message: "择偶条件-学历不能为空", trigger: "blur" }
],
filterResidence: [
{ required: true, message: "择偶条件-地区不能为空", trigger: "blur" }
],
filterAnnualIncome: [
{ required: true, message: "择偶条件-年收入不能为空", trigger: "blur" }
],
filterChildStatus: [
{ required: true, message: "择偶条件-小孩情况不能为空", trigger: "change" }
],
filterHousingStatus: [
{ required: true, message: "择偶条件-住房情况不能为空", trigger: "change" }
],
filterCarStatus: [
{ required: true, message: "择偶条件-购车情况不能为空", trigger: "change" }
]
}
};
},
created() {
this.getList();
},
methods: {
/** 查询用户信息列表 */
getList() {
this.loading = true;
listUserInfo(this.queryParams).then(response => {
this.userInfoList = response.rows;
this.total = response.total;
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
id: undefined,
userId: undefined,
usercode: undefined,
housingStatus: undefined,
carStatus: undefined,
smokeStatus: undefined,
drinkStatus: undefined,
nation: undefined,
childStatus: undefined,
familyBackground: undefined,
familyRanking: undefined,
loveAtDistance: undefined,
whenMarriage: undefined,
wantChild: undefined,
liveAtParent: undefined,
findTag: undefined,
graduateSchool: undefined,
hobbys: undefined,
filterAge: undefined,
filterHeight: undefined,
filterSomatotype: undefined,
filterMarriage: undefined,
filterEducation: undefined,
filterResidence: undefined,
filterAnnualIncome: undefined,
filterChildStatus: undefined,
filterHousingStatus: undefined,
filterCarStatus: undefined
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map(item => item.id)
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加用户信息";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.loading = true;
this.reset();
const id = row.id || this.ids
getUserInfo(id).then(response => {
this.loading = false;
this.form = response.data;
this.open = true;
this.title = "修改用户信息";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
this.buttonLoading = true;
if (this.form.id != null) {
updateUserInfo(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
} else {
addUserInfo(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal.confirm('是否确认删除用户信息编号为"' + ids + '"的数据项?').then(() => {
this.loading = true;
return delUserInfo(ids);
}).then(() => {
this.loading = false;
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {
}).finally(() => {
this.loading = false;
});
},
/** 导出按钮操作 */
handleExport() {
this.download('xq/userInfo/export', {
...this.queryParams
}, `userInfo_${new Date().getTime()}.xlsx`)
}
}
};
</script>

View File

@@ -0,0 +1,402 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="用户ID" prop="userId">
<el-input
v-model="queryParams.userId"
placeholder="请输入用户ID"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="用户号" prop="usercode">
<el-input
v-model="queryParams.usercode"
placeholder="请输入用户号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="审核备注" prop="auditRemark">
<el-input
v-model="queryParams.auditRemark"
placeholder="请输入审核备注"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="审核时间" prop="auditTime">
<el-date-picker clearable
v-model="queryParams.auditTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择审核时间">
</el-date-picker>
</el-form-item>
<el-form-item label="审核人ID" prop="auditOpId">
<el-input
v-model="queryParams.auditOpId"
placeholder="请输入审核人ID"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="审核人名称" prop="auditOpName">
<el-input
v-model="queryParams.auditOpName"
placeholder="请输入审核人名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="审核人IP" prop="auditIp">
<el-date-picker clearable
v-model="queryParams.auditIp"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择审核人IP">
</el-date-picker>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['xq:userInfoAudit:add']"
>新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="success"
plain
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['xq:userInfoAudit:edit']"
>修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['xq:userInfoAudit:remove']"
>删除</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['xq:userInfoAudit:export']"
>导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="userInfoAuditList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="" align="center" prop="id" v-if="true"/>
<el-table-column label="用户ID" align="center" prop="userId" />
<el-table-column label="用户号" align="center" prop="usercode" />
<el-table-column label="1-头像 1-自我描述" align="center" prop="infoType" />
<el-table-column label="1-待审核 2-审核成功 3-审核失败" align="center" prop="auditStatus" />
<el-table-column label="审核备注" align="center" prop="auditRemark" />
<el-table-column label="审核时间" align="center" prop="auditTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.auditTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="审核人ID" align="center" prop="auditOpId" />
<el-table-column label="审核人名称" align="center" prop="auditOpName" />
<el-table-column label="审核人IP" align="center" prop="auditIp" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.auditIp, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['xq:userInfoAudit:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['xq:userInfoAudit:remove']"
>删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改用户信息审核对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="用户ID" prop="userId">
<el-input v-model="form.userId" placeholder="请输入用户ID" />
</el-form-item>
<el-form-item label="用户号" prop="usercode">
<el-input v-model="form.usercode" placeholder="请输入用户号" />
</el-form-item>
<el-form-item label="审核备注" prop="auditRemark">
<el-input v-model="form.auditRemark" placeholder="请输入审核备注" />
</el-form-item>
<el-form-item label="审核时间" prop="auditTime">
<el-date-picker clearable
v-model="form.auditTime"
type="datetime"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择审核时间">
</el-date-picker>
</el-form-item>
<el-form-item label="审核人ID" prop="auditOpId">
<el-input v-model="form.auditOpId" placeholder="请输入审核人ID" />
</el-form-item>
<el-form-item label="审核人名称" prop="auditOpName">
<el-input v-model="form.auditOpName" placeholder="请输入审核人名称" />
</el-form-item>
<el-form-item label="审核人IP" prop="auditIp">
<el-date-picker clearable
v-model="form.auditIp"
type="datetime"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择审核人IP">
</el-date-picker>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button :loading="buttonLoading" type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { listUserInfoAudit, getUserInfoAudit, delUserInfoAudit, addUserInfoAudit, updateUserInfoAudit } from "@/api/xq/userInfoAudit";
export default {
name: "UserInfoAudit",
data() {
return {
// 按钮loading
buttonLoading: false,
// 遮罩层
loading: true,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 用户信息审核表格数据
userInfoAuditList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
userId: undefined,
usercode: undefined,
infoType: undefined,
auditStatus: undefined,
auditRemark: undefined,
auditTime: undefined,
auditOpId: undefined,
auditOpName: undefined,
auditIp: undefined,
},
// 表单参数
form: {},
// 表单校验
rules: {
id: [
{ required: true, message: "不能为空", trigger: "blur" }
],
userId: [
{ required: true, message: "用户ID不能为空", trigger: "blur" }
],
usercode: [
{ required: true, message: "用户号不能为空", trigger: "blur" }
],
infoType: [
{ required: true, message: "1-头像 1-自我描述不能为空", trigger: "change" }
],
auditStatus: [
{ required: true, message: "1-待审核 2-审核成功 3-审核失败不能为空", trigger: "change" }
],
auditRemark: [
{ required: true, message: "审核备注不能为空", trigger: "blur" }
],
auditTime: [
{ required: true, message: "审核时间不能为空", trigger: "blur" }
],
auditOpId: [
{ required: true, message: "审核人ID不能为空", trigger: "blur" }
],
auditOpName: [
{ required: true, message: "审核人名称不能为空", trigger: "blur" }
],
auditIp: [
{ required: true, message: "审核人IP不能为空", trigger: "blur" }
],
createTime: [
{ required: true, message: "创建时间不能为空", trigger: "blur" }
],
}
};
},
created() {
this.getList();
},
methods: {
/** 查询用户信息审核列表 */
getList() {
this.loading = true;
listUserInfoAudit(this.queryParams).then(response => {
this.userInfoAuditList = response.rows;
this.total = response.total;
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
id: undefined,
userId: undefined,
usercode: undefined,
infoType: undefined,
auditStatus: undefined,
auditRemark: undefined,
auditTime: undefined,
auditOpId: undefined,
auditOpName: undefined,
auditIp: undefined,
createTime: undefined,
updateTime: undefined
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map(item => item.id)
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加用户信息审核";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.loading = true;
this.reset();
const id = row.id || this.ids
getUserInfoAudit(id).then(response => {
this.loading = false;
this.form = response.data;
this.open = true;
this.title = "修改用户信息审核";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
this.buttonLoading = true;
if (this.form.id != null) {
updateUserInfoAudit(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
} else {
addUserInfoAudit(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal.confirm('是否确认删除用户信息审核编号为"' + ids + '"的数据项?').then(() => {
this.loading = true;
return delUserInfoAudit(ids);
}).then(() => {
this.loading = false;
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {
}).finally(() => {
this.loading = false;
});
},
/** 导出按钮操作 */
handleExport() {
this.download('xq/userInfoAudit/export', {
...this.queryParams
}, `userInfoAudit_${new Date().getTime()}.xlsx`)
}
}
};
</script>

View File

@@ -0,0 +1,390 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="用户ID" prop="userId">
<el-input
v-model="queryParams.userId"
placeholder="请输入用户ID"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="用户号" prop="usercode">
<el-input
v-model="queryParams.usercode"
placeholder="请输入用户号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="最后登录IP" prop="lastLoginIp">
<el-input
v-model="queryParams.lastLoginIp"
placeholder="请输入最后登录IP"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="最后登陆时间" prop="lastLoginTime">
<el-date-picker clearable
v-model="queryParams.lastLoginTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择最后登陆时间">
</el-date-picker>
</el-form-item>
<el-form-item label="最后登录位置" prop="lastLocation">
<el-input
v-model="queryParams.lastLocation"
placeholder="请输入最后登录位置"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="注册IP" prop="regIp">
<el-input
v-model="queryParams.regIp"
placeholder="请输入注册IP"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="注册时间" prop="regTime">
<el-date-picker clearable
v-model="queryParams.regTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择注册时间">
</el-date-picker>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['xq:userLogin:add']"
>新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="success"
plain
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['xq:userLogin:edit']"
>修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['xq:userLogin:remove']"
>删除</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['xq:userLogin:export']"
>导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="userLoginList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="" align="center" prop="id" v-if="true"/>
<el-table-column label="用户ID" align="center" prop="userId" />
<el-table-column label="用户号" align="center" prop="usercode" />
<el-table-column label="最后登录IP" align="center" prop="lastLoginIp" />
<el-table-column label="最后登陆时间" align="center" prop="lastLoginTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.lastLoginTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="最后登录位置" align="center" prop="lastLocation" />
<el-table-column label="注册IP" align="center" prop="regIp" />
<el-table-column label="注册时间" align="center" prop="regTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.regTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['xq:userLogin:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['xq:userLogin:remove']"
>删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改用户登陆对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="用户ID" prop="userId">
<el-input v-model="form.userId" placeholder="请输入用户ID" />
</el-form-item>
<el-form-item label="用户号" prop="usercode">
<el-input v-model="form.usercode" placeholder="请输入用户号" />
</el-form-item>
<el-form-item label="最后登录IP" prop="lastLoginIp">
<el-input v-model="form.lastLoginIp" placeholder="请输入最后登录IP" />
</el-form-item>
<el-form-item label="最后登陆时间" prop="lastLoginTime">
<el-date-picker clearable
v-model="form.lastLoginTime"
type="datetime"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择最后登陆时间">
</el-date-picker>
</el-form-item>
<el-form-item label="最后登录位置" prop="lastLocation">
<el-input v-model="form.lastLocation" placeholder="请输入最后登录位置" />
</el-form-item>
<el-form-item label="注册IP" prop="regIp">
<el-input v-model="form.regIp" placeholder="请输入注册IP" />
</el-form-item>
<el-form-item label="注册时间" prop="regTime">
<el-date-picker clearable
v-model="form.regTime"
type="datetime"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择注册时间">
</el-date-picker>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button :loading="buttonLoading" type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { listUserLogin, getUserLogin, delUserLogin, addUserLogin, updateUserLogin } from "@/api/xq/userLogin";
export default {
name: "UserLogin",
data() {
return {
// 按钮loading
buttonLoading: false,
// 遮罩层
loading: true,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 用户登陆表格数据
userLoginList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
userId: undefined,
usercode: undefined,
lastLoginIp: undefined,
lastLoginTime: undefined,
lastLocation: undefined,
regIp: undefined,
regTime: undefined,
},
// 表单参数
form: {},
// 表单校验
rules: {
id: [
{ required: true, message: "不能为空", trigger: "blur" }
],
userId: [
{ required: true, message: "用户ID不能为空", trigger: "blur" }
],
usercode: [
{ required: true, message: "用户号不能为空", trigger: "blur" }
],
lastLoginIp: [
{ required: true, message: "最后登录IP不能为空", trigger: "blur" }
],
lastLoginTime: [
{ required: true, message: "最后登陆时间不能为空", trigger: "blur" }
],
lastLocation: [
{ required: true, message: "最后登录位置不能为空", trigger: "blur" }
],
regIp: [
{ required: true, message: "注册IP不能为空", trigger: "blur" }
],
regTime: [
{ required: true, message: "注册时间不能为空", trigger: "blur" }
],
createTime: [
{ required: true, message: "创建时间不能为空", trigger: "blur" }
],
}
};
},
created() {
this.getList();
},
methods: {
/** 查询用户登陆列表 */
getList() {
this.loading = true;
listUserLogin(this.queryParams).then(response => {
this.userLoginList = response.rows;
this.total = response.total;
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
id: undefined,
userId: undefined,
usercode: undefined,
lastLoginIp: undefined,
lastLoginTime: undefined,
lastLocation: undefined,
regIp: undefined,
regTime: undefined,
createTime: undefined,
updateTime: undefined
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map(item => item.id)
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加用户登陆";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.loading = true;
this.reset();
const id = row.id || this.ids
getUserLogin(id).then(response => {
this.loading = false;
this.form = response.data;
this.open = true;
this.title = "修改用户登陆";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
this.buttonLoading = true;
if (this.form.id != null) {
updateUserLogin(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
} else {
addUserLogin(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal.confirm('是否确认删除用户登陆编号为"' + ids + '"的数据项?').then(() => {
this.loading = true;
return delUserLogin(ids);
}).then(() => {
this.loading = false;
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {
}).finally(() => {
this.loading = false;
});
},
/** 导出按钮操作 */
handleExport() {
this.download('xq/userLogin/export', {
...this.queryParams
}, `userLogin_${new Date().getTime()}.xlsx`)
}
}
};
</script>

View File

@@ -0,0 +1,413 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="用户ID" prop="userId">
<el-input
v-model="queryParams.userId"
placeholder="请输入用户ID"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="用户号" prop="usercode">
<el-input
v-model="queryParams.usercode"
placeholder="请输入用户号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="相册" prop="picture">
<el-input
v-model="queryParams.picture"
placeholder="请输入相册"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="审核备注" prop="auditRemark">
<el-input
v-model="queryParams.auditRemark"
placeholder="请输入审核备注"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="审核时间" prop="auditTime">
<el-date-picker clearable
v-model="queryParams.auditTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择审核时间">
</el-date-picker>
</el-form-item>
<el-form-item label="审核人ID" prop="auditOpId">
<el-input
v-model="queryParams.auditOpId"
placeholder="请输入审核人ID"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="审核人名称" prop="auditOpName">
<el-input
v-model="queryParams.auditOpName"
placeholder="请输入审核人名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="审核人IP" prop="auditIp">
<el-date-picker clearable
v-model="queryParams.auditIp"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择审核人IP">
</el-date-picker>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['xq:userPictures:add']"
>新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="success"
plain
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['xq:userPictures:edit']"
>修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['xq:userPictures:remove']"
>删除</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['xq:userPictures:export']"
>导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="userPicturesList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="" align="center" prop="id" v-if="true"/>
<el-table-column label="用户ID" align="center" prop="userId" />
<el-table-column label="用户号" align="center" prop="usercode" />
<el-table-column label="相册" align="center" prop="picture" />
<el-table-column label="1-待审核 2-审核成功 3-审核失败" align="center" prop="auditStatus" />
<el-table-column label="审核备注" align="center" prop="auditRemark" />
<el-table-column label="审核时间" align="center" prop="auditTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.auditTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="审核人ID" align="center" prop="auditOpId" />
<el-table-column label="审核人名称" align="center" prop="auditOpName" />
<el-table-column label="审核人IP" align="center" prop="auditIp" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.auditIp, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['xq:userPictures:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['xq:userPictures:remove']"
>删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改用户相册管理对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="用户ID" prop="userId">
<el-input v-model="form.userId" placeholder="请输入用户ID" />
</el-form-item>
<el-form-item label="用户号" prop="usercode">
<el-input v-model="form.usercode" placeholder="请输入用户号" />
</el-form-item>
<el-form-item label="相册" prop="picture">
<el-input v-model="form.picture" placeholder="请输入相册" />
</el-form-item>
<el-form-item label="审核备注" prop="auditRemark">
<el-input v-model="form.auditRemark" placeholder="请输入审核备注" />
</el-form-item>
<el-form-item label="审核时间" prop="auditTime">
<el-date-picker clearable
v-model="form.auditTime"
type="datetime"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择审核时间">
</el-date-picker>
</el-form-item>
<el-form-item label="审核人ID" prop="auditOpId">
<el-input v-model="form.auditOpId" placeholder="请输入审核人ID" />
</el-form-item>
<el-form-item label="审核人名称" prop="auditOpName">
<el-input v-model="form.auditOpName" placeholder="请输入审核人名称" />
</el-form-item>
<el-form-item label="审核人IP" prop="auditIp">
<el-date-picker clearable
v-model="form.auditIp"
type="datetime"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择审核人IP">
</el-date-picker>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button :loading="buttonLoading" type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { listUserPictures, getUserPictures, delUserPictures, addUserPictures, updateUserPictures } from "@/api/xq/userPictures";
export default {
name: "UserPictures",
data() {
return {
// 按钮loading
buttonLoading: false,
// 遮罩层
loading: true,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 用户相册管理表格数据
userPicturesList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
userId: undefined,
usercode: undefined,
picture: undefined,
auditStatus: undefined,
auditRemark: undefined,
auditTime: undefined,
auditOpId: undefined,
auditOpName: undefined,
auditIp: undefined,
},
// 表单参数
form: {},
// 表单校验
rules: {
id: [
{ required: true, message: "不能为空", trigger: "blur" }
],
userId: [
{ required: true, message: "用户ID不能为空", trigger: "blur" }
],
usercode: [
{ required: true, message: "用户号不能为空", trigger: "blur" }
],
picture: [
{ required: true, message: "相册不能为空", trigger: "blur" }
],
auditStatus: [
{ required: true, message: "1-待审核 2-审核成功 3-审核失败不能为空", trigger: "change" }
],
auditRemark: [
{ required: true, message: "审核备注不能为空", trigger: "blur" }
],
auditTime: [
{ required: true, message: "审核时间不能为空", trigger: "blur" }
],
auditOpId: [
{ required: true, message: "审核人ID不能为空", trigger: "blur" }
],
auditOpName: [
{ required: true, message: "审核人名称不能为空", trigger: "blur" }
],
auditIp: [
{ required: true, message: "审核人IP不能为空", trigger: "blur" }
],
createTime: [
{ required: true, message: "创建时间不能为空", trigger: "blur" }
],
}
};
},
created() {
this.getList();
},
methods: {
/** 查询用户相册管理列表 */
getList() {
this.loading = true;
listUserPictures(this.queryParams).then(response => {
this.userPicturesList = response.rows;
this.total = response.total;
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
id: undefined,
userId: undefined,
usercode: undefined,
picture: undefined,
auditStatus: undefined,
auditRemark: undefined,
auditTime: undefined,
auditOpId: undefined,
auditOpName: undefined,
auditIp: undefined,
createTime: undefined,
updateTime: undefined
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map(item => item.id)
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加用户相册管理";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.loading = true;
this.reset();
const id = row.id || this.ids
getUserPictures(id).then(response => {
this.loading = false;
this.form = response.data;
this.open = true;
this.title = "修改用户相册管理";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
this.buttonLoading = true;
if (this.form.id != null) {
updateUserPictures(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
} else {
addUserPictures(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal.confirm('是否确认删除用户相册管理编号为"' + ids + '"的数据项?').then(() => {
this.loading = true;
return delUserPictures(ids);
}).then(() => {
this.loading = false;
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {
}).finally(() => {
this.loading = false;
});
},
/** 导出按钮操作 */
handleExport() {
this.download('xq/userPictures/export', {
...this.queryParams
}, `userPictures_${new Date().getTime()}.xlsx`)
}
}
};
</script>

View File

@@ -0,0 +1,325 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="用户ID" prop="userId">
<el-input
v-model="queryParams.userId"
placeholder="请输入用户ID"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="用户号" prop="usercode">
<el-input
v-model="queryParams.usercode"
placeholder="请输入用户号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="会员到期时间" prop="vipTimeout">
<el-date-picker clearable
v-model="queryParams.vipTimeout"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择会员到期时间">
</el-date-picker>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['xq:userVip:add']"
>新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="success"
plain
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['xq:userVip:edit']"
>修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['xq:userVip:remove']"
>删除</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['xq:userVip:export']"
>导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="userVipList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="" align="center" prop="id" v-if="true"/>
<el-table-column label="用户ID" align="center" prop="userId" />
<el-table-column label="用户号" align="center" prop="usercode" />
<el-table-column label="1-普通会员 2-黄金会员 3-钻石会员" align="center" prop="vipType" />
<el-table-column label="会员到期时间" align="center" prop="vipTimeout" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.vipTimeout, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="1-正常 2-已过期 3-已取消" align="center" prop="vipStatus" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['xq:userVip:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['xq:userVip:remove']"
>删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改VIP用户对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="用户ID" prop="userId">
<el-input v-model="form.userId" placeholder="请输入用户ID" />
</el-form-item>
<el-form-item label="用户号" prop="usercode">
<el-input v-model="form.usercode" placeholder="请输入用户号" />
</el-form-item>
<el-form-item label="会员到期时间" prop="vipTimeout">
<el-date-picker clearable
v-model="form.vipTimeout"
type="datetime"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择会员到期时间">
</el-date-picker>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button :loading="buttonLoading" type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { listUserVip, getUserVip, delUserVip, addUserVip, updateUserVip } from "@/api/xq/userVip";
export default {
name: "UserVip",
data() {
return {
// 按钮loading
buttonLoading: false,
// 遮罩层
loading: true,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// VIP用户表格数据
userVipList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
userId: undefined,
usercode: undefined,
vipType: undefined,
vipTimeout: undefined,
vipStatus: undefined,
},
// 表单参数
form: {},
// 表单校验
rules: {
id: [
{ required: true, message: "不能为空", trigger: "blur" }
],
userId: [
{ required: true, message: "用户ID不能为空", trigger: "blur" }
],
usercode: [
{ required: true, message: "用户号不能为空", trigger: "blur" }
],
vipType: [
{ required: true, message: "1-普通会员 2-黄金会员 3-钻石会员不能为空", trigger: "change" }
],
vipTimeout: [
{ required: true, message: "会员到期时间不能为空", trigger: "blur" }
],
vipStatus: [
{ required: true, message: "1-正常 2-已过期 3-已取消不能为空", trigger: "change" }
],
createTime: [
{ required: true, message: "创建时间不能为空", trigger: "blur" }
],
}
};
},
created() {
this.getList();
},
methods: {
/** 查询VIP用户列表 */
getList() {
this.loading = true;
listUserVip(this.queryParams).then(response => {
this.userVipList = response.rows;
this.total = response.total;
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
id: undefined,
userId: undefined,
usercode: undefined,
vipType: undefined,
vipTimeout: undefined,
vipStatus: undefined,
createTime: undefined,
updateTime: undefined
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map(item => item.id)
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加VIP用户";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.loading = true;
this.reset();
const id = row.id || this.ids
getUserVip(id).then(response => {
this.loading = false;
this.form = response.data;
this.open = true;
this.title = "修改VIP用户";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
this.buttonLoading = true;
if (this.form.id != null) {
updateUserVip(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
} else {
addUserVip(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal.confirm('是否确认删除VIP用户编号为"' + ids + '"的数据项?').then(() => {
this.loading = true;
return delUserVip(ids);
}).then(() => {
this.loading = false;
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {
}).finally(() => {
this.loading = false;
});
},
/** 导出按钮操作 */
handleExport() {
this.download('xq/userVip/export', {
...this.queryParams
}, `userVip_${new Date().getTime()}.xlsx`)
}
}
};
</script>

View File

@@ -0,0 +1,532 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="用户ID" prop="userId">
<el-input
v-model="queryParams.userId"
placeholder="请输入用户ID"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="用户号" prop="usercode">
<el-input
v-model="queryParams.usercode"
placeholder="请输入用户号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="跟踪ID" prop="traceId">
<el-input
v-model="queryParams.traceId"
placeholder="请输入跟踪ID"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="订单号" prop="orderNo">
<el-input
v-model="queryParams.orderNo"
placeholder="请输入订单号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="提现金额" prop="withdrawMoney">
<el-input
v-model="queryParams.withdrawMoney"
placeholder="请输入提现金额"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="真实提现金额" prop="realWithdrawMoney">
<el-input
v-model="queryParams.realWithdrawMoney"
placeholder="请输入真实提现金额"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="提现手续费金额" prop="withdrawFees">
<el-input
v-model="queryParams.withdrawFees"
placeholder="请输入提现手续费金额"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="提现手续费" prop="withdrawFeesCate">
<el-input
v-model="queryParams.withdrawFeesCate"
placeholder="请输入提现手续费"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="是否打款" prop="pay">
<el-input
v-model="queryParams.pay"
placeholder="请输入是否打款"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="审核备注" prop="auditRemark">
<el-input
v-model="queryParams.auditRemark"
placeholder="请输入审核备注"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="审核时间" prop="auditTime">
<el-date-picker clearable
v-model="queryParams.auditTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择审核时间">
</el-date-picker>
</el-form-item>
<el-form-item label="审核人ID" prop="auditOpId">
<el-input
v-model="queryParams.auditOpId"
placeholder="请输入审核人ID"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="审核人名称" prop="auditOpName">
<el-input
v-model="queryParams.auditOpName"
placeholder="请输入审核人名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="审核人IP" prop="auditIp">
<el-date-picker clearable
v-model="queryParams.auditIp"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择审核人IP">
</el-date-picker>
</el-form-item>
<el-form-item label="删除标记" prop="deleteFlag">
<el-input
v-model="queryParams.deleteFlag"
placeholder="请输入删除标记"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['xq:userWithdraw:add']"
>新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="success"
plain
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['xq:userWithdraw:edit']"
>修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['xq:userWithdraw:remove']"
>删除</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['xq:userWithdraw:export']"
>导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="userWithdrawList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="" align="center" prop="id" v-if="true"/>
<el-table-column label="用户ID" align="center" prop="userId" />
<el-table-column label="用户号" align="center" prop="usercode" />
<el-table-column label="跟踪ID" align="center" prop="traceId" />
<el-table-column label="订单号" align="center" prop="orderNo" />
<el-table-column label="提现金额" align="center" prop="withdrawMoney" />
<el-table-column label="真实提现金额" align="center" prop="realWithdrawMoney" />
<el-table-column label="提现手续费金额" align="center" prop="withdrawFees" />
<el-table-column label="提现手续费" align="center" prop="withdrawFeesCate" />
<el-table-column label="是否打款" align="center" prop="pay" />
<el-table-column label="1-待审核 2-审核成功 3-审核失败" align="center" prop="auditStatus" />
<el-table-column label="审核备注" align="center" prop="auditRemark" />
<el-table-column label="审核时间" align="center" prop="auditTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.auditTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="审核人ID" align="center" prop="auditOpId" />
<el-table-column label="审核人名称" align="center" prop="auditOpName" />
<el-table-column label="审核人IP" align="center" prop="auditIp" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.auditIp, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="删除标记" align="center" prop="deleteFlag" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['xq:userWithdraw:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['xq:userWithdraw:remove']"
>删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改用户提现审核对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="用户ID" prop="userId">
<el-input v-model="form.userId" placeholder="请输入用户ID" />
</el-form-item>
<el-form-item label="用户号" prop="usercode">
<el-input v-model="form.usercode" placeholder="请输入用户号" />
</el-form-item>
<el-form-item label="跟踪ID" prop="traceId">
<el-input v-model="form.traceId" placeholder="请输入跟踪ID" />
</el-form-item>
<el-form-item label="订单号" prop="orderNo">
<el-input v-model="form.orderNo" placeholder="请输入订单号" />
</el-form-item>
<el-form-item label="提现金额" prop="withdrawMoney">
<el-input v-model="form.withdrawMoney" placeholder="请输入提现金额" />
</el-form-item>
<el-form-item label="真实提现金额" prop="realWithdrawMoney">
<el-input v-model="form.realWithdrawMoney" placeholder="请输入真实提现金额" />
</el-form-item>
<el-form-item label="提现手续费金额" prop="withdrawFees">
<el-input v-model="form.withdrawFees" placeholder="请输入提现手续费金额" />
</el-form-item>
<el-form-item label="提现手续费" prop="withdrawFeesCate">
<el-input v-model="form.withdrawFeesCate" placeholder="请输入提现手续费" />
</el-form-item>
<el-form-item label="是否打款" prop="pay">
<el-input v-model="form.pay" placeholder="请输入是否打款" />
</el-form-item>
<el-form-item label="审核备注" prop="auditRemark">
<el-input v-model="form.auditRemark" placeholder="请输入审核备注" />
</el-form-item>
<el-form-item label="审核时间" prop="auditTime">
<el-date-picker clearable
v-model="form.auditTime"
type="datetime"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择审核时间">
</el-date-picker>
</el-form-item>
<el-form-item label="审核人ID" prop="auditOpId">
<el-input v-model="form.auditOpId" placeholder="请输入审核人ID" />
</el-form-item>
<el-form-item label="审核人名称" prop="auditOpName">
<el-input v-model="form.auditOpName" placeholder="请输入审核人名称" />
</el-form-item>
<el-form-item label="审核人IP" prop="auditIp">
<el-date-picker clearable
v-model="form.auditIp"
type="datetime"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择审核人IP">
</el-date-picker>
</el-form-item>
<el-form-item label="删除标记" prop="deleteFlag">
<el-input v-model="form.deleteFlag" placeholder="请输入删除标记" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button :loading="buttonLoading" type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { listUserWithdraw, getUserWithdraw, delUserWithdraw, addUserWithdraw, updateUserWithdraw } from "@/api/xq/userWithdraw";
export default {
name: "UserWithdraw",
data() {
return {
// 按钮loading
buttonLoading: false,
// 遮罩层
loading: true,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 用户提现审核表格数据
userWithdrawList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
userId: undefined,
usercode: undefined,
traceId: undefined,
orderNo: undefined,
withdrawMoney: undefined,
realWithdrawMoney: undefined,
withdrawFees: undefined,
withdrawFeesCate: undefined,
pay: undefined,
auditStatus: undefined,
auditRemark: undefined,
auditTime: undefined,
auditOpId: undefined,
auditOpName: undefined,
auditIp: undefined,
deleteFlag: undefined
},
// 表单参数
form: {},
// 表单校验
rules: {
id: [
{ required: true, message: "不能为空", trigger: "blur" }
],
userId: [
{ required: true, message: "用户ID不能为空", trigger: "blur" }
],
usercode: [
{ required: true, message: "用户号不能为空", trigger: "blur" }
],
traceId: [
{ required: true, message: "跟踪ID不能为空", trigger: "blur" }
],
orderNo: [
{ required: true, message: "订单号不能为空", trigger: "blur" }
],
withdrawMoney: [
{ required: true, message: "提现金额不能为空", trigger: "blur" }
],
realWithdrawMoney: [
{ required: true, message: "真实提现金额不能为空", trigger: "blur" }
],
withdrawFees: [
{ required: true, message: "提现手续费金额不能为空", trigger: "blur" }
],
withdrawFeesCate: [
{ required: true, message: "提现手续费不能为空", trigger: "blur" }
],
pay: [
{ required: true, message: "是否打款不能为空", trigger: "blur" }
],
auditStatus: [
{ required: true, message: "1-待审核 2-审核成功 3-审核失败不能为空", trigger: "change" }
],
auditRemark: [
{ required: true, message: "审核备注不能为空", trigger: "blur" }
],
auditTime: [
{ required: true, message: "审核时间不能为空", trigger: "blur" }
],
auditOpId: [
{ required: true, message: "审核人ID不能为空", trigger: "blur" }
],
auditOpName: [
{ required: true, message: "审核人名称不能为空", trigger: "blur" }
],
auditIp: [
{ required: true, message: "审核人IP不能为空", trigger: "blur" }
],
createTime: [
{ required: true, message: "创建时间不能为空", trigger: "blur" }
],
deleteFlag: [
{ required: true, message: "删除标记不能为空", trigger: "blur" }
]
}
};
},
created() {
this.getList();
},
methods: {
/** 查询用户提现审核列表 */
getList() {
this.loading = true;
listUserWithdraw(this.queryParams).then(response => {
this.userWithdrawList = response.rows;
this.total = response.total;
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
id: undefined,
userId: undefined,
usercode: undefined,
traceId: undefined,
orderNo: undefined,
withdrawMoney: undefined,
realWithdrawMoney: undefined,
withdrawFees: undefined,
withdrawFeesCate: undefined,
pay: undefined,
auditStatus: undefined,
auditRemark: undefined,
auditTime: undefined,
auditOpId: undefined,
auditOpName: undefined,
auditIp: undefined,
createTime: undefined,
updateTime: undefined,
deleteFlag: undefined
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map(item => item.id)
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加用户提现审核";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.loading = true;
this.reset();
const id = row.id || this.ids
getUserWithdraw(id).then(response => {
this.loading = false;
this.form = response.data;
this.open = true;
this.title = "修改用户提现审核";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
this.buttonLoading = true;
if (this.form.id != null) {
updateUserWithdraw(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
} else {
addUserWithdraw(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal.confirm('是否确认删除用户提现审核编号为"' + ids + '"的数据项?').then(() => {
this.loading = true;
return delUserWithdraw(ids);
}).then(() => {
this.loading = false;
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {
}).finally(() => {
this.loading = false;
});
},
/** 导出按钮操作 */
handleExport() {
this.download('xq/userWithdraw/export', {
...this.queryParams
}, `userWithdraw_${new Date().getTime()}.xlsx`)
}
}
};
</script>

View File

@@ -0,0 +1,476 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="用户ID" prop="userId">
<el-input
v-model="queryParams.userId"
placeholder="请输入用户ID"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="用户号" prop="usercode">
<el-input
v-model="queryParams.usercode"
placeholder="请输入用户号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="VIP-ID" prop="vipId">
<el-input
v-model="queryParams.vipId"
placeholder="请输入VIP-ID"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="1-月卡 2-季卡 3-年卡" prop="vipTime">
<el-input
v-model="queryParams.vipTime"
placeholder="请输入1-月卡 2-季卡 3-年卡"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="会员价格" prop="vipPrice">
<el-input
v-model="queryParams.vipPrice"
placeholder="请输入会员价格"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="订单号" prop="orderNo">
<el-input
v-model="queryParams.orderNo"
placeholder="请输入订单号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="支付时间" prop="payTime">
<el-date-picker clearable
v-model="queryParams.payTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择支付时间">
</el-date-picker>
</el-form-item>
<el-form-item label="appId" prop="appid">
<el-input
v-model="queryParams.appid"
placeholder="请输入appId"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="" prop="operateIp">
<el-input
v-model="queryParams.operateIp"
placeholder="请输入"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="是否为后台管理新增" prop="admin">
<el-input
v-model="queryParams.admin"
placeholder="请输入是否为后台管理新增"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="后台操作管理员ID" prop="adminId">
<el-input
v-model="queryParams.adminId"
placeholder="请输入后台操作管理员ID"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['xq:vipOrder:add']"
>新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="success"
plain
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['xq:vipOrder:edit']"
>修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['xq:vipOrder:remove']"
>删除</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['xq:vipOrder:export']"
>导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="vipOrderList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="" align="center" prop="id" v-if="true"/>
<el-table-column label="用户ID" align="center" prop="userId" />
<el-table-column label="用户号" align="center" prop="usercode" />
<el-table-column label="VIP-ID" align="center" prop="vipId" />
<el-table-column label="1-普通会员 2-黄金会员 3-钻石会员" align="center" prop="vipType" />
<el-table-column label="1-月卡 2-季卡 3-年卡" align="center" prop="vipTime" />
<el-table-column label="会员价格" align="center" prop="vipPrice" />
<el-table-column label="订单号" align="center" prop="orderNo" />
<el-table-column label="平台" align="center" prop="platformType" />
<el-table-column label="状态 0-待支付 1-已支付 5-已退款 10-无需支付" align="center" prop="payStatus" />
<el-table-column label="支付时间" align="center" prop="payTime" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.payTime, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="appId" align="center" prop="appid" />
<el-table-column label="" align="center" prop="returnContent" />
<el-table-column label="" align="center" prop="operateIp" />
<el-table-column label="是否为后台管理新增" align="center" prop="admin" />
<el-table-column label="后台操作管理员ID" align="center" prop="adminId" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['xq:vipOrder:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['xq:vipOrder:remove']"
>删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改VIP订单对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="用户ID" prop="userId">
<el-input v-model="form.userId" placeholder="请输入用户ID" />
</el-form-item>
<el-form-item label="用户号" prop="usercode">
<el-input v-model="form.usercode" placeholder="请输入用户号" />
</el-form-item>
<el-form-item label="VIP-ID" prop="vipId">
<el-input v-model="form.vipId" placeholder="请输入VIP-ID" />
</el-form-item>
<el-form-item label="1-月卡 2-季卡 3-年卡" prop="vipTime">
<el-input v-model="form.vipTime" placeholder="请输入1-月卡 2-季卡 3-年卡" />
</el-form-item>
<el-form-item label="会员价格" prop="vipPrice">
<el-input v-model="form.vipPrice" placeholder="请输入会员价格" />
</el-form-item>
<el-form-item label="订单号" prop="orderNo">
<el-input v-model="form.orderNo" placeholder="请输入订单号" />
</el-form-item>
<el-form-item label="支付时间" prop="payTime">
<el-date-picker clearable
v-model="form.payTime"
type="datetime"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择支付时间">
</el-date-picker>
</el-form-item>
<el-form-item label="appId" prop="appid">
<el-input v-model="form.appid" placeholder="请输入appId" />
</el-form-item>
<el-form-item label="">
<editor v-model="form.returnContent" :min-height="192"/>
</el-form-item>
<el-form-item label="" prop="operateIp">
<el-input v-model="form.operateIp" placeholder="请输入" />
</el-form-item>
<el-form-item label="是否为后台管理新增" prop="admin">
<el-input v-model="form.admin" placeholder="请输入是否为后台管理新增" />
</el-form-item>
<el-form-item label="后台操作管理员ID" prop="adminId">
<el-input v-model="form.adminId" placeholder="请输入后台操作管理员ID" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button :loading="buttonLoading" type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { listVipOrder, getVipOrder, delVipOrder, addVipOrder, updateVipOrder } from "@/api/xq/vipOrder";
export default {
name: "VipOrder",
data() {
return {
// 按钮loading
buttonLoading: false,
// 遮罩层
loading: true,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// VIP订单表格数据
vipOrderList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
userId: undefined,
usercode: undefined,
vipId: undefined,
vipType: undefined,
vipTime: undefined,
vipPrice: undefined,
orderNo: undefined,
platformType: undefined,
payStatus: undefined,
payTime: undefined,
appid: undefined,
returnContent: undefined,
operateIp: undefined,
admin: undefined,
adminId: undefined,
},
// 表单参数
form: {},
// 表单校验
rules: {
id: [
{ required: true, message: "不能为空", trigger: "blur" }
],
userId: [
{ required: true, message: "用户ID不能为空", trigger: "blur" }
],
usercode: [
{ required: true, message: "用户号不能为空", trigger: "blur" }
],
vipId: [
{ required: true, message: "VIP-ID不能为空", trigger: "blur" }
],
vipType: [
{ required: true, message: "1-普通会员 2-黄金会员 3-钻石会员不能为空", trigger: "change" }
],
vipTime: [
{ required: true, message: "1-月卡 2-季卡 3-年卡不能为空", trigger: "blur" }
],
vipPrice: [
{ required: true, message: "会员价格不能为空", trigger: "blur" }
],
orderNo: [
{ required: true, message: "订单号不能为空", trigger: "blur" }
],
platformType: [
{ required: true, message: "平台不能为空", trigger: "change" }
],
payStatus: [
{ required: true, message: "状态 0-待支付 1-已支付 5-已退款 10-无需支付不能为空", trigger: "change" }
],
payTime: [
{ required: true, message: "支付时间不能为空", trigger: "blur" }
],
appid: [
{ required: true, message: "appId不能为空", trigger: "blur" }
],
returnContent: [
{ required: true, message: "不能为空", trigger: "blur" }
],
operateIp: [
{ required: true, message: "不能为空", trigger: "blur" }
],
admin: [
{ required: true, message: "是否为后台管理新增不能为空", trigger: "blur" }
],
adminId: [
{ required: true, message: "后台操作管理员ID不能为空", trigger: "blur" }
],
createTime: [
{ required: true, message: "创建时间不能为空", trigger: "blur" }
],
}
};
},
created() {
this.getList();
},
methods: {
/** 查询VIP订单列表 */
getList() {
this.loading = true;
listVipOrder(this.queryParams).then(response => {
this.vipOrderList = response.rows;
this.total = response.total;
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
id: undefined,
userId: undefined,
usercode: undefined,
vipId: undefined,
vipType: undefined,
vipTime: undefined,
vipPrice: undefined,
orderNo: undefined,
platformType: undefined,
payStatus: undefined,
payTime: undefined,
appid: undefined,
returnContent: undefined,
operateIp: undefined,
admin: undefined,
adminId: undefined,
createTime: undefined,
updateTime: undefined
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map(item => item.id)
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加VIP订单";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.loading = true;
this.reset();
const id = row.id || this.ids
getVipOrder(id).then(response => {
this.loading = false;
this.form = response.data;
this.open = true;
this.title = "修改VIP订单";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
this.buttonLoading = true;
if (this.form.id != null) {
updateVipOrder(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
} else {
addVipOrder(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal.confirm('是否确认删除VIP订单编号为"' + ids + '"的数据项?').then(() => {
this.loading = true;
return delVipOrder(ids);
}).then(() => {
this.loading = false;
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {
}).finally(() => {
this.loading = false;
});
},
/** 导出按钮操作 */
handleExport() {
this.download('xq/vipOrder/export', {
...this.queryParams
}, `vipOrder_${new Date().getTime()}.xlsx`)
}
}
};
</script>

View File

@@ -0,0 +1,299 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="1-月卡 2-季卡 3-年卡" prop="vipTime">
<el-input
v-model="queryParams.vipTime"
placeholder="请输入1-月卡 2-季卡 3-年卡"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="会员价格" prop="vipPrice">
<el-input
v-model="queryParams.vipPrice"
placeholder="请输入会员价格"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['xq:vipPrice:add']"
>新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="success"
plain
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['xq:vipPrice:edit']"
>修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['xq:vipPrice:remove']"
>删除</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['xq:vipPrice:export']"
>导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="vipPriceList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="" align="center" prop="id" v-if="true"/>
<el-table-column label="1-普通会员 2-黄金会员 3-钻石会员" align="center" prop="vipType" />
<el-table-column label="1-月卡 2-季卡 3-年卡" align="center" prop="vipTime" />
<el-table-column label="会员价格" align="center" prop="vipPrice" />
<el-table-column label="1-启用 0-禁用" align="center" prop="enableStatus" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['xq:vipPrice:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['xq:vipPrice:remove']"
>删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改会员价格设置对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="1-月卡 2-季卡 3-年卡" prop="vipTime">
<el-input v-model="form.vipTime" placeholder="请输入1-月卡 2-季卡 3-年卡" />
</el-form-item>
<el-form-item label="会员价格" prop="vipPrice">
<el-input v-model="form.vipPrice" placeholder="请输入会员价格" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button :loading="buttonLoading" type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { listVipPrice, getVipPrice, delVipPrice, addVipPrice, updateVipPrice } from "@/api/xq/vipPrice";
export default {
name: "VipPrice",
data() {
return {
// 按钮loading
buttonLoading: false,
// 遮罩层
loading: true,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 会员价格设置表格数据
vipPriceList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
vipType: undefined,
vipTime: undefined,
vipPrice: undefined,
enableStatus: undefined,
},
// 表单参数
form: {},
// 表单校验
rules: {
id: [
{ required: true, message: "不能为空", trigger: "blur" }
],
vipType: [
{ required: true, message: "1-普通会员 2-黄金会员 3-钻石会员不能为空", trigger: "change" }
],
vipTime: [
{ required: true, message: "1-月卡 2-季卡 3-年卡不能为空", trigger: "blur" }
],
vipPrice: [
{ required: true, message: "会员价格不能为空", trigger: "blur" }
],
enableStatus: [
{ required: true, message: "1-启用 0-禁用不能为空", trigger: "change" }
],
createTime: [
{ required: true, message: "创建时间不能为空", trigger: "blur" }
],
}
};
},
created() {
this.getList();
},
methods: {
/** 查询会员价格设置列表 */
getList() {
this.loading = true;
listVipPrice(this.queryParams).then(response => {
this.vipPriceList = response.rows;
this.total = response.total;
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
id: undefined,
vipType: undefined,
vipTime: undefined,
vipPrice: undefined,
enableStatus: undefined,
createTime: undefined,
updateTime: undefined
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map(item => item.id)
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加会员价格设置";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.loading = true;
this.reset();
const id = row.id || this.ids
getVipPrice(id).then(response => {
this.loading = false;
this.form = response.data;
this.open = true;
this.title = "修改会员价格设置";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
this.buttonLoading = true;
if (this.form.id != null) {
updateVipPrice(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
} else {
addVipPrice(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal.confirm('是否确认删除会员价格设置编号为"' + ids + '"的数据项?').then(() => {
this.loading = true;
return delVipPrice(ids);
}).then(() => {
this.loading = false;
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {
}).finally(() => {
this.loading = false;
});
},
/** 导出按钮操作 */
handleExport() {
this.download('xq/vipPrice/export', {
...this.queryParams
}, `vipPrice_${new Date().getTime()}.xlsx`)
}
}
};
</script>

View File

@@ -0,0 +1,279 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="提现金额" prop="money">
<el-input
v-model="queryParams.money"
placeholder="请输入提现金额"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['xq:withdrawSetting:add']"
>新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="success"
plain
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['xq:withdrawSetting:edit']"
>修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['xq:withdrawSetting:remove']"
>删除</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['xq:withdrawSetting:export']"
>导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="withdrawSettingList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="" align="center" prop="id" v-if="true"/>
<el-table-column label="提现金额" align="center" prop="money" />
<el-table-column label="0=开启 1=关闭" align="center" prop="status" />
<el-table-column label="说明" align="center" prop="remark" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['xq:withdrawSetting:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['xq:withdrawSetting:remove']"
>删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改提现配置对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="提现金额" prop="money">
<el-input v-model="form.money" placeholder="请输入提现金额" />
</el-form-item>
<el-form-item label="说明" prop="remark">
<el-input v-model="form.remark" placeholder="请输入说明" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button :loading="buttonLoading" type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { listWithdrawSetting, getWithdrawSetting, delWithdrawSetting, addWithdrawSetting, updateWithdrawSetting } from "@/api/xq/withdrawSetting";
export default {
name: "WithdrawSetting",
data() {
return {
// 按钮loading
buttonLoading: false,
// 遮罩层
loading: true,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 提现配置表格数据
withdrawSettingList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
money: undefined,
status: undefined,
},
// 表单参数
form: {},
// 表单校验
rules: {
id: [
{ required: true, message: "不能为空", trigger: "blur" }
],
money: [
{ required: true, message: "提现金额不能为空", trigger: "blur" }
],
status: [
{ required: true, message: "0=开启 1=关闭不能为空", trigger: "change" }
],
remark: [
{ required: true, message: "说明不能为空", trigger: "blur" }
]
}
};
},
created() {
this.getList();
},
methods: {
/** 查询提现配置列表 */
getList() {
this.loading = true;
listWithdrawSetting(this.queryParams).then(response => {
this.withdrawSettingList = response.rows;
this.total = response.total;
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
id: undefined,
money: undefined,
status: undefined,
remark: undefined
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map(item => item.id)
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加提现配置";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.loading = true;
this.reset();
const id = row.id || this.ids
getWithdrawSetting(id).then(response => {
this.loading = false;
this.form = response.data;
this.open = true;
this.title = "修改提现配置";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
this.buttonLoading = true;
if (this.form.id != null) {
updateWithdrawSetting(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
} else {
addWithdrawSetting(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal.confirm('是否确认删除提现配置编号为"' + ids + '"的数据项?').then(() => {
this.loading = true;
return delWithdrawSetting(ids);
}).then(() => {
this.loading = false;
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {
}).finally(() => {
this.loading = false;
});
},
/** 导出按钮操作 */
handleExport() {
this.download('xq/withdrawSetting/export', {
...this.queryParams
}, `withdrawSetting_${new Date().getTime()}.xlsx`)
}
}
};
</script>

310
src/views/xq/word/index.vue Normal file
View File

@@ -0,0 +1,310 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="单词" prop="word">
<el-input
v-model="queryParams.word"
placeholder="请输入单词"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="操作员名称" prop="operatorId">
<el-input
v-model="queryParams.operatorId"
placeholder="请输入操作员名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['xq:word:add']"
>新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="success"
plain
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['xq:word:edit']"
>修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['xq:word:remove']"
>删除</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['xq:word:export']"
>导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="wordList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="应用自增主键" align="center" prop="id" v-if="true"/>
<el-table-column label="单词" align="center" prop="word" />
<el-table-column label="1-白名单 2-黑名单" align="center" prop="type" />
<el-table-column label="启用状态" align="center" prop="enableStatus" />
<el-table-column label="配置描述" align="center" prop="remark" />
<el-table-column label="操作员名称" align="center" prop="operatorId" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['xq:word:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['xq:word:remove']"
>删除</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
<!-- 添加或修改敏感词对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="单词" prop="word">
<el-input v-model="form.word" placeholder="请输入单词" />
</el-form-item>
<el-form-item label="配置描述" prop="remark">
<el-input v-model="form.remark" placeholder="请输入配置描述" />
</el-form-item>
<el-form-item label="操作员名称" prop="operatorId">
<el-input v-model="form.operatorId" placeholder="请输入操作员名称" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button :loading="buttonLoading" type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { listWord, getWord, delWord, addWord, updateWord } from "@/api/xq/word";
export default {
name: "Word",
data() {
return {
// 按钮loading
buttonLoading: false,
// 遮罩层
loading: true,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 敏感词表格数据
wordList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
word: undefined,
type: undefined,
enableStatus: undefined,
operatorId: undefined,
},
// 表单参数
form: {},
// 表单校验
rules: {
id: [
{ required: true, message: "应用自增主键不能为空", trigger: "blur" }
],
word: [
{ required: true, message: "单词不能为空", trigger: "blur" }
],
type: [
{ required: true, message: "1-白名单 2-黑名单不能为空", trigger: "change" }
],
enableStatus: [
{ required: true, message: "启用状态不能为空", trigger: "change" }
],
remark: [
{ required: true, message: "配置描述不能为空", trigger: "blur" }
],
operatorId: [
{ required: true, message: "操作员名称不能为空", trigger: "blur" }
],
createTime: [
{ required: true, message: "创建时间不能为空", trigger: "blur" }
],
updateTime: [
{ required: true, message: "更新时间不能为空", trigger: "blur" }
]
}
};
},
created() {
this.getList();
},
methods: {
/** 查询敏感词列表 */
getList() {
this.loading = true;
listWord(this.queryParams).then(response => {
this.wordList = response.rows;
this.total = response.total;
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
id: undefined,
word: undefined,
type: undefined,
enableStatus: undefined,
remark: undefined,
operatorId: undefined,
createTime: undefined,
updateTime: undefined
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map(item => item.id)
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加敏感词";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.loading = true;
this.reset();
const id = row.id || this.ids
getWord(id).then(response => {
this.loading = false;
this.form = response.data;
this.open = true;
this.title = "修改敏感词";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
this.buttonLoading = true;
if (this.form.id != null) {
updateWord(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
} else {
addWord(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
}).finally(() => {
this.buttonLoading = false;
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal.confirm('是否确认删除敏感词编号为"' + ids + '"的数据项?').then(() => {
this.loading = true;
return delWord(ids);
}).then(() => {
this.loading = false;
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {
}).finally(() => {
this.loading = false;
});
},
/** 导出按钮操作 */
handleExport() {
this.download('xq/word/export', {
...this.queryParams
}, `word_${new Date().getTime()}.xlsx`)
}
}
};
</script>