From 37e4b1483a03ffd50e75fe51c1cc86db500e0a4b Mon Sep 17 00:00:00 2001 From: wilian Date: Fri, 7 Aug 2015 13:25:12 +0000 Subject: [PATCH] fixes bug #6543 git-svn-id: http://desenvolvimento.rjconsultores.com.br/repositorio/sco/AdmVenta/Model/trunk/modelWeb@46647 d1611594-4594-4d17-8e1d-87c2c4800839 --- .../ventaboletos/dao/ClientePacoteDAO.java | 12 ++ .../BusquedaDatosTicketHibernateDAO.java | 85 +++++---- .../hibernate/ClientePacoteHibernateDAO.java | 56 ++++++ .../vo/busquedapacotes/ClientePacoteVO.java | 163 ++++++++++++++++++ .../DatosTicketResultTransformer.java | 3 + .../ws/rs/BusquedaDatosClientePacoteRS.java | 36 ++++ .../ws/rs/BusquedaDatosTicketsRS.java | 2 - 7 files changed, 312 insertions(+), 45 deletions(-) create mode 100644 src/com/rjconsultores/ventaboletos/dao/ClientePacoteDAO.java create mode 100644 src/com/rjconsultores/ventaboletos/dao/hibernate/ClientePacoteHibernateDAO.java create mode 100644 src/com/rjconsultores/ventaboletos/vo/busquedapacotes/ClientePacoteVO.java create mode 100644 src/com/rjconsultores/ventaboletos/ws/rs/BusquedaDatosClientePacoteRS.java diff --git a/src/com/rjconsultores/ventaboletos/dao/ClientePacoteDAO.java b/src/com/rjconsultores/ventaboletos/dao/ClientePacoteDAO.java new file mode 100644 index 000000000..d479d039f --- /dev/null +++ b/src/com/rjconsultores/ventaboletos/dao/ClientePacoteDAO.java @@ -0,0 +1,12 @@ +package com.rjconsultores.ventaboletos.dao; + +import java.util.List; + +import com.rjconsultores.ventaboletos.entidad.ClientePacote; +import com.rjconsultores.ventaboletos.vo.busquedapacotes.ClientePacoteVO; + +public interface ClientePacoteDAO extends GenericDAO { + + public List busquedaDatosClientePacote(String cpfCnpj); + +} diff --git a/src/com/rjconsultores/ventaboletos/dao/hibernate/BusquedaDatosTicketHibernateDAO.java b/src/com/rjconsultores/ventaboletos/dao/hibernate/BusquedaDatosTicketHibernateDAO.java index b42248502..957b5a5dc 100644 --- a/src/com/rjconsultores/ventaboletos/dao/hibernate/BusquedaDatosTicketHibernateDAO.java +++ b/src/com/rjconsultores/ventaboletos/dao/hibernate/BusquedaDatosTicketHibernateDAO.java @@ -37,57 +37,56 @@ public class BusquedaDatosTicketHibernateDAO extends GenericHibernateDAO pacotes = new ArrayList(); diff --git a/src/com/rjconsultores/ventaboletos/dao/hibernate/ClientePacoteHibernateDAO.java b/src/com/rjconsultores/ventaboletos/dao/hibernate/ClientePacoteHibernateDAO.java new file mode 100644 index 000000000..87356fd7d --- /dev/null +++ b/src/com/rjconsultores/ventaboletos/dao/hibernate/ClientePacoteHibernateDAO.java @@ -0,0 +1,56 @@ +package com.rjconsultores.ventaboletos.dao.hibernate; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Map.Entry; + +import org.apache.commons.lang.StringUtils; +import org.hibernate.Query; +import org.hibernate.SessionFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Qualifier; +import org.springframework.stereotype.Repository; + +import com.rjconsultores.ventaboletos.dao.ClientePacoteDAO; +import com.rjconsultores.ventaboletos.entidad.ClientePacote; +import com.rjconsultores.ventaboletos.vo.busquedapacotes.ClientePacoteVO; + +@Repository("clientePacoteDAO") +public class ClientePacoteHibernateDAO extends GenericHibernateDAO implements ClientePacoteDAO { + + @Autowired + public ClientePacoteHibernateDAO(@Qualifier("sessionFactory") SessionFactory factory) { + setSessionFactory(factory); + } + + @Override + @SuppressWarnings("unchecked") + public List busquedaDatosClientePacote(String cpfCnpj) { + List clientePacoteVOs = new ArrayList(); + if(StringUtils.isNotBlank(cpfCnpj)) { + Map parametros = new HashMap(); + StringBuilder sQuery = new StringBuilder(); + sQuery.append("SELECT DISTINCT NEW com.rjconsultores.ventaboletos.vo.busquedapacotes.ClientePacoteVO(cp.razaoSocial, cp.cpfCnpj, cp.tipoPessoa, cp.descemail, cp.desctelefone, cp.descfax, cp.cep, ") + .append("cp.endereco, cp.numero, cp.complemento, cp.pais, cp.estado, cp.cidade, cp.bairro) ") + .append("FROM ClientePacote cp "); + + if(StringUtils.isNotBlank(cpfCnpj)) { + sQuery.append("WHERE cp.cpfCnpj = :cpfCnpj "); + parametros.put("cpfCnpj", cpfCnpj.replaceAll("[^0-9]", "")); + } + + sQuery.append("ORDER BY cp.razaoSocial "); + Query qr = getSession().createQuery(sQuery.toString()); + for (Entry parametro : parametros.entrySet()) { + qr.setParameter(parametro.getKey(), parametro.getValue()); + } + + clientePacoteVOs = qr.list(); + } + + return clientePacoteVOs; + } + +} diff --git a/src/com/rjconsultores/ventaboletos/vo/busquedapacotes/ClientePacoteVO.java b/src/com/rjconsultores/ventaboletos/vo/busquedapacotes/ClientePacoteVO.java new file mode 100644 index 000000000..926a221d9 --- /dev/null +++ b/src/com/rjconsultores/ventaboletos/vo/busquedapacotes/ClientePacoteVO.java @@ -0,0 +1,163 @@ +package com.rjconsultores.ventaboletos.vo.busquedapacotes; + +import javax.xml.bind.annotation.XmlRootElement; +import javax.xml.bind.annotation.XmlType; + +import com.rjconsultores.ventaboletos.enums.TipoPessoa; + +@XmlRootElement(name = "cliente") +@XmlType(propOrder = {"razaoSocial", "cpfCnpj", "tipoPessoa", "descemail", "desctelefone", "descfax", "endereco", "numero", "complemento", + "bairro", "cidade", "estado", "cep", "pais"}) +public class ClientePacoteVO { + + private String razaoSocial; + private String cpfCnpj; + private String tipoPessoa; + private String descemail; + private String desctelefone; + private String descfax; + private String endereco; + private String numero; + private String complemento; + private String bairro; + private String cidade; + private String estado; + private String cep; + private String pais; + + public ClientePacoteVO() { + super(); + } + + public ClientePacoteVO(String razaoSocial, String cpfCnpj, TipoPessoa tipoPessoa, String descemail, String desctelefone, String descfax, String cep, + String endereco, String numero, String complemento, String pais, String estado, String cidade, String bairro) { + this(); + setRazaoSocial(razaoSocial); + setCpfCnpj(cpfCnpj); + setTipoPessoa(tipoPessoa.toString()); + setDescemail(descemail); + setDesctelefone(desctelefone); + setDescfax(descfax); + setCep(cep); + setEndereco(endereco); + setNumero(numero); + setComplemento(complemento); + setPais(pais); + setEstado(estado); + setCidade(cidade); + setBairro(bairro); + } + + public String getRazaoSocial() { + return razaoSocial; + } + + public void setRazaoSocial(String razaoSocial) { + this.razaoSocial = razaoSocial; + } + + public String getCpfCnpj() { + return cpfCnpj; + } + + public void setCpfCnpj(String cpfCnpj) { + this.cpfCnpj = cpfCnpj; + } + + public String getTipoPessoa() { + return tipoPessoa; + } + + public void setTipoPessoa(String tipoPessoa) { + this.tipoPessoa = tipoPessoa; + } + + public String getDescemail() { + return descemail; + } + + public void setDescemail(String descemail) { + this.descemail = descemail; + } + + public String getDesctelefone() { + return desctelefone; + } + + public void setDesctelefone(String desctelefone) { + this.desctelefone = desctelefone; + } + + public String getDescfax() { + return descfax; + } + + public void setDescfax(String descfax) { + this.descfax = descfax; + } + + public String getCep() { + return cep; + } + + public void setCep(String cep) { + this.cep = cep; + } + + public String getEndereco() { + return endereco; + } + + public void setEndereco(String endereco) { + this.endereco = endereco; + } + + public String getNumero() { + return numero; + } + + public void setNumero(String numero) { + this.numero = numero; + } + + public String getComplemento() { + return complemento; + } + + public void setComplemento(String complemento) { + this.complemento = complemento; + } + + public String getPais() { + return pais; + } + + public void setPais(String pais) { + this.pais = pais; + } + + public String getEstado() { + return estado; + } + + public void setEstado(String estado) { + this.estado = estado; + } + + public String getCidade() { + return cidade; + } + + public void setCidade(String cidade) { + this.cidade = cidade; + } + + public String getBairro() { + return bairro; + } + + public void setBairro(String bairro) { + this.bairro = bairro; + } + +} diff --git a/src/com/rjconsultores/ventaboletos/vo/busquedapacotes/DatosTicketResultTransformer.java b/src/com/rjconsultores/ventaboletos/vo/busquedapacotes/DatosTicketResultTransformer.java index f1ae36991..9b8019016 100644 --- a/src/com/rjconsultores/ventaboletos/vo/busquedapacotes/DatosTicketResultTransformer.java +++ b/src/com/rjconsultores/ventaboletos/vo/busquedapacotes/DatosTicketResultTransformer.java @@ -11,7 +11,10 @@ import org.hibernate.transform.ResultTransformer; public class DatosTicketResultTransformer implements ResultTransformer { + private static final long serialVersionUID = 1L; + @Override + @SuppressWarnings({ "rawtypes", "unchecked" }) public List transformList(List mapList) { Map pacotes = new HashMap(); diff --git a/src/com/rjconsultores/ventaboletos/ws/rs/BusquedaDatosClientePacoteRS.java b/src/com/rjconsultores/ventaboletos/ws/rs/BusquedaDatosClientePacoteRS.java new file mode 100644 index 000000000..e3f89b05e --- /dev/null +++ b/src/com/rjconsultores/ventaboletos/ws/rs/BusquedaDatosClientePacoteRS.java @@ -0,0 +1,36 @@ +package com.rjconsultores.ventaboletos.ws.rs; + +import java.util.List; + +import javax.ws.rs.GET; +import javax.ws.rs.Path; +import javax.ws.rs.Produces; +import javax.ws.rs.QueryParam; +import javax.ws.rs.core.MediaType; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import com.rjconsultores.ventaboletos.dao.ClientePacoteDAO; +import com.rjconsultores.ventaboletos.vo.busquedapacotes.ClientePacoteVO; +import com.rjconsultores.ventaboletos.web.utilerias.spring.AppContext; + +@Path("") +public class BusquedaDatosClientePacoteRS { + + private static Logger log = LoggerFactory.getLogger(BusquedaDatosClientePacoteRS.class); + + @GET + @Path("/busquedadatosclientepacote") + @Produces({ MediaType.APPLICATION_XML }) + public List busquedaDatosClientePacote(@QueryParam("cpfcnpj") String cpfCnpjParam) { + try { + ClientePacoteDAO clientePacoteDao = (ClientePacoteDAO)AppContext.getApplicationContext().getBean("clientePacoteDAO"); + return clientePacoteDao.busquedaDatosClientePacote(cpfCnpjParam); + } catch (Exception e) { + log.error(e.getMessage(), e.getCause()); + } + return null; + } + +} diff --git a/src/com/rjconsultores/ventaboletos/ws/rs/BusquedaDatosTicketsRS.java b/src/com/rjconsultores/ventaboletos/ws/rs/BusquedaDatosTicketsRS.java index 3f9fb9b72..80b411a43 100644 --- a/src/com/rjconsultores/ventaboletos/ws/rs/BusquedaDatosTicketsRS.java +++ b/src/com/rjconsultores/ventaboletos/ws/rs/BusquedaDatosTicketsRS.java @@ -12,9 +12,7 @@ import javax.ws.rs.QueryParam; import javax.ws.rs.core.MediaType; import com.rjconsultores.ventaboletos.dao.BusquedaDatosTicketDAO; -import com.rjconsultores.ventaboletos.dao.CajaDAO; import com.rjconsultores.ventaboletos.vo.busquedapacotes.PacoteVO; -import com.rjconsultores.ventaboletos.vo.caja.UsuarioVO; import com.rjconsultores.ventaboletos.web.utilerias.spring.AppContext; @Path("")