完善后台用户添加和公司管理接口
This commit is contained in:
@@ -2,34 +2,35 @@
|
||||
<el-dialog :title="titleMap[mode]" v-model="visible" :width="500" destroy-on-close @closed="$emit('closed')">
|
||||
<el-form :model="form" :rules="rules" :disabled="mode=='show'" ref="dialogForm" label-width="100px" label-position="right">
|
||||
<el-form-item label="头像" prop="avatar">
|
||||
<sc-upload v-model="form.avatar" title="上传头像"></sc-upload>
|
||||
<ossImgUpload @parentParams="parentParams" :url="form.avatar" />
|
||||
</el-form-item>
|
||||
<el-form-item label="登录账号" prop="userName">
|
||||
<el-input v-model="form.userName" placeholder="用于登录系统" clearable></el-input>
|
||||
<el-form-item label="登录账号" prop="login_name">
|
||||
<el-input v-model="form.login_name" placeholder="请填写登录账号" clearable></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="姓名" prop="name">
|
||||
<el-input v-model="form.name" placeholder="请输入完整的真实姓名" clearable></el-input>
|
||||
<el-input v-model="form.name" placeholder="请填写真实姓名" clearable></el-input>
|
||||
</el-form-item>
|
||||
<template v-if="mode=='add'">
|
||||
<el-form-item label="登录密码" prop="password">
|
||||
<el-input type="password" v-model="form.password" clearable show-password></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="确认密码" prop="password2">
|
||||
<el-input type="password" v-model="form.password2" clearable show-password></el-input>
|
||||
</el-form-item>
|
||||
</template>
|
||||
<el-form-item label="所属部门" prop="dept">
|
||||
<el-cascader v-model="form.dept" :options="depts" :props="deptsProps" clearable style="width: 100%;"></el-cascader>
|
||||
<el-form-item label="联系电话" prop="mobile">
|
||||
<el-input v-model="form.mobile" placeholder="请填写联系电话" clearable></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="所属角色" prop="group">
|
||||
<el-select v-model="form.group" multiple filterable style="width: 100%">
|
||||
<el-form-item label="电子邮件" prop="email">
|
||||
<el-input v-model="form.email" placeholder="请填写电子邮件" clearable></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="登录密码" prop="password">
|
||||
<el-input type="password" v-model="form.password" placeholder="请填写密码" clearable show-password></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="所属部门" prop="dept_id">
|
||||
<el-cascader v-model="form.dept_id" :options="depts" :props="deptsProps" placeholder="请选择部门" clearable style="width: 100%;"></el-cascader>
|
||||
</el-form-item>
|
||||
<el-form-item label="所属角色" prop="role_ids">
|
||||
<el-select v-model="form.role_ids" multiple filterable placeholder="请选择角色" style="width: 100%">
|
||||
<el-option v-for="item in groups" :key="item.id" :label="item.label" :value="item.id"/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<template #footer>
|
||||
<el-button @click="visible=false" >取 消</el-button>
|
||||
<el-button v-if="mode!='show'" type="primary" :loading="isSaveing" @click="submit()">保 存</el-button>
|
||||
<el-button v-if="mode!='show'" type="primary" :loading="isSave" @click="submit()">保 存</el-button>
|
||||
</template>
|
||||
</el-dialog>
|
||||
</template>
|
||||
@@ -46,22 +47,25 @@
|
||||
show: '查看'
|
||||
},
|
||||
visible: false,
|
||||
isSaveing: false,
|
||||
isSave: false,
|
||||
//表单数据
|
||||
form: {
|
||||
id:"",
|
||||
userName: "",
|
||||
login_name: "",
|
||||
name:"",
|
||||
mobile:"",
|
||||
email:"",
|
||||
avatar: "",
|
||||
name: "",
|
||||
dept: "",
|
||||
group: []
|
||||
password:"",
|
||||
dept_id: "",
|
||||
role_ids: []
|
||||
},
|
||||
//验证规则
|
||||
rules: {
|
||||
avatar:[
|
||||
{required: true, message: '请上传头像'}
|
||||
],
|
||||
userName: [
|
||||
login_name: [
|
||||
{required: true, message: '请输入登录账号'}
|
||||
],
|
||||
name: [
|
||||
@@ -103,8 +107,10 @@
|
||||
depts: [],
|
||||
deptsProps: {
|
||||
value: "id",
|
||||
checkStrictly: true
|
||||
checkStrictly: false,
|
||||
emitPath:false
|
||||
}
|
||||
// checkStrictly: false,
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
@@ -120,26 +126,27 @@
|
||||
},
|
||||
//加载树数据
|
||||
async getGroup(){
|
||||
var res = await this.$API.system.role.list.get();
|
||||
const res = await this.$API.system.role.list.get();
|
||||
this.groups = res.data.rows;
|
||||
},
|
||||
async getDept(){
|
||||
var res = await this.$API.system.dept.list.get();
|
||||
const res = await this.$API.system.dept.active.post();
|
||||
this.depts = res.data;
|
||||
},
|
||||
parentParams(item){
|
||||
this.form.avatar = item;
|
||||
},
|
||||
//表单提交方法
|
||||
submit(){
|
||||
this.$refs.dialogForm.validate(async (valid) => {
|
||||
if (valid) {
|
||||
this.isSaveing = true;
|
||||
var res = await this.$API.demo.post.post(this.form);
|
||||
this.isSaveing = false;
|
||||
this.isSave = true;
|
||||
const res = await this.$API.system.user.add.post(this.form);
|
||||
this.isSave = false;
|
||||
if(res.code == 200){
|
||||
this.$emit('success', this.form, this.mode)
|
||||
this.visible = false;
|
||||
this.$message.success("操作成功")
|
||||
}else{
|
||||
this.$alert(res.message, "提示", {type: 'error'})
|
||||
}
|
||||
}else{
|
||||
return false;
|
||||
|
||||
Reference in New Issue
Block a user