xpeditis2.0/apps/backend/src/application/mappers/user.mapper.ts
David-Henri ARNAUD cfef7005b3 fix test
2025-10-09 16:38:22 +02:00

34 lines
794 B
TypeScript

import { User } from '../../domain/entities/user.entity';
import { UserResponseDto } from '../dto/user.dto';
/**
* User Mapper
*
* Maps between User domain entities and DTOs
*/
export class UserMapper {
/**
* Convert User entity to DTO (without sensitive fields)
*/
static toDto(user: User): UserResponseDto {
return {
id: user.id,
email: user.email,
firstName: user.firstName,
lastName: user.lastName,
role: user.role as any,
organizationId: user.organizationId,
isActive: user.isActive,
createdAt: user.createdAt,
updatedAt: user.updatedAt,
};
}
/**
* Convert array of User entities to DTOs
*/
static toDtoArray(users: User[]): UserResponseDto[] {
return users.map(user => this.toDto(user));
}
}