|  | @@ -1,5 +1,61 @@
 | 
	
		
			
				|  |  |  package microfolie.service.transformer;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +import java.util.ArrayList;
 | 
	
		
			
				|  |  | +import java.util.List;
 | 
	
		
			
				|  |  | +import java.util.Optional;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +import microfolie.persistance.entity.Usager;
 | 
	
		
			
				|  |  | +import microfolie.persistance.entity.Ville;
 | 
	
		
			
				|  |  | +import microfolie.persistance.table.VilleTable;
 | 
	
		
			
				|  |  | +import microfolie.service.dto.UsagerDTO;
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  public class UsagerTransformer {
 | 
	
		
			
				|  |  | +	
 | 
	
		
			
				|  |  | +	private static VilleTable villeTable = VilleTable.getInstance();
 | 
	
		
			
				|  |  | +	
 | 
	
		
			
				|  |  | +	public static Usager dtoToEntity(UsagerDTO dto) {
 | 
	
		
			
				|  |  | +		Usager usager = new Usager();
 | 
	
		
			
				|  |  | +		usager.prenom = dto.prenom;
 | 
	
		
			
				|  |  | +		usager.nom = dto.nom;
 | 
	
		
			
				|  |  | +		usager.dateNaiss = dto.dateNaissance;
 | 
	
		
			
				|  |  | +		usager.email = dto.email;
 | 
	
		
			
				|  |  | +		usager.telephone = dto.telephone;
 | 
	
		
			
				|  |  | +		usager.contactUrgence = dto.contactUrgence;
 | 
	
		
			
				|  |  | +		usager.code = dto.code;
 | 
	
		
			
				|  |  | +		// Cherche la ville correspondante au nom
 | 
	
		
			
				|  |  | +		Optional<Ville> optVille = villeTable.findByLibelle(dto.ville);
 | 
	
		
			
				|  |  | +		if (optVille.isPresent()) {
 | 
	
		
			
				|  |  | +			usager.ville = optVille.get();
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +		return usager;
 | 
	
		
			
				|  |  | +	}
 | 
	
		
			
				|  |  | +	
 | 
	
		
			
				|  |  | +	public static List<Usager> dtoToEntity(List<UsagerDTO> dto) {
 | 
	
		
			
				|  |  | +		List<Usager> result = new ArrayList<>();
 | 
	
		
			
				|  |  | +		dto.forEach(elt -> result.add(dtoToEntity(elt)));
 | 
	
		
			
				|  |  | +		return result;
 | 
	
		
			
				|  |  | +	}
 | 
	
		
			
				|  |  | +	
 | 
	
		
			
				|  |  | +	public static UsagerDTO entityToDto(Usager usager) {
 | 
	
		
			
				|  |  | +		UsagerDTO dto = new UsagerDTO();
 | 
	
		
			
				|  |  | +		dto.prenom = usager.prenom;
 | 
	
		
			
				|  |  | +		dto.nom = usager.nom;
 | 
	
		
			
				|  |  | +		dto.dateNaissance = usager.dateNaiss;
 | 
	
		
			
				|  |  | +		dto.email = usager.email;
 | 
	
		
			
				|  |  | +		dto.telephone = usager.telephone;
 | 
	
		
			
				|  |  | +		dto.contactUrgence = usager.contactUrgence;
 | 
	
		
			
				|  |  | +		dto.code = usager.code;
 | 
	
		
			
				|  |  | +		// Si il y a une ville
 | 
	
		
			
				|  |  | +		if (usager.ville != null) {
 | 
	
		
			
				|  |  | +			dto.ville = usager.ville.libelle;
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +		return dto;
 | 
	
		
			
				|  |  | +	}
 | 
	
		
			
				|  |  | +	
 | 
	
		
			
				|  |  | +	public static List<UsagerDTO> entityToDto(List<Usager> usager) {
 | 
	
		
			
				|  |  | +		List<UsagerDTO> result = new ArrayList<>();
 | 
	
		
			
				|  |  | +		usager.forEach(elt -> result.add(entityToDto(elt)));
 | 
	
		
			
				|  |  | +		return result;
 | 
	
		
			
				|  |  | +	}
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  }
 |