package br.com.centralit.citcorpore.integracao; import java.util.ArrayList; import java.util.Collection; import java.util.List; import br.com.centralit.citcorpore.bean.OrigemAtendimentoDTO; import br.com.citframework.dto.IDto; import br.com.citframework.excecao.PersistenceException; import br.com.citframework.integracao.Condition; import br.com.citframework.integracao.CrudDaoDefaultImpl; import br.com.citframework.integracao.Field; import br.com.citframework.integracao.Order; import br.com.citframework.util.Constantes; @SuppressWarnings({ "rawtypes", "unchecked" }) public class OrigemAtendimentoDao extends CrudDaoDefaultImpl { public OrigemAtendimentoDao() { super(Constantes.getValue("DATABASE_ALIAS"), null); } public Collection<Field> getFields() { Collection<Field> listFields = new ArrayList<>(); listFields.add(new Field("idOrigem", "idOrigem", true, true, false, false)); listFields.add(new Field("descricao", "descricao", false, false, false, false)); listFields.add(new Field("dataInicio", "dataInicio", false, false, false, false)); listFields.add(new Field("dataFim", "dataFim", false, false, false, false)); return listFields; } public String getTableName() { return this.getOwner() + "OrigemAtendimento"; } public Collection list() throws PersistenceException { List list = new ArrayList(); list.add(new Order("idOrigem")); return super.list(list); } public Class getBean() { return OrigemAtendimentoDTO.class; } public Collection find(IDto arg0) throws PersistenceException { return null; } /** * Retorna lista de status de usu�rio. * * @param obj * @return * @throws Exception */ public boolean consultarOrigemAtendimentoAtivos(OrigemAtendimentoDTO obj) throws PersistenceException { List parametro = new ArrayList(); List list = new ArrayList(); String sql = "select idorigem From " + getTableName() + " where descricao = ? and dataFim is null "; if (obj.getIdOrigem() != null) { sql += " and idorigem <> " + obj.getIdOrigem(); } parametro.add(obj.getDescricao()); list = this.execSQL(sql, parametro.toArray()); if (list != null && !list.isEmpty()) { return true; } else { return false; } } public Collection<OrigemAtendimentoDTO> listarTodosAtivos() throws PersistenceException { List condicao = new ArrayList(); List ordenacao = new ArrayList(); condicao.add(new Condition("dataFim", "is", null)); ordenacao.add(new Order("descricao")); return super.findByCondition(condicao, ordenacao); } /** * @author euler.ramos * Busca a Origem de Atendimento filtrando pela descri��o passada como par�metro * @param descricao * @return */ public OrigemAtendimentoDTO buscarOrigemAtendimento(String descricao) { List result; try { List parametro = new ArrayList(); List resp = new ArrayList(); List listRetorno = new ArrayList(); listRetorno.add("idOrigem"); listRetorno.add("descricao"); listRetorno.add("dataInicio"); listRetorno.add("dataFim"); String sql = "select idOrigem,descricao,dataInicio,dataFim From " + getTableName() + " where descricao = ? and dataFim is null "; parametro.add(descricao); resp = this.execSQL(sql.toString(), parametro.toArray()); result = this.engine.listConvertion(OrigemAtendimentoDTO.class, resp, listRetorno); } catch (PersistenceException e) { e.printStackTrace(); result = null; } catch (Exception e) { e.printStackTrace(); result = null; } return (OrigemAtendimentoDTO) (((result == null) || (result.size() <= 0)) ? new OrigemAtendimentoDTO() : result.get(0)); } }