完善套餐审核管理
This commit is contained in:
@ -2,42 +2,117 @@
|
|||||||
<el-dialog title="审核" :visible.sync="dialogVisible" @close="dialogFormVisible" :close-on-click-modal="false"
|
<el-dialog title="审核" :visible.sync="dialogVisible" @close="dialogFormVisible" :close-on-click-modal="false"
|
||||||
:close-on-press-escape="false">
|
:close-on-press-escape="false">
|
||||||
<el-form size="small" :model="form" ref="form">
|
<el-form size="small" :model="form" ref="form">
|
||||||
<el-form-item label="名称" :label-width="formLabelWidth">
|
<div class="info-wrapper">
|
||||||
<el-input v-model="form.name" autocomplete="off" disabled></el-input>
|
<div class="info-block">
|
||||||
</el-form-item>
|
<div class="info-title">审核状态</div>
|
||||||
|
<div class="info-content">
|
||||||
|
<div class="text-info">
|
||||||
|
<div class="info-item" style="align-items: center;">
|
||||||
|
<span class="label">当前状态:</span>
|
||||||
|
<el-tag v-if="status == 0" size="small">待审核</el-tag>
|
||||||
|
<el-tag v-else-if="status == 1" type="success" size="small">通过</el-tag>
|
||||||
|
<el-tag v-else-if="status == 2" type="danger" size="small">未通过</el-tag>
|
||||||
|
<el-tag v-else-if="status == 3" type="warning" size="small">已完结</el-tag>
|
||||||
|
<el-tag v-else-if="status == 4" type="info" size="small">废除</el-tag>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<el-form-item label="手机号" prop="mobile" :label-width="formLabelWidth">
|
<div v-if="group_id == 1 || group_id == 2" class="info-block">
|
||||||
<el-input v-model="form.mobile" autocomplete="off" disabled></el-input>
|
<div class="info-title">人员信息</div>
|
||||||
</el-form-item>
|
<div class="info-content">
|
||||||
|
<div class="text-info">
|
||||||
|
<div class="info-item"><span class="label">名称:</span>{{ form.name }}</div>
|
||||||
|
<div class="info-item"><span class="label">手机号:</span>{{ form.card }}</div>
|
||||||
|
<div class="info-item"><span class="label">出生日期:</span>{{ form.both }}</div>
|
||||||
|
</div>
|
||||||
|
<div class="photo-info">
|
||||||
|
<div class="photo-label">人脸照片</div>
|
||||||
|
<el-image v-if="form.face_url" :src="form.face_url" class="face-img" :preview-src-list="[form.face_url]" preview-teleported fit="cover"></el-image>
|
||||||
|
<div v-else class="empty-img"><i class="el-icon-picture-outline"></i><span>暂未上传</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<el-form-item label="身份证" prop="card" :label-width="formLabelWidth">
|
<div v-if="group_id == 3 || group_id == 4">
|
||||||
<el-input v-model="form.card" autocomplete="off" disabled></el-input>
|
<div class="info-block">
|
||||||
</el-form-item>
|
<div class="info-title">子女信息</div>
|
||||||
|
<div class="info-content">
|
||||||
|
<div class="text-info">
|
||||||
|
<div class="info-item"><span class="label">子女名称:</span>{{ form.name }}</div>
|
||||||
|
<div class="info-item"><span class="label">子女手机号:</span>{{ form.card }}</div>
|
||||||
|
<div class="info-item"><span class="label">子女出生日期:</span>{{ form.both }}</div>
|
||||||
|
</div>
|
||||||
|
<div class="photo-info">
|
||||||
|
<div class="photo-label">子女照片</div>
|
||||||
|
<el-image v-if="form.face_url" :src="form.face_url" class="face-img" :preview-src-list="[form.face_url]" preview-teleported fit="cover"></el-image>
|
||||||
|
<div v-else class="empty-img"><i class="el-icon-picture-outline"></i><span>暂未上传</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<el-form-item label="出生日期" prop="both" :label-width="formLabelWidth">
|
<div class="info-block">
|
||||||
<el-input v-model="form.both" autocomplete="off" disabled></el-input>
|
<div class="info-title">家长1信息</div>
|
||||||
</el-form-item>
|
<div class="info-content">
|
||||||
|
<div class="text-info">
|
||||||
|
<div class="info-item"><span class="label">名称:</span>{{ form.name }}</div>
|
||||||
|
<div class="info-item"><span class="label">手机号:</span>{{ form.card }}</div>
|
||||||
|
<div class="info-item"><span class="label">出生日期:</span>{{ form.both }}</div>
|
||||||
|
</div>
|
||||||
|
<div class="photo-info">
|
||||||
|
<div class="photo-label">照片</div>
|
||||||
|
<el-image v-if="form.parent && form.parent[0] && form.parent[0].face_url" :src="form.parent[0].face_url" class="face-img" :preview-src-list="[form.parent[0].face_url]" preview-teleported fit="cover"></el-image>
|
||||||
|
<div v-else class="empty-img"><i class="el-icon-picture-outline"></i><span>暂未上传</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<el-form-item label="套餐" prop="group_name" :label-width="formLabelWidth">
|
<template v-if="group_id == 4">
|
||||||
<el-input v-model="form.group_name" autocomplete="off" disabled></el-input>
|
<div class="info-block">
|
||||||
</el-form-item>
|
<div class="info-title">家长2信息</div>
|
||||||
|
<div class="info-content">
|
||||||
|
<div class="text-info">
|
||||||
|
<div class="info-item"><span class="label">名称:</span>{{ form.name }}</div>
|
||||||
|
<div class="info-item"><span class="label">手机号:</span>{{ form.card }}</div>
|
||||||
|
<div class="info-item"><span class="label">出生日期:</span>{{ form.both }}</div>
|
||||||
|
</div>
|
||||||
|
<div class="photo-info">
|
||||||
|
<div class="photo-label">照片</div>
|
||||||
|
<el-image v-if="form.parent && form.parent[1] && form.parent[1].face_url" :src="form.parent[1].face_url" class="face-img" :preview-src-list="[form.parent[1].face_url]" preview-teleported fit="cover"></el-image>
|
||||||
|
<div v-else class="empty-img"><i class="el-icon-picture-outline"></i><span>暂未上传</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</div>
|
||||||
|
|
||||||
<el-form-item label="审核" prop="status" :label-width="formLabelWidth">
|
<div class="info-block">
|
||||||
<el-select v-model="form.status" placeholder="请选择">
|
<div class="info-title">联系人信息</div>
|
||||||
<el-option label="通过" :value="1"></el-option>
|
<div class="info-item"><span class="label">联系方式:</span>{{ form.mobile }}</div>
|
||||||
<el-option label="不通过" :value="2"></el-option>
|
</div>
|
||||||
</el-select>
|
</div>
|
||||||
</el-form-item>
|
|
||||||
|
|
||||||
|
<div class="info-block" style="margin: 0 10px;" v-if="status == 0">
|
||||||
|
<div class="info-title">进行审核</div>
|
||||||
|
<div class="info-content">
|
||||||
|
<div class="text-info">
|
||||||
|
<div class="info-item" style="align-items: center;">
|
||||||
|
<span class="label">审核状态:</span>
|
||||||
|
<el-select v-model="form.status" placeholder="请选择" size="small">
|
||||||
|
<el-option label="通过" :value="1"></el-option>
|
||||||
|
<el-option label="不通过" :value="2"></el-option>
|
||||||
|
</el-select>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</el-form>
|
</el-form>
|
||||||
<div slot="footer" class="dialog-footer">
|
<div slot="footer" class="dialog-footer">
|
||||||
<el-button @click="dialogFormVisible">取 消</el-button>
|
<el-button @click="dialogFormVisible">取 消</el-button>
|
||||||
<el-button type="primary" @click="review" :loading="loading">确 定</el-button>
|
<el-button type="primary" @click="review" :loading="loading" v-if="status == 0">确 定</el-button>
|
||||||
</div>
|
</div>
|
||||||
<!--上传图片组件-->
|
|
||||||
<Upload v-if="isupload" :isupload="isupload" :type="type" @returnImgs="returnImgsFunc">上传图片</Upload>
|
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
|
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
@ -53,75 +128,17 @@ export default {
|
|||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
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: {
|
form: {
|
||||||
id: 0,
|
id: 0,
|
||||||
mobile: '',
|
mobile: '',
|
||||||
name: '',
|
name: '',
|
||||||
card: '',
|
card: '',
|
||||||
both: '',
|
both: '',
|
||||||
status: ''
|
status: '',
|
||||||
},
|
face_url: '',
|
||||||
file_path: '',
|
parent: [],
|
||||||
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'
|
|
||||||
}],
|
|
||||||
},
|
},
|
||||||
|
group_id: '',
|
||||||
/*左边长度*/
|
/*左边长度*/
|
||||||
formLabelWidth: '120px',
|
formLabelWidth: '120px',
|
||||||
/*是否显示*/
|
/*是否显示*/
|
||||||
@ -129,48 +146,26 @@ export default {
|
|||||||
loading: false,
|
loading: false,
|
||||||
/*是否上传图片*/
|
/*是否上传图片*/
|
||||||
isupload: false,
|
isupload: false,
|
||||||
|
status: 0,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
props: ['open_edit', 'editform'],
|
props: ['open_edit', 'editform'],
|
||||||
created() {
|
created() {
|
||||||
this.dialogVisible = this.open_edit;
|
this.dialogVisible = this.open_edit;
|
||||||
console.log(this.editform);
|
|
||||||
this.form.id = this.editform.id;
|
this.form.id = this.editform.id;
|
||||||
this.form.name = this.editform.name;
|
this.form.name = this.editform.name;
|
||||||
this.form.mobile = this.editform.mobile;
|
this.form.mobile = this.editform.mobile;
|
||||||
this.form.card = this.editform.card;
|
this.form.card = this.editform.card;
|
||||||
this.form.both = this.editform.both;
|
this.form.both = this.editform.both;
|
||||||
|
this.form.face_url = this.editform.face_url;
|
||||||
this.form.group_name = this.editform.group_name;
|
this.form.group_name = this.editform.group_name;
|
||||||
|
this.form.parent = this.editform.parent;
|
||||||
|
console.log("🚀 ~ this.form.parent:", this.form.parent)
|
||||||
this.form.status = this.editform.status == 0 ? '' : this.editform.status;
|
this.form.status = this.editform.status == 0 ? '' : this.editform.status;
|
||||||
|
this.status = this.form.status
|
||||||
|
this.group_id = this.editform.group_id;
|
||||||
},
|
},
|
||||||
methods: {
|
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) {
|
dialogFormVisible(e) {
|
||||||
if (e) {
|
if (e) {
|
||||||
@ -185,21 +180,8 @@ export default {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
/*上传*/
|
|
||||||
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() {
|
review() {
|
||||||
let self = this;
|
let self = this;
|
||||||
let params = {
|
let params = {
|
||||||
@ -228,8 +210,84 @@ export default {
|
|||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style>
|
<style scoped>
|
||||||
.img {
|
.img {
|
||||||
margin-top: 10px;
|
margin-top: 10px;
|
||||||
}
|
}
|
||||||
|
.info-wrapper {
|
||||||
|
padding: 0 10px;
|
||||||
|
}
|
||||||
|
.info-block {
|
||||||
|
background: #f8f9fa;
|
||||||
|
padding: 15px 20px;
|
||||||
|
border-radius: 6px;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
border: 1px solid #ebeef5;
|
||||||
|
}
|
||||||
|
.info-title {
|
||||||
|
font-size: 15px;
|
||||||
|
font-weight: 600;
|
||||||
|
margin-bottom: 15px;
|
||||||
|
color: #303133;
|
||||||
|
border-bottom: 1px solid #ebeef5;
|
||||||
|
padding-bottom: 10px;
|
||||||
|
}
|
||||||
|
.info-content {
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
}
|
||||||
|
.text-info {
|
||||||
|
flex: 1;
|
||||||
|
padding-right: 20px;
|
||||||
|
}
|
||||||
|
.info-item {
|
||||||
|
margin-bottom: 12px;
|
||||||
|
font-size: 14px;
|
||||||
|
color: #606266;
|
||||||
|
display: flex;
|
||||||
|
line-height: 1.5;
|
||||||
|
}
|
||||||
|
.info-item .label {
|
||||||
|
width: 100px;
|
||||||
|
color: #909399;
|
||||||
|
flex-shrink: 0;
|
||||||
|
}
|
||||||
|
.photo-info {
|
||||||
|
width: 140px;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: flex-end;
|
||||||
|
}
|
||||||
|
.photo-label {
|
||||||
|
color: #909399;
|
||||||
|
font-size: 14px;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
text-align: center;
|
||||||
|
width: 120px;
|
||||||
|
}
|
||||||
|
.face-img {
|
||||||
|
width: 120px;
|
||||||
|
height: 120px;
|
||||||
|
border-radius: 6px;
|
||||||
|
box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
|
||||||
|
border: 2px solid #fff;
|
||||||
|
}
|
||||||
|
.empty-img {
|
||||||
|
width: 120px;
|
||||||
|
height: 120px;
|
||||||
|
background: #f0f2f5;
|
||||||
|
border-radius: 6px;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
color: #c0c4cc;
|
||||||
|
font-size: 13px;
|
||||||
|
border: 1px dashed #dcdfe6;
|
||||||
|
}
|
||||||
|
.empty-img i {
|
||||||
|
font-size: 28px;
|
||||||
|
margin-bottom: 8px;
|
||||||
|
color: #dcdfe6;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@ -13,6 +13,16 @@
|
|||||||
placeholder="请输入手机号"></el-input>
|
placeholder="请输入手机号"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
|
<el-form-item label="状态">
|
||||||
|
<el-select v-model="formInline.status" placeholder="请选择">
|
||||||
|
<el-option label="待审核" :value="0"></el-option>
|
||||||
|
<el-option label="已通过" :value="1"></el-option>
|
||||||
|
<el-option label="未通过" :value="2"></el-option>
|
||||||
|
<el-option label="已完结" :value="3"></el-option>
|
||||||
|
<el-option label="已废除" :value="4"></el-option>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item><el-button type="primary" icon="el-icon-search"
|
<el-form-item><el-button type="primary" icon="el-icon-search"
|
||||||
@click="onSubmit">查询</el-button></el-form-item>
|
@click="onSubmit">查询</el-button></el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
@ -29,9 +39,11 @@
|
|||||||
<el-table-column prop="group_name" label="套餐"></el-table-column>
|
<el-table-column prop="group_name" label="套餐"></el-table-column>
|
||||||
<el-table-column prop="status" label="状态">
|
<el-table-column prop="status" label="状态">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-tag v-if="scope.row.status == 1" type="success">通过</el-tag>
|
<el-tag v-if="scope.row.status == 0">待审核</el-tag>
|
||||||
|
<el-tag v-else-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-if="scope.row.status == 2" type="danger">未通过</el-tag>
|
||||||
<el-tag v-else type="warning">待审核</el-tag>
|
<el-tag v-else-if="scope.row.status == 3" type="warning">已完结</el-tag>
|
||||||
|
<el-tag v-else-if="scope.row.status == 4" type="info">废除</el-tag>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column fixed="right" label="操作" width="170">
|
<el-table-column fixed="right" label="操作" width="170">
|
||||||
@ -80,7 +92,8 @@ export default {
|
|||||||
/*横向表单数据模型*/
|
/*横向表单数据模型*/
|
||||||
formInline: {
|
formInline: {
|
||||||
name: '',
|
name: '',
|
||||||
mobile: ''
|
mobile: '',
|
||||||
|
status: '',
|
||||||
},
|
},
|
||||||
/*是否打开添加弹窗*/
|
/*是否打开添加弹窗*/
|
||||||
open_add: false,
|
open_add: false,
|
||||||
@ -152,18 +165,6 @@ export default {
|
|||||||
this.open_edit = true;
|
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) {
|
closeDialogFunc(e, f) {
|
||||||
if (f == 'add') {
|
if (f == 'add') {
|
||||||
|
|||||||
Reference in New Issue
Block a user