添加套餐管理和套餐审核管理

This commit is contained in:
wangxiaowei
2026-04-10 00:15:55 +08:00
parent 2a802d526d
commit 5492afdebe
14 changed files with 1133 additions and 10 deletions

View File

@ -0,0 +1,203 @@
<template>
<el-dialog title="添加套餐" :visible.sync="dialogVisible" @close="dialogFormVisible" :close-on-click-modal="false"
:close-on-press-escape="false">
<el-form size="small" :model="form" :rules="formRules" ref="form">
<el-form-item label="套餐名称" prop="name" :label-width="formLabelWidth">
<el-input v-model="form.name" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="英文名称" prop="eg_name" :label-width="formLabelWidth">
<el-input v-model="form.eg_name" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="套餐图片" prop="image" :label-width="formLabelWidth">
<el-row>
<el-button type="primary" @click="openUpload">选择图片</el-button>
<div v-if="form.image != ''" class="img">
<img :src="file_path" width="100" height="100" />
</div>
</el-row>
</el-form-item>
<el-form-item label="套餐价格" prop="price" :label-width="formLabelWidth">
<el-input v-model="form.price" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="指导价" prop="month_price" :label-width="formLabelWidth">
<el-input v-model="form.month_price" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="权益说明" prop="content" :label-width="formLabelWidth">
<div class="edit_container">
<Uediter :text="form.content" :config="ueditor.config" ref="ue"
@contentChange="contentChangeFunc"></Uediter>
</div>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="dialogFormVisible">取 消</el-button>
<el-button type="primary" @click="addUser" :loading="loading"> </el-button>
</div>
<!--上传图片组件-->
<Upload v-if="isupload" :isupload="isupload" :type="type" @returnImgs="returnImgsFunc">上传图片</Upload>
</el-dialog>
</template>
<script>
import Upload from '@/components/file/Upload';
import Uediter from '@/components/UE.vue';
import ComboApi from '@/api/combo.js';
export default {
components: {
Upload,
Uediter,
},
data() {
return {
/*富文本框配置*/
ueditor: {
text: '',
config: {
initialFrameWidth: 400,
initialFrameHeight: 500,
toolbars: [
[
'fullscreen', 'source', '|', 'undo', 'redo', '|',
'bold', 'italic', 'underline', 'fontborder', 'strikethrough', 'superscript', 'subscript', 'removeformat', 'formatmatch', 'autotypeset', 'blockquote', 'pasteplain', '|', 'forecolor', 'backcolor', 'insertorderedlist', 'insertunorderedlist', 'selectall', 'cleardoc', '|',
'rowspacingtop', 'rowspacingbottom', 'lineheight', '|',
'customstyle', 'paragraph', 'fontfamily', 'fontsize', '|',
'directionalityltr', 'directionalityrtl', 'indent', '|',
'justifyleft', 'justifycenter', 'justifyright', 'justifyjustify', '|', 'touppercase', 'tolowercase', '|',
'link', 'unlink', 'anchor', '|',
'emotion', 'map', 'insertframe', 'insertcode', 'pagebreak', 'template', 'background', '|',
'horizontal', 'date', 'time', 'spechars', 'wordimage', '|',
'inserttable', 'deletetable', 'insertparagraphbeforetable', 'insertrow', 'deleterow', 'insertcol', 'deletecol', 'mergecells', 'mergeright', 'mergedown', 'splittocells', 'splittorows', 'splittocols', 'charts', '|',
'print', 'preview', 'searchreplace', 'drafts', 'help'
]
]
},
},
form: {
name: '',
eg_name: '',
image: '',
price: '',
month_price: '',
content: '',
},
formRules: {
name: [{
required: true,
message: '请输入套餐名称',
trigger: 'blur'
}],
eg_name: [{
required: true,
message: '请输入套餐英文名称',
trigger: 'blur'
}],
image: [{
required: true,
message: '请上传套餐图片',
trigger: 'blur'
}],
price: [{
required: true,
message: '请输入套餐价格',
trigger: 'blur'
}],
month_price: [{
required: true,
message: '请输入指导价',
trigger: 'blur'
}],
content: [{
required: true,
message: '请输入权益说明',
trigger: 'blur'
}],
},
/*左边长度*/
formLabelWidth: '120px',
/*是否显示*/
dialogVisible: false,
loading: false,
/*是否上传图片*/
isupload: false,
};
},
props: ['open_add', 'addform'],
created() {
this.dialogVisible = this.open_add;
},
methods: {
/*添加场馆*/
addUser() {
let self = this;
let params = self.form;
self.$refs.form.validate((valid) => {
if (valid) {
self.loading = true;
ComboApi.addGround(params).then(data => {
self.loading = false;
self.$message({
message: '添加成功',
type: 'success'
});
self.dialogFormVisible(true);
}).catch(error => {
self.loading = false;
});
}
});
},
/*获取富文本内容*/
contentChangeFunc(e){
this.form.content = e;
},
/*关闭弹窗*/
dialogFormVisible(e) {
if (e) {
this.$emit('closeDialog', {
type: 'success',
openDialog: false
})
} else {
this.$emit('closeDialog', {
type: 'error',
openDialog: false
})
}
},
/*上传*/
openUpload(e) {
this.type = e;
this.isupload = true;
},
/*获取图片*/
returnImgsFunc(e) {
if (e != null && e.length > 0) {
this.file_path = e[0].file_path;
this.form.image = e[0].file_id;
}
this.isupload = false;
},
}
};
</script>
<style>
.img {
margin-top: 10px;
}
</style>

