完善后台用户添加和公司管理接口
This commit is contained in:
parent
6e01d7c891
commit
c2fe2415a4
@ -68,7 +68,6 @@
|
||||
.el-header .right-panel > * + * {margin-left:10px;}
|
||||
.el-footer {background: #fff;border-top: 1px solid var(--el-border-color-light);padding:13px 15px;}
|
||||
.el-main {padding:10px;width: 100%;height: 100%;box-sizing: border-box;background: var(--el-color-white);border-radius: 4px;}
|
||||
.noBorderRadius{border-radius: 0 !important;}
|
||||
.el-main.nopadding {padding:0;background: #fff;display: flex;flex-direction: column;}
|
||||
.el-main.nopadding .scTable{flex: 1;overflow: hidden;}
|
||||
|
||||
|
||||
@ -36,7 +36,7 @@
|
||||
<el-table-column type="selection" align="center" width="40"></el-table-column>
|
||||
<el-table-column type="index" align="center" label="序号" width="50"></el-table-column>
|
||||
<template #logo="scope">
|
||||
<el-image class="logoCell" :src="scope.row.logo"></el-image>
|
||||
<el-image class="logoCell" :src="scope.row.logo" fit="contain"></el-image>
|
||||
</template>
|
||||
<template #active_status="scope">
|
||||
<el-switch :size="size" v-model="scope.row.active_status" @change="changeSwitch($event, scope.row)" :loading="scope.row.$switch_status" :active-value="true" :inactive-value="false"></el-switch>
|
||||
@ -141,7 +141,7 @@ export default {
|
||||
//删除
|
||||
async table_del(row){
|
||||
const reqData = {id: row.id};
|
||||
const res = await this.$API.demo.post.post(reqData);
|
||||
const res = await this.$API.system.company.delete.post(reqData);
|
||||
if(res.code == 200){
|
||||
this.$refs.table.refresh()
|
||||
this.$message.success("删除成功")
|
||||
@ -195,6 +195,7 @@ export default {
|
||||
.logoCell{
|
||||
display: flex;
|
||||
align-items: center;
|
||||
height: 100%;
|
||||
height: 20px;
|
||||
margin: 0 auto;
|
||||
}
|
||||
</style>
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<el-dialog :title="titleMap[mode]" v-model="visible" :width="580" destroy-on-close draggable @closed="$emit('closed')">
|
||||
<el-dialog :title="titleMap[mode]" v-model="visible" :width="640" destroy-on-close draggable @closed="$emit('closed')">
|
||||
<el-scrollbar height="460px" style="padding: 0 20px;">
|
||||
<el-form :model="form" :rules="rules" ref="dialogForm" label-width="140px">
|
||||
<div class="dialogBoxTitle"><span class="make"></span><span class="name">企业信息</span></div>
|
||||
@ -32,13 +32,13 @@
|
||||
<div class="dialogBoxTitle"><span class="make"></span><span class="name">企业管理员信息</span></div>
|
||||
<el-form-item label="负责人/联系方式" prop="status">
|
||||
<el-row justify="space-between">
|
||||
<el-col :span="7">
|
||||
<el-col :span="5">
|
||||
<el-input v-model="form.owner" placeholder="公司负责人"></el-input>
|
||||
</el-col>
|
||||
<el-col :span="7">
|
||||
<el-input v-model="form.mobile" placeholder="联系方式"></el-input>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-col :span="10">
|
||||
<el-input v-model="form.email" placeholder="邮箱地址"></el-input>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@ -110,13 +110,14 @@ export default {
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
|
||||
this.getCompanyTypeSelect(true);
|
||||
},
|
||||
methods: {
|
||||
//显示
|
||||
open(mode='add'){
|
||||
this.mode = mode;
|
||||
this.visible = true;
|
||||
|
||||
return this
|
||||
},
|
||||
//加载树数据
|
||||
@ -149,13 +150,29 @@ export default {
|
||||
})
|
||||
},
|
||||
//表单注入数据
|
||||
setData(data){
|
||||
this.form.id = data.id
|
||||
this.form.label = data.label
|
||||
this.form.status = data.status
|
||||
this.form.sort = data.sort
|
||||
this.form.parentId = data.parentId
|
||||
this.form.remark = data.remark
|
||||
async setData(data) {
|
||||
let params = {
|
||||
id:data.id
|
||||
}
|
||||
|
||||
const res = await this.$API.system.company.info.post(params);
|
||||
if(res.code == 200){
|
||||
this.form.id = res.data.id;
|
||||
this.form.domain = res.data.domain;
|
||||
this.form.company_type = res.data.company_type;
|
||||
this.form.name = res.data.name;
|
||||
this.form.full_name = res.data.full_name;
|
||||
this.form.address = res.data.address;
|
||||
this.form.email = res.data.platform_user && res.data.platform_user.email?res.data.platform_user.email:'';
|
||||
this.form.logo = res.data.logo;
|
||||
this.form.doc_url = [];
|
||||
this.form.owner = res.data.owner;
|
||||
this.form.mobile = res.data.mobile;
|
||||
this.form.admin_access = res.data.admin_access;
|
||||
this.form.password = res.data.password;
|
||||
this.form.remark = res.data.remark;
|
||||
this.form.accord = 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -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;
|
||||
|
||||
@ -136,5 +136,5 @@
|
||||
}
|
||||
</script>
|
||||
<style scoped lang="scss">
|
||||
|
||||
.noBorderRadius{border-radius: 0 !important;}
|
||||
</style>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user