fix(用户管理增加租户选择):

在用户管理中增加租户的下拉选择,若不选择租户则默认查询所有
This commit is contained in:
ni ziyi 2026-01-13 10:42:54 +08:00
parent a799cf7eb8
commit 161303516b

View File

@ -62,6 +62,11 @@
<el-table-column label="用户名称" align="center" key="userName" prop="userName" v-if="columns.userName.visible" :show-overflow-tooltip="true" />
<el-table-column label="用户昵称" align="center" key="nickName" prop="nickName" v-if="columns.nickName.visible" :show-overflow-tooltip="true" />
<el-table-column label="部门" align="center" key="deptName" prop="dept.deptName" v-if="columns.deptName.visible" :show-overflow-tooltip="true" />
<el-table-column label="所属租户" align="center" key="tenantName" v-if="columns.tenantName.visible" :show-overflow-tooltip="true">
<template #default="scope">
<span>{{ getTenantName(scope.row.tenantId) }}</span>
</template>
</el-table-column>
<el-table-column label="手机号码" align="center" key="phonenumber" prop="phonenumber" v-if="columns.phonenumber.visible" width="120" />
<el-table-column label="状态" align="center" key="status" v-if="columns.status.visible">
<template #default="scope">
@ -117,11 +122,21 @@
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="所属租户" prop="tenantId">
<el-select v-model="form.tenantId" placeholder="请选择租户(不选则为平台管理员)" clearable style="width: 100%">
<el-option label="平台管理员(无租户)" :value="null" />
<el-option v-for="item in tenantOptions" :key="item.tenantId" :label="item.tenantName" :value="item.tenantId" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="手机号码" prop="phonenumber">
<el-input v-model="form.phonenumber" placeholder="请输入手机号码" maxlength="11" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="邮箱" prop="email">
<el-input v-model="form.email" placeholder="请输入邮箱" maxlength="50" />
@ -217,6 +232,7 @@
import { getToken } from "@/utils/auth"
import useAppStore from '@/store/modules/app'
import { changeUserStatus, listUser, resetUserPwd, delUser, getUser, updateUser, addUser, deptTreeSelect } from "@/api/system/user"
import { listTenant } from "@/api/business/tenant"
import { Splitpanes, Pane } from "splitpanes"
import "splitpanes/dist/splitpanes.css"
@ -241,6 +257,7 @@ const enabledDeptOptions = ref(undefined)
const initPassword = ref(undefined)
const postOptions = ref([])
const roleOptions = ref([])
const tenantOptions = ref([])
/*** 用户导入参数 */
const upload = reactive({
//
@ -262,6 +279,7 @@ const columns = ref({
userName: { label: '用户名称', visible: true },
nickName: { label: '用户昵称', visible: true },
deptName: { label: '部门', visible: true },
tenantName: { label: '所属租户', visible: true },
phonenumber: { label: '手机号码', visible: true },
status: { label: '状态', visible: true },
createTime: { label: '创建时间', visible: true }
@ -317,6 +335,20 @@ function getDeptTree() {
})
}
/** 查询租户列表 */
function getTenantList() {
listTenant({ status: '0' }).then(response => {
tenantOptions.value = response.rows || []
})
}
/** 获取租户名称 */
function getTenantName(tenantId) {
if (!tenantId) return '平台管理员'
const tenant = tenantOptions.value.find(t => t.tenantId === tenantId)
return tenant ? tenant.tenantName : '-'
}
/** 过滤禁用的部门 */
function filterDisabledDept(deptList) {
return deptList.filter(dept => {
@ -480,6 +512,7 @@ function reset() {
form.value = {
userId: undefined,
deptId: undefined,
tenantId: undefined,
userName: undefined,
nickName: undefined,
password: undefined,
@ -551,6 +584,7 @@ function submitForm() {
onMounted(() => {
getDeptTree()
getTenantList()
getList()
proxy.getConfigKey("sys.user.initPassword").then(response => {
initPassword.value = response.msg