From cf7a2843b3ede9f7cf13e48d953d38bf04810fb3 Mon Sep 17 00:00:00 2001 From: Jungley Yeh Date: Sun, 13 Aug 2023 15:15:51 +0800 Subject: [PATCH] feat: Allow users to view their associated user groups and roles in the frontend MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit close: #265 仅在 PC端 展示,移动端不变 --- web/src/components/Header.js | 8 +++++++- web/src/components/UserRole.js | 17 +++++++++++++++++ web/src/components/UsersTable.js | 15 +-------------- web/src/helpers/render.js | 13 +++++++++++++ 4 files changed, 38 insertions(+), 15 deletions(-) create mode 100644 web/src/components/UserRole.js diff --git a/web/src/components/Header.js b/web/src/components/Header.js index 21ebcab6..920a869d 100644 --- a/web/src/components/Header.js +++ b/web/src/components/Header.js @@ -5,6 +5,7 @@ import { UserContext } from '../context/User'; import { Button, Container, Dropdown, Icon, Menu, Segment } from 'semantic-ui-react'; import { API, getLogo, getSystemName, isAdmin, isMobile, showSuccess } from '../helpers'; import '../index.css'; +import { renderGroup, renderRole } from '../helpers/render'; // Header Buttons let headerButtons = [ @@ -202,7 +203,12 @@ const Header = () => { className='link item' > - 注销 + 用户组:{renderGroup(userState.user.group)} + 角色:{renderRole(userState.user.role)} + + + 注销 + ) : ( diff --git a/web/src/components/UserRole.js b/web/src/components/UserRole.js new file mode 100644 index 00000000..80f388ae --- /dev/null +++ b/web/src/components/UserRole.js @@ -0,0 +1,17 @@ +import React from 'react'; +import { Label } from 'semantic-ui-react'; + +const UserRole = ({ role }) => { + switch (role) { + case 1: + return ; + case 10: + return ; + case 100: + return ; + default: + return ; + } +}; + +export default UserRole; diff --git a/web/src/components/UsersTable.js b/web/src/components/UsersTable.js index f8fb0a75..22f60d92 100644 --- a/web/src/components/UsersTable.js +++ b/web/src/components/UsersTable.js @@ -4,20 +4,7 @@ import { Link } from 'react-router-dom'; import { API, showError, showSuccess } from '../helpers'; import { ITEMS_PER_PAGE } from '../constants'; -import { renderGroup, renderNumber, renderQuota, renderText } from '../helpers/render'; - -function renderRole(role) { - switch (role) { - case 1: - return ; - case 10: - return ; - case 100: - return ; - default: - return ; - } -} +import { renderGroup, renderNumber, renderQuota, renderRole, renderText } from '../helpers/render'; const UsersTable = () => { const [users, setUsers] = useState([]); diff --git a/web/src/helpers/render.js b/web/src/helpers/render.js index a9c81cc1..301d3236 100644 --- a/web/src/helpers/render.js +++ b/web/src/helpers/render.js @@ -7,6 +7,19 @@ export function renderText(text, limit) { return text; } +export function renderRole(role) { + switch (role) { + case 1: + return ; + case 10: + return ; + case 100: + return ; + default: + return ; + } +} + export function renderGroup(group) { if (group === '') { return ;