@@ -2,7 +2,7 @@ import { Request, Response } from "express";
22import * as cache from "memory-cache" ;
33import { UserService } from "../services/user.service" ;
44import { CreateUserDto } from "../dto/user.dto" ;
5- import { User } from "../entity/User.entity " ;
5+ import { UserFactory } from "../factory/user.factory " ;
66
77const userService = new UserService ( ) ;
88
@@ -14,7 +14,7 @@ export const createUser = async (req: Request, res: Response) => {
1414 if ( existingUser ) {
1515 return res . status ( 409 ) . json ( { message : "Email already exists!" } ) ;
1616 }
17- const userData : Partial < User > = {
17+ const userData : CreateUserDto = {
1818 name : data . name ,
1919 email : data . email ,
2020 phone : data . phone ,
@@ -25,7 +25,7 @@ export const createUser = async (req: Request, res: Response) => {
2525 // Créer l'utilisateur
2626 const user = await userService . createUser ( userData ) ;
2727 // Renvoie l'utilisateur créé sans le mot de passe
28- return res . status ( 201 ) . json ( { ... user , password : undefined } ) ;
28+ return res . status ( 201 ) . json ( UserFactory . getUser ( user ) ) ;
2929 } catch ( error ) {
3030 return res . status ( 500 ) . json ( { message : "Erreur lors de la création de l'utilisateur" , error } ) ;
3131 }
@@ -35,7 +35,7 @@ export const getUserById = async (req: Request, res: Response) => {
3535 try {
3636 const user = await userService . getUserById ( req . params . id ) ;
3737 if ( ! user ) return res . status ( 404 ) . json ( { message : "Utilisateur non trouvé" } ) ;
38- return res . json ( user ) ;
38+ return res . json ( UserFactory . getUserDeeply ( user ) ) ;
3939 } catch ( error ) {
4040 return res . status ( 500 ) . json ( { message : "Erreur lors de la récupération de l'utilisateur" , error } ) ;
4141 }
@@ -53,7 +53,7 @@ export const getAllUsers = async (req: Request, res: Response) => {
5353 const users = await userService . getAllUsers ( ) ;
5454 // Stocke les utilisateurs en cache pour 6000 ms (6 secondes)
5555 cache . put ( cacheKey , users , 6000 ) ;
56- return res . status ( 200 ) . json ( users ) ;
56+ return res . status ( 200 ) . json ( UserFactory . getUsers ( users ) ) ;
5757 } catch ( error ) {
5858 return res . status ( 500 ) . json ( { message : "Erreur lors de la récupération des utilisateurs" , error } ) ;
5959 }
@@ -78,7 +78,7 @@ export const updateUser = async (req: Request, res: Response) => {
7878 const updatedUser = await userService . updateUser ( id , req . body ) ;
7979 // Vider le cache pour forcer l'actualisation
8080 cache . del ( "users-list" ) ;
81- return res . status ( 200 ) . json ( updatedUser ) ;
81+ return res . status ( 200 ) . json ( UserFactory . getUser ( updatedUser ) ) ;
8282 } catch ( error ) {
8383 return res . status ( 500 ) . json ( { message : "Erreur lors de la mise à jour de l'utilisateur" , error } ) ;
8484 }
@@ -105,7 +105,7 @@ export const getUserByEmail = async (req: Request, res: Response) => {
105105 try {
106106 const user = await userService . getUserByEmail ( req . params . email ) ;
107107 if ( ! user ) return res . status ( 404 ) . json ( { message : "Utilisateur non trouvé" } ) ;
108- return res . json ( user ) ;
108+ return res . json ( UserFactory . getUser ( user ) ) ;
109109 } catch ( error ) {
110110 return res . status ( 500 ) . json ( { message : "Erreur lors de la récupération de l'utilisateur" , error } ) ;
111111 }
0 commit comments