From 236e6926a5a190a2ba744d40d1d9adfd42c01448 Mon Sep 17 00:00:00 2001 From: frederico Date: Mon, 1 Feb 2016 13:19:22 +0000 Subject: [PATCH] =?UTF-8?q?fixed=20bug=20#0006978=20-=20altera=C3=A7=C3=B5?= =?UTF-8?q?es=20diversas=20na=20tela=20Configura=C3=A7=C3=A3o=20de=20Servi?= =?UTF-8?q?=C3=A7os?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@52447 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../dao/MarcaClaseServicioDAO.java | 2 ++ .../ventaboletos/dao/RutaDAO.java | 2 ++ .../MarcaClaseServicioHibernateDAO.java | 19 +++++++++++++++++++ .../dao/hibernate/RutaHibernateDAO.java | 16 ++++++++++++++++ .../service/MarcaClaseServicioService.java | 4 ++++ .../ventaboletos/service/RutaService.java | 2 ++ .../impl/MarcaClaseServicioServiceImpl.java | 19 +++++++++++++++++++ .../service/impl/RutaServiceImpl.java | 6 +++++- 8 files changed, 69 insertions(+), 1 deletion(-) diff --git a/src/com/rjconsultores/ventaboletos/dao/MarcaClaseServicioDAO.java b/src/com/rjconsultores/ventaboletos/dao/MarcaClaseServicioDAO.java index c7c47de6f..efb45eb0c 100644 --- a/src/com/rjconsultores/ventaboletos/dao/MarcaClaseServicioDAO.java +++ b/src/com/rjconsultores/ventaboletos/dao/MarcaClaseServicioDAO.java @@ -23,4 +23,6 @@ public interface MarcaClaseServicioDAO * @return */ public List buscar(ClaseServicio clase); + + public List buscarPorEmpresasPermitidas(ClaseServicio clase, List idsEmpresa); } diff --git a/src/com/rjconsultores/ventaboletos/dao/RutaDAO.java b/src/com/rjconsultores/ventaboletos/dao/RutaDAO.java index cd7059149..c23b5490b 100644 --- a/src/com/rjconsultores/ventaboletos/dao/RutaDAO.java +++ b/src/com/rjconsultores/ventaboletos/dao/RutaDAO.java @@ -24,6 +24,8 @@ public interface RutaDAO extends GenericDAO { public List buscarPorRutaPorEmpresa(Ruta ruta, Empresa empresa); public List buscarPorClaseServicio(ClaseServicio claseServicio); + + public List buscarPorClaseServicioEmpresa(ClaseServicio claseServicio, Empresa empresa); public List buscar(String nomeRuta, ClaseServicio claseServicio, Boolean nomeObrigatorio); diff --git a/src/com/rjconsultores/ventaboletos/dao/hibernate/MarcaClaseServicioHibernateDAO.java b/src/com/rjconsultores/ventaboletos/dao/hibernate/MarcaClaseServicioHibernateDAO.java index 134152e36..1fe9182b6 100644 --- a/src/com/rjconsultores/ventaboletos/dao/hibernate/MarcaClaseServicioHibernateDAO.java +++ b/src/com/rjconsultores/ventaboletos/dao/hibernate/MarcaClaseServicioHibernateDAO.java @@ -9,7 +9,9 @@ import com.rjconsultores.ventaboletos.entidad.ClaseServicio; import com.rjconsultores.ventaboletos.entidad.Marca; import com.rjconsultores.ventaboletos.entidad.MarcaClaseServicio; import com.rjconsultores.ventaboletos.entidad.MarcaClaseServicioPK; + import java.util.List; + import org.hibernate.Criteria; import org.hibernate.Query; import org.hibernate.SessionFactory; @@ -52,4 +54,21 @@ public class MarcaClaseServicioHibernateDAO return q.list(); } + + @Override + public List buscarPorEmpresasPermitidas(ClaseServicio clase, List idsEmpresa) { + + StringBuilder hql = new StringBuilder(); + hql.append(" select mc.marcaClaseservicioPK.marca "); + hql.append(" from MarcaClaseServicio mc "); + hql.append(" where mc.activo = 1 and mc.marcaClaseservicioPK.marca.activo=1 "); + hql.append(" and mc.marcaClaseservicioPK.claseservicio.claseservicioId = :idClase"); + hql.append(" and mc.marcaClaseservicioPK.marca.empresa.empresaId IN (:idsEmpresa)"); + + Query q = getSession().createQuery(hql.toString()); + q.setParameter("idClase", clase.getClaseservicioId()); + q.setParameterList("idsEmpresa", idsEmpresa); + + return q.list(); + } } diff --git a/src/com/rjconsultores/ventaboletos/dao/hibernate/RutaHibernateDAO.java b/src/com/rjconsultores/ventaboletos/dao/hibernate/RutaHibernateDAO.java index 8f0302a4d..446606f9a 100644 --- a/src/com/rjconsultores/ventaboletos/dao/hibernate/RutaHibernateDAO.java +++ b/src/com/rjconsultores/ventaboletos/dao/hibernate/RutaHibernateDAO.java @@ -83,6 +83,21 @@ public class RutaHibernateDAO extends GenericHibernateDAO return c.list(); } + + public List buscarPorClaseServicioEmpresa(ClaseServicio claseServicio, Empresa empresa) { + StringBuffer hql = new StringBuffer(); + hql.append("SELECT DISTINCT r "); + hql.append("FROM Ruta r INNER JOIN r.lsRutaEmpresa re "); + hql.append("WHERE r.claseServicio.claseservicioId = :idClaseServicio "); + hql.append("AND re.empresa.empresaId = :idEmpresa "); + + Query sq = getSession().createQuery(hql.toString()); + sq.setParameter("idClaseServicio", claseServicio.getClaseservicioId()); + sq.setParameter("idEmpresa", empresa.getEmpresaId()); + + List lsRuta = sq.list(); + return lsRuta; + } public List buscar(String nomeRuta, ClaseServicio claseServicio, Boolean nomeObrigatorio) { @@ -191,4 +206,5 @@ public class RutaHibernateDAO extends GenericHibernateDAO return lsRuta; } + } diff --git a/src/com/rjconsultores/ventaboletos/service/MarcaClaseServicioService.java b/src/com/rjconsultores/ventaboletos/service/MarcaClaseServicioService.java index a510f2003..3bb46d265 100644 --- a/src/com/rjconsultores/ventaboletos/service/MarcaClaseServicioService.java +++ b/src/com/rjconsultores/ventaboletos/service/MarcaClaseServicioService.java @@ -8,6 +8,8 @@ import com.rjconsultores.ventaboletos.entidad.ClaseServicio; import com.rjconsultores.ventaboletos.entidad.Marca; import com.rjconsultores.ventaboletos.entidad.MarcaClaseServicio; import com.rjconsultores.ventaboletos.entidad.MarcaClaseServicioPK; +import com.rjconsultores.ventaboletos.entidad.Usuario; + import java.util.List; /** @@ -18,6 +20,8 @@ public interface MarcaClaseServicioService extends GenericService { public List buscar(ClaseServicio clase); + + public List buscarPorEmpresasPermitidas(ClaseServicio clase, Usuario usuarioLoggado); } diff --git a/src/com/rjconsultores/ventaboletos/service/RutaService.java b/src/com/rjconsultores/ventaboletos/service/RutaService.java index 0349afb98..ac9f6089a 100644 --- a/src/com/rjconsultores/ventaboletos/service/RutaService.java +++ b/src/com/rjconsultores/ventaboletos/service/RutaService.java @@ -40,6 +40,8 @@ public interface RutaService { public List buscarPorRutaPorEmpresa(Ruta ruta, Empresa empresa); public List buscarPorClaseServicio(ClaseServicio claseServicio); + + public List buscarPorClaseServicioEmpresa(ClaseServicio claseServicio, Empresa empresa); public List buscar(String nomeRuta, ClaseServicio claseServicio, Boolean nomeObrigatorio); diff --git a/src/com/rjconsultores/ventaboletos/service/impl/MarcaClaseServicioServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/MarcaClaseServicioServiceImpl.java index 30e13e659..b63dd6f68 100644 --- a/src/com/rjconsultores/ventaboletos/service/impl/MarcaClaseServicioServiceImpl.java +++ b/src/com/rjconsultores/ventaboletos/service/impl/MarcaClaseServicioServiceImpl.java @@ -6,13 +6,18 @@ package com.rjconsultores.ventaboletos.service.impl; import com.rjconsultores.ventaboletos.dao.MarcaClaseServicioDAO; import com.rjconsultores.ventaboletos.entidad.ClaseServicio; +import com.rjconsultores.ventaboletos.entidad.Empresa; import com.rjconsultores.ventaboletos.entidad.Marca; import com.rjconsultores.ventaboletos.entidad.MarcaClaseServicio; import com.rjconsultores.ventaboletos.entidad.MarcaClaseServicioPK; +import com.rjconsultores.ventaboletos.entidad.Usuario; import com.rjconsultores.ventaboletos.service.MarcaClaseServicioService; import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado; + +import java.util.ArrayList; import java.util.Calendar; import java.util.List; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -65,4 +70,18 @@ public class MarcaClaseServicioServiceImpl implements MarcaClaseServicioService public List buscar(ClaseServicio clase) { return marcaClaseServicioDAO.buscar(clase); } + + @Override + public List buscarPorEmpresasPermitidas(ClaseServicio clase, Usuario usuarioLoggado) { + List idsEmpresa = getIdsEmpresaUsuario(usuarioLoggado); + return marcaClaseServicioDAO.buscarPorEmpresasPermitidas(clase, idsEmpresa); + } + + private List getIdsEmpresaUsuario(Usuario usuario){ + List toReturn = new ArrayList(); + for(Empresa empresa : usuario.getEmpresa()){ + toReturn.add(empresa.getEmpresaId()); + } + return toReturn; + } } diff --git a/src/com/rjconsultores/ventaboletos/service/impl/RutaServiceImpl.java b/src/com/rjconsultores/ventaboletos/service/impl/RutaServiceImpl.java index daad234f0..99e269cd2 100644 --- a/src/com/rjconsultores/ventaboletos/service/impl/RutaServiceImpl.java +++ b/src/com/rjconsultores/ventaboletos/service/impl/RutaServiceImpl.java @@ -262,7 +262,11 @@ public class RutaServiceImpl implements RutaService { public List buscarPorRutaPorEmpresa(Ruta ruta, Empresa empresa) { return rutaDAO.buscarPorRutaPorEmpresa(ruta, empresa); } - + + public List buscarPorClaseServicioEmpresa(ClaseServicio claseServicio, Empresa empresa) { + return rutaDAO.buscarPorClaseServicioEmpresa(claseServicio, empresa); + } + public List buscarPorClaseServicio(ClaseServicio claseServicio) { return rutaDAO.buscarPorClaseServicio(claseServicio); }