View File

@ -0,0 +1,217 @@
<template>
<el-dialog title="修改场馆" :visible.sync="dialogVisible" @close="dialogFormVisible" :close-on-click-modal="false"
:close-on-press-escape="false">
<el-form size="small" :model="form" :rules="formRules" ref="form">
<el-form-item label="套餐名称" prop="name" :label-width="formLabelWidth">
<el-input v-model="form.name" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="英文名称" prop="eg_name" :label-width="formLabelWidth">
<el-input v-model="form.eg_name" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="套餐图片" prop="image" :label-width="formLabelWidth">
<el-row>
<el-button type="primary" @click="openUpload">选择图片</el-button>
<div v-if="form.image != ''" class="img">
<img :src="file_path" width="100" height="100" />
</div>
</el-row>
</el-form-item>
<el-form-item label="套餐价格" prop="price" :label-width="formLabelWidth">
<el-input v-model="form.price" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="指导价" prop="month_price" :label-width="formLabelWidth">
<el-input v-model="form.month_price" autocomplete="off"></el-input>
</el-form-item>
<el-form-item label="权益说明" prop="content" :label-width="formLabelWidth">
<div class="edit_container">
<Uediter :text="form.content" :config="ueditor.config" ref="ue"
@contentChange="contentChangeFunc"></Uediter>
</div>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="dialogFormVisible">取 消</el-button>
<el-button type="primary" @click="addUser" :loading="loading"> </el-button>
</div>
<!--上传图片组件-->
<Upload v-if="isupload" :isupload="isupload" :type="type" @returnImgs="returnImgsFunc">上传图片</Upload>
</el-dialog>
</template>
<script>
import Upload from '@/components/file/Upload';
import Uediter from '@/components/UE.vue';
import VenueApi from '@/api/venue.js';
import ComboApi from '@/api/combo.js';
export default {
components: {
Upload,
Uediter,
},
data() {
return {
/*富文本框配置*/
ueditor: {
text: '',
config: {
initialFrameWidth: 400,
initialFrameHeight: 500,
toolbars: [
[
'fullscreen', 'source', '|', 'undo', 'redo', '|',
'bold', 'italic', 'underline', 'fontborder', 'strikethrough', 'superscript', 'subscript', 'removeformat', 'formatmatch', 'autotypeset', 'blockquote', 'pasteplain', '|', 'forecolor', 'backcolor', 'insertorderedlist', 'insertunorderedlist', 'selectall', 'cleardoc', '|',
'rowspacingtop', 'rowspacingbottom', 'lineheight', '|',
'customstyle', 'paragraph', 'fontfamily', 'fontsize', '|',
'directionalityltr', 'directionalityrtl', 'indent', '|',
'justifyleft', 'justifycenter', 'justifyright', 'justifyjustify', '|', 'touppercase', 'tolowercase', '|',
'link', 'unlink', 'anchor', '|',
'emotion', 'map', 'insertframe', 'insertcode', 'pagebreak', 'template', 'background', '|',
'horizontal', 'date', 'time', 'spechars', 'wordimage', '|',
'inserttable', 'deletetable', 'insertparagraphbeforetable', 'insertrow', 'deleterow', 'insertcol', 'deletecol', 'mergecells', 'mergeright', 'mergedown', 'splittocells', 'splittorows', 'splittocols', 'charts', '|',
'print', 'preview', 'searchreplace', 'drafts', 'help'
]
]
},
},
form: {
id: 0,
name: '',
eg_name: '',
image: '',
price: '',
month_price: '',
content: '',
},
file_path: '',
formRules: {
name: [{
required: true,
message: '请输入套餐名称',
trigger: 'blur'
}],
eg_name: [{
required: true,
message: '请输入套餐英文名称',
trigger: 'blur'
}],
image: [{
required: true,
message: '请上传套餐图片',
trigger: 'blur'
}],
price: [{
required: true,
message: '请输入套餐价格',
trigger: 'blur'
}],
month_price: [{
required: true,
message: '请输入指导价',
trigger: 'blur'
}],
content: [{
required: true,
message: '请输入权益说明',
trigger: 'blur'
}],
},
/*左边长度*/
formLabelWidth: '120px',
/*是否显示*/
dialogVisible: false,
loading: false,
/*是否上传图片*/
isupload: false,
};
},
props: ['open_edit', 'editform'],
created() {
this.dialogVisible = this.open_edit;
console.log(this.editform);
this.form.id = this.editform.id;
this.form.name = this.editform.name;
this.form.eg_name = this.editform.eg_name;
this.form.image = this.editform.image;
this.form.price = this.editform.price;
this.form.content = this.editform.content;
this.form.month_price = this.editform.month_price;
this.file_path = this.editform.img;
},
methods: {
/*添加场馆*/
addUser() {
let self = this;
let params = self.form;
self.$refs.form.validate((valid) => {
if (valid) {
self.loading = true;
ComboApi.editGround(params).then(data => {
self.loading = false;
self.$message({
message: '修改成功',
type: 'success'
});
self.dialogFormVisible(true);
}).catch(error => {
self.loading = false;
});
}
});
},
/*获取富文本内容*/
contentChangeFunc(e){
this.form.content = e;
},
/*关闭弹窗*/
dialogFormVisible(e) {
if (e) {
this.$emit('closeDialog', {
type: 'success',
openDialog: false
})
} else {
this.$emit('closeDialog', {
type: 'error',
openDialog: false
})
}
},
/*上传*/
openUpload(e) {
this.type = e;
this.isupload = true;
},
/*获取图片*/
returnImgsFunc(e) {
console.log("🚀 ~ e:", e)
if (e != null && e.length > 0) {
this.file_path = e[0].file_path;
this.form.image = e[0].file_id;
}
this.isupload = false;
},
}
};
</script>
<style>
.img {
margin-top: 10px;
}
</style>

