fix: build error
This commit is contained in:
parent
0f4ebc5981
commit
109e8507f1
@ -3,7 +3,7 @@ import {t} from '@/locales'
|
|||||||
import useStore from '@/stores'
|
import useStore from '@/stores'
|
||||||
|
|
||||||
const { user } = useStore()
|
const { user } = useStore()
|
||||||
export const roleTypeMap: { [RoleTypeEnum.USER]: string; [RoleTypeEnum.WORKSPACE_MANAGE]: string } = {
|
export const roleTypeMap: any = {
|
||||||
...(user.is_admin()
|
...(user.is_admin()
|
||||||
? {
|
? {
|
||||||
[RoleTypeEnum.ADMIN]: t('views.role.systemAdmin'),
|
[RoleTypeEnum.ADMIN]: t('views.role.systemAdmin'),
|
||||||
@ -11,4 +11,4 @@ export const roleTypeMap: { [RoleTypeEnum.USER]: string; [RoleTypeEnum.WORKSPACE
|
|||||||
: {}),
|
: {}),
|
||||||
[RoleTypeEnum.USER]: t('views.role.user'),
|
[RoleTypeEnum.USER]: t('views.role.user'),
|
||||||
[RoleTypeEnum.WORKSPACE_MANAGE]: t('views.role.workspaceAdmin'),
|
[RoleTypeEnum.WORKSPACE_MANAGE]: t('views.role.workspaceAdmin'),
|
||||||
};
|
}
|
||||||
|
|||||||
@ -45,8 +45,10 @@
|
|||||||
</el-input>
|
</el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item :label="$t('views.userManage.userForm.phone.label')" prop="phone">
|
<el-form-item :label="$t('views.userManage.userForm.phone.label')" prop="phone">
|
||||||
<el-input v-model="userForm.phone"
|
<el-input
|
||||||
:placeholder="$t('views.userManage.userForm.phone.placeholder')">
|
v-model="userForm.phone"
|
||||||
|
:placeholder="$t('views.userManage.userForm.phone.placeholder')"
|
||||||
|
>
|
||||||
</el-input>
|
</el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="默认密码" v-if="!isEdit">
|
<el-form-item label="默认密码" v-if="!isEdit">
|
||||||
@ -54,12 +56,18 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
<h4 class="title-decoration-1 mb-16 mt-8" v-if="user.isEE() || user.isPE()">
|
<h4 class="title-decoration-1 mb-16 mt-8" v-if="user.isEE() || user.isPE()">
|
||||||
{{ $t('views.userManage.roleSetting') }}</h4>
|
{{ $t('views.userManage.roleSetting') }}
|
||||||
<MemberFormContent ref="memberFormContentRef" :models="formItemModel" v-model:form="list"
|
</h4>
|
||||||
|
<MemberFormContent
|
||||||
|
ref="memberFormContentRef"
|
||||||
|
:models="formItemModel"
|
||||||
|
v-model:form="list"
|
||||||
v-loading="memberFormContentLoading"
|
v-loading="memberFormContentLoading"
|
||||||
keepOneLine
|
keepOneLine
|
||||||
:addText="$t('views.userManage.addRole')" v-if="user.isEE() || user.isPE()"
|
:addText="$t('views.userManage.addRole')"
|
||||||
:deleteButtonDisabled="deleteButtonDisabled"/>
|
v-if="user.isEE() || user.isPE()"
|
||||||
|
:deleteButtonDisabled="deleteButtonDisabled"
|
||||||
|
/>
|
||||||
<template #footer>
|
<template #footer>
|
||||||
<el-button @click.prevent="visible = false"> {{ $t('common.cancel') }}</el-button>
|
<el-button @click.prevent="visible = false"> {{ $t('common.cancel') }}</el-button>
|
||||||
<el-button type="primary" @click="submit(userFormRef)" :loading="loading">
|
<el-button type="primary" @click="submit(userFormRef)" :loading="loading">
|
||||||
@ -78,7 +86,7 @@ import type {FormItemModel} from '@/api/type/role'
|
|||||||
import WorkspaceApi from '@/api/workspace/workspace'
|
import WorkspaceApi from '@/api/workspace/workspace'
|
||||||
import MemberFormContent from '@/views/system/role/component/MemberFormContent.vue'
|
import MemberFormContent from '@/views/system/role/component/MemberFormContent.vue'
|
||||||
import { RoleTypeEnum } from '@/enums/system'
|
import { RoleTypeEnum } from '@/enums/system'
|
||||||
import useStore from "@/stores";
|
import useStore from '@/stores'
|
||||||
|
|
||||||
const { user } = useStore()
|
const { user } = useStore()
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
@ -96,10 +104,10 @@ const userForm = ref<any>({
|
|||||||
nick_name: '',
|
nick_name: '',
|
||||||
})
|
})
|
||||||
|
|
||||||
const list = ref<any[]>([]);
|
const list = ref<any[]>([])
|
||||||
const memberFormContentLoading = ref(false);
|
const memberFormContentLoading = ref(false)
|
||||||
const formItemModel = ref<FormItemModel[]>([]);
|
const formItemModel = ref<FormItemModel[]>([])
|
||||||
const roleFormItem = ref<FormItemModel[]>([]);
|
const roleFormItem = ref<FormItemModel[]>([])
|
||||||
const adminRoleList = ref<any[]>([])
|
const adminRoleList = ref<any[]>([])
|
||||||
const workspaceFormItem = ref<FormItemModel[]>([])
|
const workspaceFormItem = ref<FormItemModel[]>([])
|
||||||
|
|
||||||
@ -114,8 +122,9 @@ function deleteButtonDisabled(element: any) {
|
|||||||
|
|
||||||
async function getRoleFormItem() {
|
async function getRoleFormItem() {
|
||||||
try {
|
try {
|
||||||
const res = await WorkspaceApi.getWorkspaceRoleList(memberFormContentLoading);
|
const res = await WorkspaceApi.getWorkspaceRoleList(memberFormContentLoading)
|
||||||
roleFormItem.value = [{
|
roleFormItem.value = [
|
||||||
|
{
|
||||||
path: 'role_id',
|
path: 'role_id',
|
||||||
label: t('views.role.member.role'),
|
label: t('views.role.member.role'),
|
||||||
rules: [
|
rules: [
|
||||||
@ -125,17 +134,19 @@ async function getRoleFormItem() {
|
|||||||
},
|
},
|
||||||
],
|
],
|
||||||
selectProps: {
|
selectProps: {
|
||||||
options: res.data?.map(item => ({
|
options:
|
||||||
|
res.data?.map((item) => ({
|
||||||
label: item.name,
|
label: item.name,
|
||||||
value: item.id
|
value: item.id,
|
||||||
})) || [],
|
})) || [],
|
||||||
placeholder: `${t('common.selectPlaceholder')}${t('views.role.member.role')}`,
|
placeholder: `${t('common.selectPlaceholder')}${t('views.role.member.role')}`,
|
||||||
multiple: false
|
multiple: false,
|
||||||
}
|
},
|
||||||
}]
|
},
|
||||||
adminRoleList.value = res.data.filter(item => item.type === RoleTypeEnum.ADMIN)
|
]
|
||||||
|
adminRoleList.value = res.data.filter((item) => item.type === RoleTypeEnum.ADMIN)
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
console.error(e);
|
console.error(e)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -146,16 +157,20 @@ async function getWorkspaceFormItem() {
|
|||||||
{
|
{
|
||||||
path: 'workspace_ids',
|
path: 'workspace_ids',
|
||||||
label: t('views.role.member.workspace'),
|
label: t('views.role.member.workspace'),
|
||||||
hidden: (e) => adminRoleList.value.find(item => item.id === e.role_id),
|
hidden: (e) => adminRoleList.value.find((item) => item.id === e.role_id),
|
||||||
rules: [
|
rules: [
|
||||||
{
|
{
|
||||||
validator: (rule, value, callback) => {
|
validator: (rule, value, callback) => {
|
||||||
const match = rule.field?.match(/\[(\d+)\]/);
|
const match = rule.field?.match(/\[(\d+)\]/)
|
||||||
const isAdmin = adminRoleList.value.some(role => role.id === list.value[parseInt(match?.[1] ?? '', 10)].role_id);
|
const isAdmin = adminRoleList.value.some(
|
||||||
|
(role) => role.id === list.value[parseInt(match?.[1] ?? '', 10)].role_id,
|
||||||
|
)
|
||||||
if (!isAdmin && (!value || value.length === 0)) {
|
if (!isAdmin && (!value || value.length === 0)) {
|
||||||
callback(new Error(`${t('common.selectPlaceholder')}${t('views.role.member.workspace')}`));
|
callback(
|
||||||
|
new Error(`${t('common.selectPlaceholder')}${t('views.role.member.workspace')}`),
|
||||||
|
)
|
||||||
} else {
|
} else {
|
||||||
callback();
|
callback()
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
trigger: 'blur',
|
trigger: 'blur',
|
||||||
@ -166,12 +181,15 @@ async function getWorkspaceFormItem() {
|
|||||||
res.data?.map((item) => ({
|
res.data?.map((item) => ({
|
||||||
label: item.name,
|
label: item.name,
|
||||||
value: item.id,
|
value: item.id,
|
||||||
disabledFunction: (e: any)=> isAdmin.value && ['WORKSPACE_MANAGE', 'USER'].includes(e.role_id) && item.id === 'default'
|
disabledFunction: (e: any) =>
|
||||||
|
isAdmin.value &&
|
||||||
|
['WORKSPACE_MANAGE', 'USER'].includes(e.role_id) &&
|
||||||
|
item.id === 'default',
|
||||||
})) || [],
|
})) || [],
|
||||||
placeholder: `${t('common.selectPlaceholder')}${t('views.role.member.workspace')}`,
|
placeholder: `${t('common.selectPlaceholder')}${t('views.role.member.workspace')}`,
|
||||||
clearableFunction: (e) => {
|
clearableFunction: (e) => {
|
||||||
return !(isAdmin.value && ['WORKSPACE_MANAGE', 'USER'].includes(e.role_id))
|
return !(isAdmin.value && ['WORKSPACE_MANAGE', 'USER'].includes(e.role_id))
|
||||||
}
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
]
|
]
|
||||||
@ -182,9 +200,9 @@ async function getWorkspaceFormItem() {
|
|||||||
|
|
||||||
onBeforeMount(async () => {
|
onBeforeMount(async () => {
|
||||||
if (user.isEE() || user.isPE()) {
|
if (user.isEE() || user.isPE()) {
|
||||||
await getRoleFormItem();
|
await getRoleFormItem()
|
||||||
if (user.isEE()) {
|
if (user.isEE()) {
|
||||||
await getWorkspaceFormItem();
|
await getWorkspaceFormItem()
|
||||||
}
|
}
|
||||||
formItemModel.value = [...roleFormItem.value, ...workspaceFormItem.value]
|
formItemModel.value = [...roleFormItem.value, ...workspaceFormItem.value]
|
||||||
}
|
}
|
||||||
@ -273,7 +291,10 @@ const open = (data: any) => {
|
|||||||
userForm.value.password = data.password
|
userForm.value.password = data.password
|
||||||
userForm.value.phone = data.phone
|
userForm.value.phone = data.phone
|
||||||
userForm.value.nick_name = data.nick_name
|
userForm.value.nick_name = data.nick_name
|
||||||
list.value = data.role_setting.map(item=>({...item, workspace_ids: item.workspace_ids.includes('None')?[]:item.workspace_ids}))
|
list.value = data.role_setting.map((item: any) => ({
|
||||||
|
...item,
|
||||||
|
workspace_ids: item.workspace_ids.includes('None') ? [] : item.workspace_ids,
|
||||||
|
}))
|
||||||
isEdit.value = true
|
isEdit.value = true
|
||||||
} else {
|
} else {
|
||||||
//需要查询默认密码是啥zxl
|
//需要查询默认密码是啥zxl
|
||||||
@ -294,26 +315,26 @@ const submit = async (formEl: FormInstance | undefined) => {
|
|||||||
await memberFormContentRef.value?.validate()
|
await memberFormContentRef.value?.validate()
|
||||||
}
|
}
|
||||||
if (user.isPE() || user.isEE()) {
|
if (user.isPE() || user.isEE()) {
|
||||||
list.value = list.value.map(item => {
|
list.value = list.value.map((item) => {
|
||||||
const isAdminRole = adminRoleList.value.find(item1 => item1.id === item.role_id);
|
const isAdminRole = adminRoleList.value.find((item1) => item1.id === item.role_id)
|
||||||
|
|
||||||
// 如果是管理员角色,则设置为 ['None']
|
// 如果是管理员角色,则设置为 ['None']
|
||||||
if (isAdminRole) {
|
if (isAdminRole) {
|
||||||
return {...item, workspace_ids: ['None']};
|
return { ...item, workspace_ids: ['None'] }
|
||||||
}
|
}
|
||||||
|
|
||||||
// 如果是普通用户且是 PE 类型,则设置为 ['default']
|
// 如果是普通用户且是 PE 类型,则设置为 ['default']
|
||||||
if (user.isPE()) {
|
if (user.isPE()) {
|
||||||
return {...item, workspace_ids: ['default']};
|
return { ...item, workspace_ids: ['default'] }
|
||||||
}
|
}
|
||||||
|
|
||||||
// 其他情况保持原样
|
// 其他情况保持原样
|
||||||
return item;
|
return item
|
||||||
});
|
})
|
||||||
}
|
}
|
||||||
const params = {
|
const params = {
|
||||||
...userForm.value,
|
...userForm.value,
|
||||||
role_setting: list.value
|
role_setting: list.value,
|
||||||
}
|
}
|
||||||
if (isEdit.value) {
|
if (isEdit.value) {
|
||||||
userManageApi.putUserManage(userForm.value.id, params, loading).then((res) => {
|
userManageApi.putUserManage(userForm.value.id, params, loading).then((res) => {
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user