调整运营后台用户管理
This commit is contained in:
@@ -109,3 +109,13 @@ export async function importUsers(file) {
|
||||
}
|
||||
return Promise.reject(new Error(res.data.message));
|
||||
}
|
||||
|
||||
export async function orgNameList(params) {
|
||||
const res = await request.get('/organization/user/orgNameList', {
|
||||
params
|
||||
});
|
||||
if (res.data.code === 0) {
|
||||
return res.data.data;
|
||||
}
|
||||
return Promise.reject(new Error(res.data.message));
|
||||
}
|
||||
|
||||
@@ -17,7 +17,8 @@
|
||||
<el-input clearable v-model="where.mobile" placeholder="请输入" />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col v-bind="styleResponsive ? { lg: 12, md: 12 } : { span: 12 }">
|
||||
<!--
|
||||
<el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
|
||||
<el-form-item label="机构">
|
||||
<el-select value="" v-model="where.teamId" clearable>
|
||||
<el-option
|
||||
@@ -29,6 +30,29 @@
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
-->
|
||||
<el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
|
||||
<el-form-item label="城市:">
|
||||
<regions-select
|
||||
v-model="where.citys"
|
||||
type="provinceCity"
|
||||
placeholder="请选择省市"
|
||||
class="ele-fluid"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
|
||||
<el-form-item label="机构">
|
||||
<el-select value="" v-model="where.orgName" clearable filterable>
|
||||
<el-option
|
||||
v-for="(item, index) in orgNameList"
|
||||
:value="item"
|
||||
:key="index"
|
||||
:label="item"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
|
||||
<el-form-item label="中心">
|
||||
<el-select v-model="where.centerNumber" clearable>
|
||||
@@ -80,9 +104,15 @@
|
||||
|
||||
<script>
|
||||
import { listOrganizations } from '@/api/organization/manage';
|
||||
import { groupTypeUsers, centerUsers } from '@/api/organization/user';
|
||||
import {
|
||||
groupTypeUsers,
|
||||
centerUsers,
|
||||
orgNameList
|
||||
} from '@/api/organization/user';
|
||||
import RegionsSelect from '@/components/RegionsSelect/index.vue';
|
||||
|
||||
export default {
|
||||
components: { RegionsSelect },
|
||||
data() {
|
||||
// 默认表单数据
|
||||
const defaultWhere = {
|
||||
@@ -91,14 +121,17 @@
|
||||
orgId: '',
|
||||
teamId: '',
|
||||
groupType: '',
|
||||
centerNumber: ''
|
||||
centerNumber: '',
|
||||
citys: [],
|
||||
orgName: ''
|
||||
};
|
||||
return {
|
||||
// 表单数据
|
||||
where: { ...defaultWhere },
|
||||
teamList: [],
|
||||
groupList: [],
|
||||
centerList: []
|
||||
centerList: [],
|
||||
orgNameList: []
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
@@ -109,12 +142,13 @@
|
||||
},
|
||||
created() {
|
||||
this.initData();
|
||||
this.loadOrgNameList();
|
||||
},
|
||||
methods: {
|
||||
async initData() {
|
||||
try {
|
||||
await this.loadOrg();
|
||||
await this.loadOrgTeam();
|
||||
// await this.loadOrgTeam();
|
||||
await Promise.all([
|
||||
groupTypeUsers()
|
||||
.then((data) => {
|
||||
@@ -135,6 +169,15 @@
|
||||
this.$message.error(e.message);
|
||||
}
|
||||
},
|
||||
loadOrgNameList() {
|
||||
orgNameList()
|
||||
.then((data) => {
|
||||
this.orgNameList = data;
|
||||
})
|
||||
.catch((e) => {
|
||||
this.$message.error(e.message);
|
||||
});
|
||||
},
|
||||
loadOrg() {
|
||||
return new Promise((resolve, reject) => {
|
||||
listOrganizations({ pid: 0 })
|
||||
|
||||
@@ -32,22 +32,22 @@
|
||||
</el-button>
|
||||
</template>
|
||||
<!-- 用户名列 -->
|
||||
<template v-slot:nickname="{ row }">
|
||||
<router-link :to="'/system/user/details?id=' + row.id">
|
||||
{{ row.nickname }}
|
||||
</router-link>
|
||||
<template v-slot:username="{ row }">
|
||||
<div>{{ row.username }}</div>
|
||||
<div>{{ row.userCode }}</div>
|
||||
<div>{{ row.mobile }}</div>
|
||||
</template>
|
||||
<!-- 角色列 -->
|
||||
<template v-slot:roles="{ row }">
|
||||
<el-tag
|
||||
v-for="item in row.roles"
|
||||
:key="item.roleId"
|
||||
size="mini"
|
||||
type="primary"
|
||||
:disable-transitions="true"
|
||||
>
|
||||
{{ item.roleName }}
|
||||
</el-tag>
|
||||
<template v-slot:team="{ row }">
|
||||
<div>{{ row.teamUser.username }}</div>
|
||||
<div>{{ row.teamUser.userCode }}</div>
|
||||
</template>
|
||||
<template v-slot:dep="{ row }">
|
||||
<div>{{ row.depUser.username }}</div>
|
||||
<div>{{ row.depUser.userCode }}</div>
|
||||
</template>
|
||||
<template v-slot:area="{ row }">
|
||||
<div>{{ row.areaUser.username }}</div>
|
||||
<div>{{ row.areaUser.userCode }}</div>
|
||||
</template>
|
||||
<!-- 状态列 -->
|
||||
<template v-slot:status="{ row }">
|
||||
@@ -119,26 +119,37 @@
|
||||
fixed: 'left'
|
||||
},
|
||||
{
|
||||
prop: 'userCode',
|
||||
label: '工号',
|
||||
width: 200,
|
||||
prop: 'username',
|
||||
label: '姓名工号',
|
||||
align: 'center',
|
||||
showOverflowTooltip: true,
|
||||
width: 180,
|
||||
slot: 'username',
|
||||
fixed: 'left'
|
||||
},
|
||||
{
|
||||
prop: 'username',
|
||||
label: '姓名',
|
||||
prop: 'team',
|
||||
label: '团队长',
|
||||
align: 'center',
|
||||
showOverflowTooltip: true,
|
||||
width: 120
|
||||
width: 180,
|
||||
slot: 'team'
|
||||
},
|
||||
{
|
||||
prop: 'mobile',
|
||||
label: '手机号',
|
||||
prop: 'dep',
|
||||
label: '部经理',
|
||||
align: 'center',
|
||||
showOverflowTooltip: true,
|
||||
width: 120
|
||||
width: 180,
|
||||
slot: 'dep'
|
||||
},
|
||||
{
|
||||
prop: 'area',
|
||||
label: '区经理',
|
||||
align: 'center',
|
||||
showOverflowTooltip: true,
|
||||
width: 180,
|
||||
slot: 'area'
|
||||
},
|
||||
{
|
||||
prop: 'centerNumber',
|
||||
@@ -149,8 +160,8 @@
|
||||
showOverflowTooltip: true
|
||||
},
|
||||
{
|
||||
prop: 'orgTeamName',
|
||||
label: '机构团队',
|
||||
prop: 'orgName',
|
||||
label: '归属机构',
|
||||
align: 'center',
|
||||
width: 80,
|
||||
resizable: false,
|
||||
@@ -196,7 +207,7 @@
|
||||
{
|
||||
columnKey: 'action',
|
||||
label: '操作',
|
||||
minWidth: 180,
|
||||
minWidth: 150,
|
||||
align: 'center',
|
||||
resizable: false,
|
||||
slot: 'action',
|
||||
|
||||
Reference in New Issue
Block a user