feat: merge account management into employee page

This commit is contained in:
Frudrax Cheng
2026-05-28 09:30:30 +08:00
parent aace7ef6e5
commit fe784f9e2b
6 changed files with 426 additions and 18 deletions
+6 -1
View File
@@ -6,6 +6,8 @@ import QRCode from 'qrcode';
import { useNavigate } from 'react-router-dom';
import type { Color } from 'antd/es/color-picker';
import type { EmployeeSerial } from '@/types';
import { authApi } from '@/services/api';
import EmployeeAccountsPanel from '@/components/EmployeeAccountsPanel';
function EmployeeSerialsPage() {
const [serials, setSerials] = useState<EmployeeSerial[]>([]);
@@ -27,6 +29,8 @@ function EmployeeSerialsPage() {
const [generatedData, setGeneratedData] = useState<any>(null);
const [generateSuccessModalVisible, setGenerateSuccessModalVisible] = useState(false);
const navigate = useNavigate();
const currentUser = authApi.getCurrentUser();
const isAdmin = currentUser?.role === 'admin';
const colorPresets = [
'#000000',
@@ -331,6 +335,7 @@ function EmployeeSerialsPage() {
/>
</div>
</Card>
{isAdmin && <div style={{ marginTop: 16 }}><EmployeeAccountsPanel /></div>}
<Modal
title="生成员工序列号"
@@ -536,4 +541,4 @@ function EmployeeSerialsPage() {
);
}
export default EmployeeSerialsPage;
export default EmployeeSerialsPage;
+2
View File
@@ -25,12 +25,14 @@ import type { User, UserRole, CreateUserRequest, UpdateUserRequest } from '@/typ
const ROLE_LABEL: Record<UserRole, string> = {
admin: '管理员',
technician: '技术员',
employee: '员工(不可登录后台)',
user: '普通用户',
};
const ROLE_COLOR: Record<UserRole, string> = {
admin: 'red',
technician: 'blue',
employee: 'green',
user: 'default',
};