UtilisateurPromoteurService.java

package com.sintia.ffl.admin.dentaire.services.services;

import com.sintia.ffl.admin.dentaire.dal.entities.UtilisateurPromoteur;
import com.sintia.ffl.admin.dentaire.dal.repositories.UtilisateurPromoteurRepository;
import com.sintia.ffl.admin.dentaire.services.dto.UtilisateurPromoteurDTO;
import com.sintia.ffl.admin.dentaire.services.mappers.PromoteurMapper;
import com.sintia.ffl.adminui.commons.dto.PromoteurDTO;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;

@Service
@RequiredArgsConstructor
@Slf4j
public class UtilisateurPromoteurService {
	
	private final UtilisateurPromoteurRepository utilisateurPromoteurRepository;

	private final PromoteurMapper promoteurMapper;
	
	public List<PromoteurDTO> getPromoteursForUser(String utilisateur){
		
		return utilisateurPromoteurRepository
				.findPromoteurByUtilisateur(utilisateur)
				.stream()
				.map(promoteurMapper::toDto)
				.collect(Collectors.toList());
	}
	
	public List<UtilisateurPromoteurDTO> getUtilisateurs(){
		Iterable<UtilisateurPromoteur> allUtilisateurPromoteurs = utilisateurPromoteurRepository.findAll();
		List<UtilisateurPromoteurDTO> utilisateurPromoteurs = new ArrayList<>();
		for (UtilisateurPromoteur utilisateurPromoteur : allUtilisateurPromoteurs) {
			UtilisateurPromoteurDTO utilisateurPromoteurDTO = new UtilisateurPromoteurDTO();
			utilisateurPromoteurDTO.setUtilisateur(utilisateurPromoteur.getUtilisateur());
			utilisateurPromoteurDTO.setPromoteur(utilisateurPromoteur.getPromoteur());
			utilisateurPromoteurDTO.setId(utilisateurPromoteur.getId());
			utilisateurPromoteurs.add(utilisateurPromoteurDTO);
		}
		return utilisateurPromoteurs;
	}
}