/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package db.providers; import db.entidades.Utilizador; import global.Global; import java.sql.ResultSet; import java.sql.Statement; import java.util.ArrayList; /** * * @author lluis */ public class UtilizadoresDataProvider extends GenericDataProvider{ public Utilizador getUtilizador(Integer id) throws Exception { Utilizador u = new Utilizador(); Statement st = createStatement(); String sql = "SELECT * FROM utilizadores WHERE id = " + id; ResultSet rs = st.executeQuery(sql); rs.first(); u.setId(new Integer(rs.getInt("id"))); u.setLogin(rs.getString("login")); u.setPassword(rs.getString("password")); u.setData_password(rs.getDate("data_password")); u.setEmail(rs.getString("email")); u.setEmpresa_id(new Integer(rs.getInt("empresa_id"))); u.setEstabelecimento_id(new Integer(rs.getInt("estabelecimento_id"))); u.setAdministrador(rs.getString("administrador")); u.setTipo(new Integer(rs.getInt("tipo"))); u.setNumero_cedula(rs.getString("numero_cedula")); u.setCap(rs.getString("cap")); u.setNome(rs.getString("nome")); u.setMedico_id(new Integer(rs.getInt("medico_id"))); u.setFuncionario_hst_id(new Integer(rs.getInt("funcionario_hst_id"))); u.setActivo(rs.getString("activo")); u.setResponsavel_loja(rs.getString("responsavel_loja")); u.setGestor_geral(rs.getString("gestor_geral")); u.setApagado(rs.getString("apagado")); return u; } public ArrayList getUtilizadoresListByTipo(Integer tipo, String responsavel_loja, Integer estabelecimento_id) throws Exception { ArrayList list = new ArrayList(); Statement st = createStatement(); String sql = ""; String estabelecimento_constraint = ""; if(tipo.intValue() == Global.DIRECTOR_LOJA || tipo.intValue() == Global.RESPONSAVEL_SEGURANCA || tipo.intValue() == Global.DIRECTOR_NACIONAL_SEGURANCA) { estabelecimento_constraint = " AND estabelecimento_id = " + estabelecimento_id; } if(tipo.intValue() == Global.RESPONSAVEL_SEGURANCA && responsavel_loja.matches("y")) { sql = "SELECT * FROM utilizadores WHERE activo = 'y' AND apagado = 'n' AND responsavel_loja = 'y' AND tipo = " + tipo + estabelecimento_constraint; } else if(tipo.intValue() == Global.DIRECTOR_LOJA || tipo.intValue() == Global.TECNICO_HS || tipo.intValue() == Global.DIRECTOR_NACIONAL_SEGURANCA) { sql = "SELECT * FROM utilizadores WHERE activo = 'y' AND apagado = 'n' AND tipo = " + tipo + estabelecimento_constraint; } System.out.println("UTILIZADORES LIST BY TIPO SQL : " + sql); ResultSet rs = st.executeQuery(sql); if(rs.isBeforeFirst()) { rs.first(); do { Utilizador u = new Utilizador(); u.setId(new Integer(rs.getInt("id"))); u.setLogin(rs.getString("login")); u.setPassword(rs.getString("password")); u.setData_password(rs.getDate("data_password")); u.setEmail(rs.getString("email")); u.setEmpresa_id(new Integer(rs.getInt("empresa_id"))); u.setEstabelecimento_id(new Integer(rs.getInt("estabelecimento_id"))); u.setAdministrador(rs.getString("administrador")); u.setTipo(new Integer(rs.getInt("tipo"))); u.setNumero_cedula(rs.getString("numero_cedula")); u.setCap(rs.getString("cap")); u.setNome(rs.getString("nome")); u.setMedico_id(new Integer(rs.getInt("medico_id"))); u.setFuncionario_hst_id(new Integer(rs.getInt("funcionario_hst_id"))); u.setActivo(rs.getString("activo")); u.setResponsavel_loja(rs.getString("responsavel_loja")); list.add(u); }while(rs.next()); } return list; } public ArrayList getUtilizadoresList() throws Exception { ArrayList list = new ArrayList(); Statement st = createStatement(); String sql = "select * from utilizadores where activo = 'y' and apagado = 'n'"; ResultSet rs = st.executeQuery(sql); rs.first(); do { Utilizador u = new Utilizador(); u.setId(new Integer(rs.getInt("id"))); u.setLogin(rs.getString("login")); u.setPassword(rs.getString("password")); u.setData_password(rs.getDate("data_password")); u.setEmail(rs.getString("email")); u.setEmpresa_id(new Integer(rs.getInt("empresa_id"))); u.setEstabelecimento_id(new Integer(rs.getInt("estabelecimento_id"))); u.setAdministrador(rs.getString("administrador")); u.setTipo(new Integer(rs.getInt("tipo"))); u.setNumero_cedula(rs.getString("numero_cedula")); u.setCap(rs.getString("cap")); u.setNome(rs.getString("nome")); u.setMedico_id(new Integer(rs.getInt("medico_id"))); u.setFuncionario_hst_id(new Integer(rs.getInt("funcionario_hst_id"))); u.setActivo(rs.getString("activo")); u.setResponsavel_loja(rs.getString("responsavel_loja")); list.add(u); }while(rs.next()); return list; } }