import { UserAggregate, UserState } from '../../../Domain/User/UserAggregate'; import { CreateUserDto, UpdateUserDto, ShortUserDto, DetailUserDto } from '../UserDto'; import { BaseMapper } from './BaseMapper'; export class UserMapper { static toShortDto(user: UserAggregate): ShortUserDto { return { username: user.username, authLevel: (user.state === UserState.ADMIN ? 1 : 0) as 0 | 1, }; } static toDetailDto(user: UserAggregate): DetailUserDto { return { id: user.id, orgid: user.orgid, username: user.username, email: user.email, fname: user.fname, lname: user.lname, code: user.token, phone: user.phone, state: user.state, }; } static toShortDtoList(users: UserAggregate[]): ShortUserDto[] { return BaseMapper.toShortDtoListStatic(users, UserMapper.toShortDto); } }