package persistencia;
import java.util.List;
import javax.ejb.Stateless;
import javax.persistence.TypedQuery;
@Stateless
public class EmpresaDAOImpl extends BaseDAO<Empresa> implements EmpresaDAO {
private static final String checkLoginQuery = "SELECT e FROM Empresa e " +
"WHERE e.mailAdmin = :mailAdmin " +
"AND e.password = :password ";
private static final String findAllQuery = "SELECT e FROM Empresa e ";
private static final String findForMail = "SELECT e FROM Empresa e " +
"WHERE e.mailAdmin = :mailAdmin ";
@Override
public Empresa buscarPorId(int id) {
Empresa ret = em.find(Empresa.class, id);
return ret;
}
@Override
public Empresa buscarPorMail(String mail) {
TypedQuery<Empresa> query = em.createQuery(findForMail, Empresa.class);
query.setParameter("mailAdmin", mail);
List<Empresa> resultado = query.getResultList();
return resultado.get(0);
}
@Override
public boolean checkLogin(String mailAdmin, String password) {
TypedQuery<Empresa> query = em.createQuery(checkLoginQuery, Empresa.class);
query.setParameter("mailAdmin", mailAdmin);
query.setParameter("password", password);
List<Empresa> resultado = query.getResultList();
boolean ret = false;
if (!resultado.isEmpty()) {
ret = resultado.size() == 1;
}
return ret;
}
@Override
public List<Empresa> obtenerTodas() {
TypedQuery<Empresa> query = em.createQuery(findAllQuery, Empresa.class);
return query.getResultList();
}
}