View File

@ -0,0 +1,204 @@
<template>
<div class="venue">
<!--添加套餐-->
<div class="common-level-rail"><el-button size="small" type="primary" icon="el-icon-plus" @click="addClick" v-auth="'/combo/combo/add'">添加套餐</el-button></div>
<!--内容-->
<div class="product-content">
<div class="table-wrap">
<el-table size="small" :data="tableData" border style="width: 100%" v-loading="loading">
<el-table-column prop="id" label="ID" width="80"></el-table-column>
<el-table-column prop="name" label="套餐名称"></el-table-column>
<el-table-column prop="price" label="套餐价格"></el-table-column>
<el-table-column prop="month_price" label="指导价"></el-table-column>
<el-table-column fixed="right" label="操作" width="170">
<template slot-scope="scope">
<el-button @click="editClick(scope.row)" type="text" size="small"
v-auth="'/combo/combo/edit'">编辑</el-button>
</template>
</el-table-column>
</el-table>
</div>
</div>
<!--添加-->
<Add v-if="open_add" :open_add="open_add" @closeDialog="closeDialogFunc($event, 'add')"></Add>
<!--修改-->
<Edit v-if="open_edit" :open_edit="open_edit" :editform="venueModel" @closeDialog="closeDialogFunc($event, 'edit')"></Edit>
</div>
</template>
<script>
import ComboApi from '@/api/combo.js';
import VenueApi from '@/api/venue.js';
import Add from './add.vue';
import Edit from './edit.vue';
// import Data from './Edit.vue';
export default {
components: {
/*编辑组件*/
Edit,
Add,
// Data
},
data() {
return {
/*是否加载完成*/
loading: true,
/*列表数据*/
tableData: [],
/*一页多少条*/
pageSize: 20,
/*一共多少条数据*/
totalDataNumber: 0,
/*当前是第几页*/
curPage: 1,
/*横向表单数据模型*/
formInline: {
search: ''
},
/*是否打开添加弹窗*/
open_add: false,
/*是否打开编辑弹窗*/
open_edit: false,
/*当前编辑的对象*/
venueModel: {},
/*等级*/
gradeList: [],
open_tag: false,
/*所有标签*/
allTag: []
};
},
created() {
/*获取列表*/
this.getTableList();
},
methods: {
/*选择第几页*/
handleCurrentChange(val) {
let self = this;
self.curPage = val;
self.loading = true;
self.getTableList();
},
/*每页多少条*/
handleSizeChange(val) {
this.curPage = 1;
this.pageSize = val;
this.getTableList();
},
/*获取列表*/
getTableList() {
let self = this;
let Params = self.formInline;
Params.page = self.curPage;
Params.size = self.pageSize;
ComboApi.comboList(Params, true)
.then(res => {
console.log("🚀 ~ res:", res)
self.loading = false;
self.tableData = res.data;
})
.catch(error => {
self.loading = false;
});
},
/*搜索查询*/
onSubmit() {
let self = this;
self.loading = true;
self.curPage = 1;
self.getTableList();
},
/*打开添加*/
addClick(item) {
this.open_add = true;
},
/*打开编辑*/
editClick(item) {
this.venueModel = item;
this.open_edit = true;
},
/*打开预定*/
reserveClick(item) {
let self = this;
let params = item.id;
self.$router.push({
path: '/venue/venue/reserve',
query: {
cg_id: params
}
});
},
/*关闭弹窗*/
closeDialogFunc(e, f) {
if (f == 'add') {
this.open_add = e.openDialog;
if (e.type == 'success') {
this.getTableList();
}
}
if (f == 'edit') {
this.open_edit = e.openDialog;
if (e.type == 'success') {
this.getTableList();
}
}
if (f == 'tag') {
this.open_tag = e.openDialog;
if (e.type == 'success') {
this.getTableList();
}
}
},
/*删除用户*/
deleteClick(row) {
let self = this;
self
.$confirm('此操作将永久删除该记录, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
})
.then(() => {
self.loading = true;
VenueApi.delGround(
{
id: row.id
},
true
)
.then(data => {
self.loading = false;
if (data.code == 1) {
self.$message({
message: '删除成功',
type: 'success'
});
self.getTableList();
} else {
self.loading = false;
}
})
.catch(error => {
self.loading = false;
});
})
.catch(() => {
self.loading = false;
});
}
}
};
</script>
<style></style>

