docs: update progress to reflect Phase 1-6 completion

- Update CLAUDE.md architecture snapshot: all phases complete
- Update wiki/index.md: module descriptions and progress table
- All 6 phases of ERP platform base are now implemented

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
iven
2026-04-11 12:51:17 +08:00
parent b3c7f76b7f
commit 82986e988d
7 changed files with 75 additions and 43 deletions

View File

@@ -24,10 +24,10 @@ export interface UpdateUserRequest {
status?: string;
}
export async function listUsers(page = 1, pageSize = 20) {
export async function listUsers(page = 1, pageSize = 20, search = '') {
const { data } = await client.get<{ success: boolean; data: PaginatedResponse<UserInfo> }>(
'/users',
{ params: { page, page_size: pageSize } }
{ params: { page, page_size: pageSize, search: search || undefined } }
);
return data.data;
}

View File

@@ -56,14 +56,14 @@ export default function Users() {
const fetchUsers = useCallback(async (p = page) => {
setLoading(true);
try {
const result = await listUsers(p, 20);
const result = await listUsers(p, 20, searchText);
setUsers(result.data);
setTotal(result.total);
} catch {
message.error('加载用户列表失败');
}
setLoading(false);
}, [page]);
}, [page, searchText]);
const fetchRoles = useCallback(async () => {
try {
@@ -179,11 +179,8 @@ export default function Users() {
setRoleModalOpen(true);
};
const filteredUsers = searchText
? users.filter((u) =>
u.username.toLowerCase().includes(searchText.toLowerCase()),
)
: users;
// Server-side search is handled by fetchUsers — no client filtering needed.
const filteredUsers = users;
const columns = [
{ title: '用户名', dataIndex: 'username', key: 'username' },