diff --git a/apps/users/serializers/user_serializers.py b/apps/users/serializers/user_serializers.py index 6672a4cb5..352bf6f96 100644 --- a/apps/users/serializers/user_serializers.py +++ b/apps/users/serializers/user_serializers.py @@ -418,7 +418,8 @@ class UserProfile(ApiMixin): permission_list = get_user_dynamics_permission(str(user.id)) permission_list += [p.value for p in get_permission_list_by_role(RoleConstants[user.role])] return {'id': user.id, 'username': user.username, 'email': user.email, 'role': user.role, - 'permissions': [str(p) for p in permission_list]} + 'permissions': [str(p) for p in permission_list], + 'is_edit_password': user.password == 'd880e722c47a34d8e9fce789fc62389d' if user.role == 'ADMIN' else False} @staticmethod def get_response_body_api(): diff --git a/ui/src/api/type/user.ts b/ui/src/api/type/user.ts index 04cbd4140..6724252c9 100644 --- a/ui/src/api/type/user.ts +++ b/ui/src/api/type/user.ts @@ -19,6 +19,10 @@ interface User { * 用户权限 */ permissions: Array + /** + * 是否需要修改密码 + */ + is_edit_password?: boolean } interface LoginRequest { diff --git a/ui/src/layout/components/top-bar/avatar/index.vue b/ui/src/layout/components/top-bar/avatar/index.vue index 19bdcdbb5..d6a889cf3 100644 --- a/ui/src/layout/components/top-bar/avatar/index.vue +++ b/ui/src/layout/components/top-bar/avatar/index.vue @@ -30,16 +30,19 @@ +