package com.megatim.fdxconsultation.dao.impl.administration;
|
|
import javax.persistence.EntityManager;
|
import javax.persistence.PersistenceContext;
|
import com.bekosoftware.genericdaolayer.dao.impl.AbstractGenericDAO;
|
import com.bekosoftware.genericdaolayer.dao.tools.RestrictionsContainer;
|
import com.megatim.commons.tools.CommonsTools;
|
import com.megatim.fdxcommons.model.enumeration.TypeOperation;
|
import com.megatim.fdxconsultation.dao.ifaces.administration.HistoriqueMotDePasseDAO;
|
import com.megatim.fdxconsultation.model.administration.HistoriqueMotDePasse;
|
import com.megatim.fdxconsultation.model.administration.User;
|
import java.util.List;
|
import javax.enterprise.context.Dependent;
|
|
/**
|
*
|
* @author DYNABOOK
|
*/
|
@Dependent
|
public class HistoriqueMotDePasseDAOImpl extends AbstractGenericDAO<HistoriqueMotDePasse, Long> implements HistoriqueMotDePasseDAO {
|
|
@PersistenceContext(unitName = "fdxConsultationPersistenceUnit")
|
protected EntityManager em;
|
|
public HistoriqueMotDePasseDAOImpl() {
|
}
|
|
@Override
|
public EntityManager getEntityManager() {
|
return em;
|
}
|
|
@Override
|
public Class<HistoriqueMotDePasse> getManagedEntityClass() {
|
return (HistoriqueMotDePasse.class);
|
}
|
|
@Override
|
public boolean siMotDePasseExiste(String motDePasse, User user) {
|
|
//Variables
|
List<HistoriqueMotDePasse> listeMotsDePasse = null;
|
RestrictionsContainer requeteur = RestrictionsContainer.newInstance();
|
boolean bool = false;
|
|
//On ajoute les critères de recherche
|
requeteur.addEq("user", user);
|
requeteur.addEq("typeOperation", TypeOperation.AJOUTER);
|
|
//On recupère le premier mot de passe trouvé
|
listeMotsDePasse = filter(requeteur.getPredicats(), null, null, 0, -1);
|
|
//Si non vide
|
if(listeMotsDePasse != null && !listeMotsDePasse.isEmpty()){
|
|
//On parcourt les mots de passe
|
for(HistoriqueMotDePasse historiqueMotDePasse : listeMotsDePasse){
|
|
try {
|
|
//Si mot de passe matche
|
if(CommonsTools.validerMotDePasse(motDePasse, historiqueMotDePasse.getMotDePasse())){
|
|
//On marque comme trouvé
|
bool = true;
|
|
//On sort
|
break;
|
|
}
|
|
} catch (Exception ex) {
|
|
//On affihce l'erreur
|
ex.printStackTrace();
|
|
}
|
|
}
|
|
}
|
return bool;
|
}
|
|
}
|