<template>
|
<el-dialog title="编辑成员" :visible.sync="dialogVisible" @close="cancelFunc" :close-on-click-modal="false" :close-on-press-escape="false" width="50%">
|
<el-form ref="form" :model="formData" v-if="!loading">
|
<el-form-item label="用户昵称" :label-width="formLabelWidth">
|
{{ formData.nickName }}
|
</el-form-item>
|
<el-form-item label="头像" :label-width="formLabelWidth">
|
<el-row>
|
<el-button icon="el-icon-picture-outline" @click="openUpload('avatarUrl')">选择图片</el-button>
|
<div v-if="formData.avatarUrl!=''" class="mt10">
|
<img :src="formData.avatarUrl" width="100" height="100" />
|
</div>
|
<div class="gray9">请上传正方形的图片,如果不需要更换,可以不上传</div>
|
</el-row>
|
</el-form-item>
|
<el-form-item label="姓名" :label-width="formLabelWidth" prop="real_name" :rules="[{required: true,message: '请输入真实姓名'}]">
|
<el-input type="text" v-model="formData.real_name" autocomplete="off"></el-input>
|
</el-form-item>
|
<el-form-item label="手机号" :label-width="formLabelWidth" prop="mobile" :rules="[{required: true,message: '请输入手机号'}]">
|
<el-input type="text" v-model="formData.mobile" autocomplete="off"></el-input>
|
</el-form-item>
|
<el-form-item label="成员身份" prop="position_id" :label-width="formLabelWidth" :rules="[{required: true,message: '请选择成员身份'}]">
|
<el-select v-model="formData.position_id" placeholder="-请选择成员身份">
|
<el-option v-for="(item,index) in positionList" :key="index" :label="item.name" :value="item.position_id"></el-option>
|
</el-select>
|
</el-form-item>
|
<el-form-item label="所属企业" prop="shop_supplier_id" :label-width="formLabelWidth" :rules="[{required: true,message: '请选择企业'}]">
|
<el-row>
|
<el-button @click="selectSupplier" icon="el-icon-plus">选择企业</el-button>
|
<div class="mt10" v-if="formData.shop_supplier_id!=''">
|
<el-tag>{{ formData.supplier_name }}</el-tag>
|
</div>
|
</el-row>
|
</el-form-item>
|
<el-form-item label="籍贯" :label-width="formLabelWidth">
|
<el-select v-model="formData.province_id" placeholder="省" @change="initCity">
|
<el-option :label="item.name" :value="item.id" v-for="(item,index) in areaList" :key='index'></el-option>
|
</el-select>
|
<el-select v-if="formData.province_id!=''" v-model="formData.city_id" placeholder="市" @change="initRegion">
|
<el-option :label="item1.name" :value="item1.id" v-for="(item1,index1) in areaList[formData.province_id]['city']"
|
:key='index1'></el-option>
|
</el-select>
|
<el-select v-if="formData.city_id!=''" v-model="formData.region_id" placeholder="区">
|
<el-option :label="item2.name" :value="item2.id" v-for="(item2,index2) in areaList[formData.province_id]['city'][formData.city_id]['region']"
|
:key='index2'></el-option>
|
</el-select>
|
</el-form-item>
|
<el-form-item label="个人简介" :label-width="formLabelWidth" prop="describe">
|
<el-input type="textarea" v-model="formData.describe" class="max-w460"></el-input>
|
</el-form-item>
|
</el-form>
|
<div slot="footer" class="dialog-footer">
|
<el-button @click="cancelFunc">取 消</el-button>
|
<el-button type="primary" @click="confirmFunc">确 定</el-button>
|
</div>
|
<!--选择用户-->
|
<GetUser :is_open="open_getuser" @close="closeGetuserFunc"></GetUser>
|
<!--选择商户-->
|
<GetSupplier :open="open_supplier" @close="closeSupplierFunc"></GetSupplier>
|
<!--上传图片组件-->
|
<Upload v-if="isupload" :isupload="isupload" @returnImgs="returnImgsFunc">上传图片</Upload>
|
</el-dialog>
|
</template>
|
|
<script>
|
import BranchApi from '@/api/branch.js';
|
import GetUser from '@/components/user/GetUser.vue';
|
import GetSupplier from '@/components/supplier/Supplier.vue';
|
import Upload from '@/components/file/Upload';
|
export default {
|
components: {
|
GetUser,
|
GetSupplier,
|
/*上传组件*/
|
Upload,
|
},
|
data() {
|
return {
|
loading: true,
|
/*左边长度*/
|
formLabelWidth: '100px',
|
/*是否显示*/
|
dialogVisible: false,
|
open_getuser: false,
|
user_info: [],
|
open_supplier: false,
|
supplier_name: '',
|
/*省市区*/
|
areaList: [],
|
/*是否上传图片*/
|
isupload: false,
|
};
|
},
|
props: ['open_edit', 'positionList', 'formData'],
|
created() {
|
this.dialogVisible = this.open_edit;
|
this.getData();
|
},
|
methods: {
|
getData(){
|
let self = this;
|
BranchApi.toEditMember({}, true)
|
.then(res => {
|
// self.positionList = res.data.positionList;
|
self.areaList = res.data.areaList;
|
self.loading = false;
|
})
|
.catch(error => {});
|
},
|
/*新增成员*/
|
confirmFunc() {
|
let self = this;
|
let formData = self.formData;
|
self.$refs.form.validate((valid) => {
|
if (valid) {
|
BranchApi.editMember(formData, true)
|
.then(data => {
|
self.$message({
|
message: '修改成功',
|
type: 'success'
|
});
|
self.cancelFunc(true);
|
})
|
.catch(error => {});
|
}
|
});
|
},
|
|
/*打开选择会员弹出层*/
|
selectUser() {
|
this.open_getuser = true;
|
},
|
|
/*关闭获取用户弹窗*/
|
closeGetuserFunc(e) {
|
if (e.type != 'error') {
|
this.user_info = e.params[0];
|
this.formData.user_id = e.params[0].user_id;
|
this.formData.real_name = e.params[0].real_name;
|
this.formData.mobile = e.params[0].mobile;
|
}
|
this.open_getuser = false;
|
},
|
|
/*打开选择商户弹出层*/
|
selectSupplier() {
|
this.open_supplier = true;
|
},
|
|
/*关闭获取商户弹窗*/
|
closeSupplierFunc(e) {
|
if (e.type != 'error') {
|
this.formData.shop_supplier_id = e.params.shop_supplier_id;
|
this.supplier_name = e.params.name;
|
}
|
this.open_supplier = false;
|
},
|
|
/*关闭弹窗*/
|
cancelFunc(e) {
|
let type='cancel';
|
if(e){
|
type='success';
|
}
|
this.$emit('close', {
|
type:type
|
});
|
},
|
|
/*初始化城市id*/
|
initCity() {
|
this.formData.city_id = ''
|
},
|
|
/*初始化区id*/
|
initRegion() {
|
this.formData.region_id = ''
|
},
|
|
/*上传*/
|
openUpload(e) {
|
this.type = e;
|
this.isupload = true;
|
},
|
/*获取图片*/
|
returnImgsFunc(e) {
|
if (e != null && e.length > 0) {
|
this.formData.avatarUrl = e[0].file_path;
|
}
|
this.isupload = false;
|
},
|
}
|
};
|
</script>
|
|
<style lang="scss" scoped>
|
.img {
|
|
img {
|
border-radius: 30px;
|
}
|
}
|
</style>
|