diff --git a/src/com/rjconsultores/ventaboletos/dao/CategoriaDAO.java b/src/com/rjconsultores/ventaboletos/dao/CategoriaDAO.java index 7d322feed..9d8592848 100644 --- a/src/com/rjconsultores/ventaboletos/dao/CategoriaDAO.java +++ b/src/com/rjconsultores/ventaboletos/dao/CategoriaDAO.java @@ -16,4 +16,6 @@ public interface CategoriaDAO extends GenericDAO { public List buscar(String desccategoria); public List buscarCategoriaPesquisada(String desccategoria); + + public List buscarCategoriaOrgaoConcedente(String orgaoConcedente); } diff --git a/src/com/rjconsultores/ventaboletos/dao/hibernate/CategoriaHibernateDAO.java b/src/com/rjconsultores/ventaboletos/dao/hibernate/CategoriaHibernateDAO.java index 0bd0ba10b..a495dcf7a 100644 --- a/src/com/rjconsultores/ventaboletos/dao/hibernate/CategoriaHibernateDAO.java +++ b/src/com/rjconsultores/ventaboletos/dao/hibernate/CategoriaHibernateDAO.java @@ -4,10 +4,10 @@ */ package com.rjconsultores.ventaboletos.dao.hibernate; -import com.rjconsultores.ventaboletos.dao.CategoriaDAO; -import com.rjconsultores.ventaboletos.entidad.Categoria; import java.util.List; + import org.hibernate.Criteria; +import org.hibernate.Query; import org.hibernate.SessionFactory; import org.hibernate.criterion.MatchMode; import org.hibernate.criterion.Order; @@ -16,6 +16,9 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.stereotype.Repository; +import com.rjconsultores.ventaboletos.dao.CategoriaDAO; +import com.rjconsultores.ventaboletos.entidad.Categoria; + /** * * @author Administrador @@ -54,4 +57,23 @@ public class CategoriaHibernateDAO extends GenericHibernateDAO buscarCategoriaOrgaoConcedente(String orgaoConcedente) { + + StringBuilder sql = new StringBuilder(); + + orgaoConcedente = "'%" + orgaoConcedente + "%'"; + + sql.append("SELECT DISTINCT c.desccategoria "); + sql.append(" FROM Categoria c "); + sql.append(" left join categoria_descuento cd on (c.categoria_id = cd.categoria_id and cd.activo=1 ) "); + sql.append(" left join CATEGORIA_ORGAO co on (co.categoriactrl_id = cd.categoriactrl_id and co.activo = 1) "); + sql.append(" left join orgao_concedente oc on (co.orgaoconcedente_id = oc.orgaoconcedente_id) "); + sql.append(" WHERE oc.descorgao like '%DAER%'"); + + Query sq = getSession().createSQLQuery(sql.toString()); + + return sq.list(); + } } diff --git a/src/com/rjconsultores/ventaboletos/service/CategoriaService.java b/src/com/rjconsultores/ventaboletos/service/CategoriaService.java index f2e12ec34..8c13bf496 100644 --- a/src/com/rjconsultores/ventaboletos/service/CategoriaService.java +++ b/src/com/rjconsultores/ventaboletos/service/CategoriaService.java @@ -19,6 +19,8 @@ public interface CategoriaService extends GenericService { public Categoria buscarUmaCategoria(String desccategoria); public List buscarCategoriaPesquisada(String desccategoria); + + public List buscarCategoriaOrgaoConcedente(String orgaoConcedente); /** * Hance una búsqueda de todas las categorias que son visibles al usuario Ejemplo de categorias que no son vis diff --git a/src/com/rjconsultores/ventaboletos/service/impl/CategoriaServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/CategoriaServiceImpl.java index a5b158e03..a076b0a48 100644 --- a/src/com/rjconsultores/ventaboletos/service/impl/CategoriaServiceImpl.java +++ b/src/com/rjconsultores/ventaboletos/service/impl/CategoriaServiceImpl.java @@ -97,4 +97,18 @@ public class CategoriaServiceImpl implements CategoriaService { } return categoriaList.get(0); } + + @Override + public List buscarCategoriaOrgaoConcedente(String orgaoConcedente) { + List listCategorias = new ArrayList(); + List categoriaList = categoriaDAO.buscarCategoriaOrgaoConcedente(orgaoConcedente); + int listSize = categoriaList.size(); + + for (int c =0; c