View File

@ -0,0 +1,235 @@
<template>
<el-dialog title="审核" :visible.sync="dialogVisible" @close="dialogFormVisible" :close-on-click-modal="false"
:close-on-press-escape="false">
<el-form size="small" :model="form" ref="form">
<el-form-item label="名称" :label-width="formLabelWidth">
<el-input v-model="form.name" autocomplete="off" disabled></el-input>
</el-form-item>
<el-form-item label="手机号" prop="mobile" :label-width="formLabelWidth">
<el-input v-model="form.mobile" autocomplete="off" disabled></el-input>
</el-form-item>
<el-form-item label="身份证" prop="card" :label-width="formLabelWidth">
<el-input v-model="form.card" autocomplete="off" disabled></el-input>
</el-form-item>
<el-form-item label="出生日期" prop="both" :label-width="formLabelWidth">
<el-input v-model="form.both" autocomplete="off" disabled></el-input>
</el-form-item>
<el-form-item label="套餐" prop="group_name" :label-width="formLabelWidth">
<el-input v-model="form.group_name" autocomplete="off" disabled></el-input>
</el-form-item>
<el-form-item label="审核" prop="status" :label-width="formLabelWidth">
<el-select v-model="form.status" placeholder="请选择">
<el-option label="通过" :value="1"></el-option>
<el-option label="不通过" :value="2"></el-option>
</el-select>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="dialogFormVisible">取 消</el-button>
<el-button type="primary" @click="review" :loading="loading"> </el-button>
</div>
<!--上传图片组件-->
<Upload v-if="isupload" :isupload="isupload" :type="type" @returnImgs="returnImgsFunc">上传图片</Upload>
</el-dialog>
</template>
<script>
import Upload from '@/components/file/Upload';
import Uediter from '@/components/UE.vue';
import VenueApi from '@/api/venue.js';
import ComboApi from '@/api/combo.js';
export default {
components: {
Upload,
Uediter,
},
data() {
return {
/*富文本框配置*/
ueditor: {
text: '',
config: {
initialFrameWidth: 400,
initialFrameHeight: 500,
toolbars: [
[
'fullscreen', 'source', '|', 'undo', 'redo', '|',
'bold', 'italic', 'underline', 'fontborder', 'strikethrough', 'superscript', 'subscript', 'removeformat', 'formatmatch', 'autotypeset', 'blockquote', 'pasteplain', '|', 'forecolor', 'backcolor', 'insertorderedlist', 'insertunorderedlist', 'selectall', 'cleardoc', '|',
'rowspacingtop', 'rowspacingbottom', 'lineheight', '|',
'customstyle', 'paragraph', 'fontfamily', 'fontsize', '|',
'directionalityltr', 'directionalityrtl', 'indent', '|',
'justifyleft', 'justifycenter', 'justifyright', 'justifyjustify', '|', 'touppercase', 'tolowercase', '|',
'link', 'unlink', 'anchor', '|',
'emotion', 'map', 'insertframe', 'insertcode', 'pagebreak', 'template', 'background', '|',
'horizontal', 'date', 'time', 'spechars', 'wordimage', '|',
'inserttable', 'deletetable', 'insertparagraphbeforetable', 'insertrow', 'deleterow', 'insertcol', 'deletecol', 'mergecells', 'mergeright', 'mergedown', 'splittocells', 'splittorows', 'splittocols', 'charts', '|',
'print', 'preview', 'searchreplace', 'drafts', 'help'
]
]
},
},
form: {
id: 0,
mobile: '',
name: '',
card: '',
both: '',
status: ''
},
file_path: '',
formRules: {
name: [{
required: true,
message: '请输入套餐名称',
trigger: 'blur'
}],
eg_name: [{
required: true,
message: '请输入套餐英文名称',
trigger: 'blur'
}],
image: [{
required: true,
message: '请上传套餐图片',
trigger: 'blur'
}],
price: [{
required: true,
message: '请输入套餐价格',
trigger: 'blur'
}],
month_price: [{
required: true,
message: '请输入指导价',
trigger: 'blur'
}],
content: [{
required: true,
message: '请输入权益说明',
trigger: 'blur'
}],
},
/*左边长度*/
formLabelWidth: '120px',
/*是否显示*/
dialogVisible: false,
loading: false,
/*是否上传图片*/
isupload: false,
};
},
props: ['open_edit', 'editform'],
created() {
this.dialogVisible = this.open_edit;
console.log(this.editform);
this.form.id = this.editform.id;
this.form.name = this.editform.name;
this.form.mobile = this.editform.mobile;
this.form.card = this.editform.card;
this.form.both = this.editform.both;
this.form.group_name = this.editform.group_name;
this.form.status = this.editform.status == 0 ? '' : this.editform.status;
},
methods: {
/*添加场馆*/
addUser() {
let self = this;
let params = self.form;
self.$refs.form.validate((valid) => {
if (valid) {
self.loading = true;
ComboApi.editGround(params).then(data => {
self.loading = false;
self.$message({
message: '修改成功',
type: 'success'
});
self.dialogFormVisible(true);
}).catch(error => {
self.loading = false;
});
}
});
},
/*获取富文本内容*/
contentChangeFunc(e){
this.form.content = e;
},
/*关闭弹窗*/
dialogFormVisible(e) {
if (e) {
this.$emit('closeDialog', {
type: 'success',
openDialog: false
})
} else {
this.$emit('closeDialog', {
type: 'error',
openDialog: false
})
}
},
/*上传*/
openUpload(e) {
this.type = e;
this.isupload = true;
},
/*获取图片*/
returnImgsFunc(e) {
console.log("🚀 ~ e:", e)
if (e != null && e.length > 0) {
this.file_path = e[0].file_path;
this.form.image = e[0].file_id;
}
this.isupload = false;
},
review() {
let self = this;
let params = {
id: self.form.id,
status: self.form.status
};
self.$refs.form.validate((valid) => {
if (valid) {
self.loading = true;
ComboApi.reviewEdit(params).then(data => {
self.loading = false;
self.$message({
message: '操作成功',
type: 'success'
});
self.dialogFormVisible(true);
}).catch(error => {
self.loading = false;
});
}
});
}
}
};
</script>
<style>
.img {
margin-top: 10px;
}
</style>

