fix(management): align user permissions with API

This commit is contained in:
yelan
2026-09-01 18:20:04 +08:00
parent dc86ee9149
commit fa42b89136
8 changed files with 226 additions and 34 deletions
+8 -3
View File
@@ -78,8 +78,8 @@ function mapUser(dto: UserResponseDto): UserRecord {
id: dto.id,
name: dto.displayName,
account: dto.username,
department: dto.departmentId ?? '未指定科室',
role: '未分配角色',
department: dto.departmentId ? '未知科室' : '未指定科室',
role: '未返回角色',
status: normalizeStatus(dto.status),
lastLoginAt: formatDateTime(dto.lastLoginAt),
employeeNo: dto.employeeNo,
@@ -116,6 +116,10 @@ function toBackendQuery(query: UserQuery) {
params.keyword = query.keyword.trim()
}
if (query.campusId) {
params.campusId = query.campusId
}
return params
}
@@ -141,8 +145,9 @@ export function getUsers(query: UserQuery): Promise<UserListResponse> {
!keyword || [record.name, record.account].join(' ').toLowerCase().includes(keyword)
const matchesDepartment = !query.department || record.department === query.department
const matchesStatus = !query.status || query.status === 'all' || record.status === query.status
const matchesCampus = !query.campusId || record.campusId === query.campusId
return matchesKeyword && matchesDepartment && matchesStatus
return matchesKeyword && matchesDepartment && matchesStatus && matchesCampus
})
const page = Math.max(query.page, 1)
const pageSize = Math.max(query.pageSize, 1)