Skip to content

Commit 414769f

Browse files
committed
refactor: update default password configuration key and improve model field formatting
1 parent c4df5ce commit 414769f

File tree

3 files changed

+26
-14
lines changed

3 files changed

+26
-14
lines changed

apps/users/views/user.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -182,6 +182,9 @@ class Password(APIView):
182182
operation_id=_("Get default password"), # type: ignore
183183
tags=[_("User Management")], # type: ignore
184184
responses=UserPasswordResponse.get_response())
185+
@has_permissions(PermissionConstants.USER_CREATE, PermissionConstants.CHAT_USER_CREATE,
186+
PermissionConstants.WORKSPACE_CHAT_USER_CREATE, RoleConstants.ADMIN,
187+
RoleConstants.WORKSPACE_MANAGE)
185188
def get(self, request: Request):
186189
return result.success(data={'password': default_password})
187190

ui/src/stores/modules/user.ts

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
1-
import { defineStore } from 'pinia'
2-
import { type Ref } from 'vue'
3-
import type { User } from '@/api/type/user'
1+
import {defineStore} from 'pinia'
2+
import {type Ref} from 'vue'
3+
import type {User} from '@/api/type/user'
44
import UserApi from '@/api/user/user'
55
import LoginApi from '@/api/user/login'
6-
import { useLocalStorage } from '@vueuse/core'
6+
import {useLocalStorage} from '@vueuse/core'
77

8-
import { localeConfigKey, getBrowserLang } from '@/locales/index'
8+
import {localeConfigKey, getBrowserLang} from '@/locales/index'
99
import useThemeStore from './theme'
10-
import { defaultPlatformSetting } from '@/utils/theme'
10+
import {defaultPlatformSetting} from '@/utils/theme'
1111
import useLoginStore from './login'
1212

1313
export interface userStateTypes {
@@ -73,6 +73,9 @@ const useUserStore = defineStore('user', {
7373
}
7474
},
7575

76+
is_admin() {
77+
return this.userInfo?.role.includes('ADMIN')
78+
},
7679
showXpack() {
7780
return this.edition != 'CE'
7881
},
@@ -91,7 +94,7 @@ const useUserStore = defineStore('user', {
9194
isEE() {
9295
return this.edition == 'EE' && this.license_is_valid
9396
},
94-
getEditionName() {
97+
getEditionName() {
9598
return this.edition
9699
},
97100
async profile(loading?: Ref<boolean>) {
@@ -100,7 +103,7 @@ const useUserStore = defineStore('user', {
100103
const workspace_list =
101104
ok.data.workspace_list && ok.data.workspace_list.length > 0
102105
? ok.data.workspace_list
103-
: [{ id: 'default', name: 'default' }]
106+
: [{id: 'default', name: 'default'}]
104107
const workspace_id = this.getWorkspaceId()
105108
if (!workspace_id || !workspace_list.some((w) => w.id == workspace_id)) {
106109
this.setWorkspaceId(workspace_list[0].id)
@@ -140,7 +143,7 @@ const useUserStore = defineStore('user', {
140143
},
141144
async postUserLanguage(lang: string, loading?: Ref<boolean>) {
142145
return new Promise((resolve, reject) => {
143-
LoginApi.postLanguage({ language: lang }, loading)
146+
LoginApi.postLanguage({language: lang}, loading)
144147
.then(async (ok) => {
145148
useLocalStorage(localeConfigKey, 'en-US').value = lang
146149
window.location.reload()

ui/src/views/system/role/index.ts

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,14 @@
1-
import { RoleTypeEnum } from '@/enums/system'
2-
import { t } from '@/locales'
1+
import {RoleTypeEnum} from '@/enums/system'
2+
import {t} from '@/locales'
3+
import useStore from '@/stores'
34

5+
const {user} = useStore()
46
export const roleTypeMap: Record<RoleTypeEnum, string> = {
5-
[RoleTypeEnum.ADMIN]: t('views.role.systemAdmin'),
7+
...(user.is_admin()
8+
? {
9+
[RoleTypeEnum.ADMIN]: t('views.role.systemAdmin'),
10+
}
11+
: {}),
612
[RoleTypeEnum.USER]: t('views.role.user'),
7-
[RoleTypeEnum.WORKSPACE_MANAGE]: t('views.role.workspaceAdmin')
8-
}
13+
[RoleTypeEnum.WORKSPACE_MANAGE]: t('views.role.workspaceAdmin'),
14+
};

0 commit comments

Comments
 (0)