View File

@ -0,0 +1,229 @@
<template>
<div class="venue">
<!--搜索表单-->
<div class="common-seach-wrap">
<el-form size="small" :inline="true" :model="formInline" class="demo-form-inline">
<el-form-item label="名称">
<el-input v-model="formInline.search"
placeholder="请输入名称"></el-input>
</el-form-item>
<el-form-item label="手机号">
<el-input v-model="formInline.search"
placeholder="请输入手机号"></el-input>
</el-form-item>
<el-form-item><el-button type="primary" icon="el-icon-search"
@click="onSubmit">查询</el-button></el-form-item>
</el-form>
</div>
<!--内容-->
<div class="product-content">
<div class="table-wrap">
<el-table size="small" :data="tableData" border style="width: 100%" v-loading="loading">
<el-table-column prop="name" label="名称"></el-table-column>
<el-table-column prop="mobile" label="手机号"></el-table-column>
<el-table-column prop="card" label="身份证号"></el-table-column>
<el-table-column prop="both" label="出身日期"></el-table-column>
<el-table-column prop="group_name" label="套餐"></el-table-column>
<el-table-column prop="status" label="状态">
<template slot-scope="scope">
<el-tag v-if="scope.row.status == 1" type="success">通过</el-tag>
<el-tag v-else-if="scope.row.status == 2" type="danger">未通过</el-tag>
<el-tag v-else type="warning">待审核</el-tag>
</template>
</el-table-column>
<el-table-column fixed="right" label="操作" width="170">
<template slot-scope="scope">
<el-button @click="editClick(scope.row)" type="text" size="small"
v-auth="'/combo/review/edit'">编辑</el-button>
</template>
</el-table-column>
</el-table>
</div>
<!--分页-->
<div class="pagination">
<el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" background
:current-page="curPage" :page-size="pageSize" layout="total, prev, pager, next, jumper"
:total="totalDataNumber"></el-pagination>
</div>
</div>
<!--修改-->
<Edit v-if="open_edit" :open_edit="open_edit" :editform="venueModel" @closeDialog="closeDialogFunc($event, 'edit')"></Edit>
</div>
</template>
<script>
import ComboApi from '@/api/combo.js';
import Edit from './edit.vue';
export default {
components: {
/*编辑组件*/
Edit,
},
data() {
return {
/*是否加载完成*/
loading: true,
/*列表数据*/
tableData: [],
/*一页多少条*/
pageSize: 20,
/*一共多少条数据*/
totalDataNumber: 0,
/*当前是第几页*/
curPage: 1,
/*横向表单数据模型*/
formInline: {
name: '',
mobile: ''
},
/*是否打开添加弹窗*/
open_add: false,
/*是否打开编辑弹窗*/
open_edit: false,
/*当前编辑的对象*/
venueModel: {},
/*等级*/
gradeList: [],
open_tag: false,
/*所有标签*/
allTag: []
};
},
created() {
/*获取列表*/
this.getTableList();
},
methods: {
/*选择第几页*/
handleCurrentChange(val) {
let self = this;
self.curPage = val;
self.loading = true;
self.getTableList();
},
/*每页多少条*/
handleSizeChange(val) {
this.curPage = 1;
this.pageSize = val;
this.getTableList();
},
/*获取列表*/
getTableList() {
let self = this;
let Params = self.formInline;
Params.page = self.curPage;
Params.size = self.pageSize;
ComboApi.reviewList(Params, true)
.then(res => {
console.log("🚀 ~ res:", res)
self.loading = false;
self.tableData = res.data.data;
self.totalDataNumber = res.data.total;
})
.catch(error => {
self.loading = false;
});
},
/*搜索查询*/
onSubmit() {
let self = this;
self.loading = true;
self.curPage = 1;
self.getTableList();
},
/*打开添加*/
addClick(item) {
this.open_add = true;
},
/*打开编辑*/
editClick(item) {
this.venueModel = item;
this.open_edit = true;
},
/*打开预定*/
reserveClick(item) {
let self = this;
let params = item.id;
self.$router.push({
path: '/venue/venue/reserve',
query: {
cg_id: params
}
});
},
/*关闭弹窗*/
closeDialogFunc(e, f) {
if (f == 'add') {
this.open_add = e.openDialog;
if (e.type == 'success') {
this.getTableList();
}
}
if (f == 'edit') {
this.open_edit = e.openDialog;
if (e.type == 'success') {
this.getTableList();
}
}
if (f == 'tag') {
this.open_tag = e.openDialog;
if (e.type == 'success') {
this.getTableList();
}
}
},
/*删除用户*/
deleteClick(row) {
let self = this;
self
.$confirm('此操作将永久删除该记录, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
})
.then(() => {
self.loading = true;
VenueApi.delGround(
{
id: row.id
},
true
)
.then(data => {
self.loading = false;
if (data.code == 1) {
self.$message({
message: '删除成功',
type: 'success'
});
self.getTableList();
} else {
self.loading = false;
}
})
.catch(error => {
self.loading = false;
});
})
.catch(() => {
self.loading = false;
});
}
}
};
</script>
<style></style>