diff --git a/pom.xml b/pom.xml index e9863fdd1..bad945a64 100644 --- a/pom.xml +++ b/pom.xml @@ -144,7 +144,7 @@ javax.xml.bind jaxb-api 2.2 - + diff --git a/src/java/com/rjconsultores/ventaboletos/rest/AmbienteRS.java b/src/java/com/rjconsultores/ventaboletos/rest/AmbienteRS.java index 3f8c57534..4f97af292 100644 --- a/src/java/com/rjconsultores/ventaboletos/rest/AmbienteRS.java +++ b/src/java/com/rjconsultores/ventaboletos/rest/AmbienteRS.java @@ -5,20 +5,17 @@ import javax.ws.rs.Path; import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; -import com.rjconsultores.ventaboletos.dao.ConstanteDAO; -import com.rjconsultores.ventaboletos.entidad.Constante; +import com.rjconsultores.ventaboletos.rest.service.AmbienteService; import com.rjconsultores.ventaboletos.web.utilerias.spring.AppContext; @Path("/ambiente") public class AmbienteRS { - + @GET @Produces({ MediaType.APPLICATION_JSON }) - public String getVersao() { - ConstanteDAO constanteDAO = (ConstanteDAO) AppContext.getApplicationContext().getBean("constanteDAO"); - Constante constante = constanteDAO.buscarPorNomeConstante("NOMBRE_AMBIENTE"); - - return constante.getValorconstante(); + public String getReplica() { + AmbienteService service = (AmbienteService) AppContext.getApplicationContext().getBean("ambienteService"); + return service.getAmbienteReadOnly(); } } diff --git a/src/java/com/rjconsultores/ventaboletos/rest/ConsultarOperador.java b/src/java/com/rjconsultores/ventaboletos/rest/ConsultarOperador.java index c9d3bc6eb..b8c8c826f 100644 --- a/src/java/com/rjconsultores/ventaboletos/rest/ConsultarOperador.java +++ b/src/java/com/rjconsultores/ventaboletos/rest/ConsultarOperador.java @@ -1,11 +1,5 @@ package com.rjconsultores.ventaboletos.rest; -import java.text.ParseException; -import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; - import javax.annotation.security.RolesAllowed; import javax.ws.rs.Consumes; import javax.ws.rs.POST; @@ -15,21 +9,9 @@ import javax.ws.rs.core.MediaType; import org.slf4j.Logger; -import com.rjconsultores.ventaboletos.dao.OperadorEmbarcadaDAO; -import com.rjconsultores.ventaboletos.dao.OperadorEmbarcadaLinhaDAO; -import com.rjconsultores.ventaboletos.dao.OperadorEmbarcadaServicoDAO; -import com.rjconsultores.ventaboletos.entidad.FormaPagoDet; -import com.rjconsultores.ventaboletos.entidad.OperadorEmbarcada; -import com.rjconsultores.ventaboletos.entidad.PtoVtaSeguro; -import com.rjconsultores.ventaboletos.entidad.PtovtaCatInd; -import com.rjconsultores.ventaboletos.entidad.PuntoVentaVO; -import com.rjconsultores.ventaboletos.rest.SincronizarOperador.ParamsSincronizarOperador; -import com.rjconsultores.ventaboletos.vo.corrida.CorridaVO; -import com.rjconsultores.ventaboletos.vo.embarcada.FormaPagamentoVO; +import com.rjconsultores.ventaboletos.rest.bean.ParamsSincronizarOperador; +import com.rjconsultores.ventaboletos.rest.service.ConsultarOperadorService; import com.rjconsultores.ventaboletos.vo.embarcada.OperadorEmbarcadaVO; -import com.rjconsultores.ventaboletos.vo.embarcada.SeguroTaxaEmbarqueVO; -import com.rjconsultores.ventaboletos.vo.embarcada.TiposPassagensBloqueadasVO; -import com.rjconsultores.ventaboletos.vo.ruta.RutaVO; import com.rjconsultores.ventaboletos.web.utilerias.spring.AppContext; @Path("/consultarOperadorProxy") @@ -43,77 +25,8 @@ public class ConsultarOperador { public OperadorEmbarcadaVO buscarDadosOperador(ParamsSincronizarOperador params) { long start = System.currentTimeMillis(); - SimpleDateFormat sdf = new SimpleDateFormat("yyMMddHHmm"); - - Date dtIni = null; - Date dtFim = null; - - try { - dtIni = sdf.parse(params.dataInicial); - dtFim = sdf.parse(params.dataFinal); - } catch (ParseException e) { - log.error(e.getMessage(), e); - } - - OperadorEmbarcadaDAO operadorEmbarcadaDAO = (OperadorEmbarcadaDAO)AppContext.getApplicationContext().getBean("operadorEmbarcadaDAO"); - OperadorEmbarcadaLinhaDAO operadorEmbarcadaLinhaDAO = (OperadorEmbarcadaLinhaDAO)AppContext.getApplicationContext().getBean("operadorEmbarcadaLinhaDAO"); - OperadorEmbarcadaServicoDAO operadorEmbarcadaServicoDAO = (OperadorEmbarcadaServicoDAO)AppContext.getApplicationContext().getBean("operadorEmbarcadaServicoDAO"); - OperadorEmbarcada operadorEmbarcada = operadorEmbarcadaDAO.buscarOperadorEmbarcadaPorUsuario(params.operador); - - PuntoVentaVO puntoVentaVO = operadorEmbarcadaDAO.getPuntoVentaVO(params.operador); - - List lsRutaVO = operadorEmbarcadaLinhaDAO.getListaRutaVO(params.operador); - - List lsCorridaVO = operadorEmbarcadaServicoDAO.getListaCorridaProxyVO(params.operador, params.empresa, dtIni, dtFim); - - OperadorEmbarcadaVO vo = new OperadorEmbarcadaVO(); - vo.setIdOperador(operadorEmbarcada.getUsuarioId()); - vo.setOperador(operadorEmbarcada.getUsername()); - vo.setDescOperador(operadorEmbarcada.getName()); - - if (puntoVentaVO != null) { - vo.setIdAgencia(puntoVentaVO.getPuntoventaId()); - vo.setDescAgencia(puntoVentaVO.nombpuntoventa); - - vo.setLsFormasPagamento(new ArrayList()); - vo.setLsSeguroTaxaEmbarque(new ArrayList()); - vo.setLsTiposPassagensBloqueadas(new ArrayList()); - - List listFP = operadorEmbarcadaDAO.getListaFormaPago(puntoVentaVO.getPuntoventaId()); - - for (FormaPagoDet dp : listFP) { - vo.getLsFormasPagamento().add( - new FormaPagamentoVO( - dp.getEmpresa().getEmpresaId(), - dp.getEmpresa().getNombempresa(), - dp.getFormaPago().getFormapagoId().intValue(), - dp.getFormaPago().getDescpago())); - } - - List listSTx = operadorEmbarcadaDAO.getListaSeguroTaxaEmbarque(puntoVentaVO.getPuntoventaId()); - - for (PtoVtaSeguro st : listSTx) { - vo.getLsSeguroTaxaEmbarque().add( - new SeguroTaxaEmbarqueVO( - st.getEmpresa().getEmpresaId(), - st.getIndVendeSeguroOpcEmbarcada(), - st.getIndVendeSeguroTabelaEmbarcada(), - st.getIndTaxaEmbarqueEmbarcada())); - } - - List listTPB = operadorEmbarcadaDAO.getListaTiposPassagensBloqueadas(puntoVentaVO.getPuntoventaId()); - - for (PtovtaCatInd tpb : listTPB) { - vo.getLsTiposPassagensBloqueadas().add( - new TiposPassagensBloqueadasVO( - tpb.getCategoria().getCategoriaId(), - tpb.getUsuarioBloqueado().getUsuarioId(), - tpb.getEmpresa().getEmpresaId())); - } - } - - vo.setLsRutas(lsRutaVO); - vo.setLsCorridas(lsCorridaVO); + ConsultarOperadorService service = (ConsultarOperadorService) AppContext.getApplicationContext().getBean("consultarOperadorService"); + OperadorEmbarcadaVO vo = service.buscarDadosOperador(params); printInfo("/consultarOperadorProxy", start); diff --git a/src/java/com/rjconsultores/ventaboletos/rest/ConsultarOperadorDetalhesCorrida.java b/src/java/com/rjconsultores/ventaboletos/rest/ConsultarOperadorDetalhesCorrida.java index b5f955ea3..e2119fc6f 100644 --- a/src/java/com/rjconsultores/ventaboletos/rest/ConsultarOperadorDetalhesCorrida.java +++ b/src/java/com/rjconsultores/ventaboletos/rest/ConsultarOperadorDetalhesCorrida.java @@ -7,14 +7,10 @@ import javax.ws.rs.Path; import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; -import org.codehaus.jackson.annotate.JsonIgnoreProperties; import org.slf4j.Logger; -import com.rjconsultores.ventaboletos.dao.MarcaDAO; -import com.rjconsultores.ventaboletos.dao.OperadorEmbarcadaServicoDAO; -import com.rjconsultores.ventaboletos.dao.PuntoVentaDAO; -import com.rjconsultores.ventaboletos.entidad.Marca; -import com.rjconsultores.ventaboletos.vo.corrida.CorridaVO; +import com.rjconsultores.ventaboletos.rest.bean.ParamsOperadorDetalhesCorrida; +import com.rjconsultores.ventaboletos.rest.service.ConsultarOperadorDetalhesCorridaService; import com.rjconsultores.ventaboletos.vo.embarcada.DetalheCorridaVO; import com.rjconsultores.ventaboletos.web.utilerias.spring.AppContext; @@ -29,27 +25,8 @@ public class ConsultarOperadorDetalhesCorrida { public DetalheCorridaVO buscarDetalhesCorrida(ParamsOperadorDetalhesCorrida params) { long start = System.currentTimeMillis(); - CorridaVO corrida = new CorridaVO(); - corrida.setCorridaId(params.corridaId); - corrida.setFeccorrida(params.feccorrida); - corrida.setRutaId(params.rutaId); - corrida.setMarcaId(params.marcaId); - corrida.setClaseServicioId(params.claseServicioId); - - OperadorEmbarcadaServicoDAO operadorEmbarcadaServicoDAO = (OperadorEmbarcadaServicoDAO)AppContext.getApplicationContext().getBean("operadorEmbarcadaServicoDAO"); - PuntoVentaDAO puntoventaDAO = (PuntoVentaDAO)AppContext.getApplicationContext().getBean("puntoVentaDAO"); - MarcaDAO marcaDAO = (MarcaDAO)AppContext.getApplicationContext().getBean("marcaDAO"); - - Marca marca = marcaDAO.obtenerID(params.marcaId.shortValue()); - if (marca != null){ - corrida.setEmpresaId(marca.getEmpresa().getEmpresaId()); - } - - operadorEmbarcadaServicoDAO.preencherCorrida(corrida, puntoventaDAO.obtenerID(params.puntoVentaId)); - - DetalheCorridaVO vo = new DetalheCorridaVO(); - vo.setLsTramoVO(corrida.getLsTramoVO()); - vo.setLsSecuenciaVO(corrida.getLsSecuenciaVO()); + ConsultarOperadorDetalhesCorridaService service = (ConsultarOperadorDetalhesCorridaService) AppContext.getApplicationContext().getBean("consultarOperadorDetalhesCorridaService"); + DetalheCorridaVO vo = service.buscarDetalhesCorrida(params); printInfo("/consultarOperadorDetalhesCorrida", start); @@ -69,50 +46,4 @@ public class ConsultarOperadorDetalhesCorrida { log.info(info); } - - @JsonIgnoreProperties(ignoreUnknown = true) - static class ParamsOperadorDetalhesCorrida { - Integer corridaId; - String feccorrida; - Integer rutaId; - Integer marcaId; - Integer puntoVentaId; - Integer claseServicioId; - public Integer getCorridaId() { - return corridaId; - } - public void setCorridaId(Integer corridaId) { - this.corridaId = corridaId; - } - public String getFeccorrida() { - return feccorrida; - } - public void setFeccorrida(String feccorrida) { - this.feccorrida = feccorrida; - } - public Integer getRutaId() { - return rutaId; - } - public void setRutaId(Integer rutaId) { - this.rutaId = rutaId; - } - public Integer getMarcaId() { - return marcaId; - } - public void setMarcaId(Integer marcaId) { - this.marcaId = marcaId; - } - public Integer getPuntoVentaId() { - return puntoVentaId; - } - public void setPuntoVentaId(Integer puntoVentaId) { - this.puntoVentaId = puntoVentaId; - } - public Integer getClaseServicioId() { - return claseServicioId; - } - public void setClaseServicioId(Integer claseServicioId) { - this.claseServicioId = claseServicioId; - } - } } diff --git a/src/java/com/rjconsultores/ventaboletos/rest/SincronizarDispositivo.java b/src/java/com/rjconsultores/ventaboletos/rest/SincronizarDispositivo.java index 5f0f62ea4..09053d62a 100644 --- a/src/java/com/rjconsultores/ventaboletos/rest/SincronizarDispositivo.java +++ b/src/java/com/rjconsultores/ventaboletos/rest/SincronizarDispositivo.java @@ -1,8 +1,5 @@ package com.rjconsultores.ventaboletos.rest; -import java.util.HashMap; -import java.util.Map; - import javax.annotation.security.RolesAllowed; import javax.ws.rs.Consumes; import javax.ws.rs.POST; @@ -11,26 +8,9 @@ import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; import javax.ws.rs.core.Response; -import org.codehaus.jackson.annotate.JsonIgnoreProperties; - -import com.rjconsultores.ventaboletos.constantes.Constantes; -import com.rjconsultores.ventaboletos.dao.ConstanteDAO; -import com.rjconsultores.ventaboletos.dao.DispositivoEmbarcadaDAO; -import com.rjconsultores.ventaboletos.dao.EmpresaDAO; -import com.rjconsultores.ventaboletos.dao.PuntoVentaDAO; -import com.rjconsultores.ventaboletos.entidad.Constante; -import com.rjconsultores.ventaboletos.entidad.CtrlSerieEmbarcada; -import com.rjconsultores.ventaboletos.entidad.DispositivoEmbarcada; -import com.rjconsultores.ventaboletos.entidad.Empresa; -import com.rjconsultores.ventaboletos.entidad.EmpresaImposto; -import com.rjconsultores.ventaboletos.entidad.Estado; -import com.rjconsultores.ventaboletos.entidad.InscricaoEstadual; -import com.rjconsultores.ventaboletos.entidad.PtovtaEmpresa; -import com.rjconsultores.ventaboletos.entidad.PuntoVenta; -import com.rjconsultores.ventaboletos.vo.embarcada.DispositivoEmbarcadaVO; -import com.rjconsultores.ventaboletos.vo.embarcada.EmpresaVO; -import com.rjconsultores.ventaboletos.vo.embarcada.EstadoDispositivoEmbarcadaVO; -import com.rjconsultores.ventaboletos.vo.embarcada.InscricaoEstadualVO; +import com.rjconsultores.ventaboletos.rest.bean.ParamsSincronizarDispositivo; +import com.rjconsultores.ventaboletos.rest.service.SincronizarService; +import com.rjconsultores.ventaboletos.rest.service.exception.ServiceEmbarcadaException; import com.rjconsultores.ventaboletos.web.utilerias.spring.AppContext; @Path("/sincronizarDispositivo") @@ -41,100 +21,12 @@ public class SincronizarDispositivo { @RolesAllowed("EMBARCADA") @Produces({ MediaType.APPLICATION_JSON }) public Response buscarDispositivo(ParamsSincronizarDispositivo params) throws Exception { - DispositivoEmbarcadaDAO dispositivoEmbarcadaDAO = (DispositivoEmbarcadaDAO)AppContext.getApplicationContext().getBean("dispositivoEmbarcadaDAO"); - EmpresaDAO empresaDAO = (EmpresaDAO)AppContext.getApplicationContext().getBean("empresaDAO"); - PuntoVentaDAO puntoVentaDAO = (PuntoVentaDAO)AppContext.getApplicationContext().getBean("puntoVentaDAO"); - DispositivoEmbarcada dispositivo = dispositivoEmbarcadaDAO.buscarImei(params.imei); - ConstanteDAO constanteDAO = (ConstanteDAO)AppContext.getApplicationContext().getBean("constanteDAO"); - - if (dispositivo == null){ - DispositivoEmbarcadaVO dispositivoVo = new DispositivoEmbarcadaVO(); - dispositivoVo.setMsg("Dispositivo não encontrado"); - return Response.ok(dispositivoVo, MediaType.APPLICATION_JSON).build(); - } - PuntoVenta puntoVenta = puntoVentaDAO.obtenerID(dispositivo.getPuntoVenta().getPuntoventaId().intValue()); - Empresa empresa = empresaDAO.obtenerID(dispositivo.getEmpresa().getEmpresaId().intValue()); - - DispositivoEmbarcadaVO vo = new DispositivoEmbarcadaVO(); - vo.setDispositivoId(dispositivo.getDispositivoEmbarcadaId()); - vo.setBaixado(dispositivo.getIndDispBaixado() ? 1 : 0); - vo.setBloqueado(dispositivo.getIndDispBloqueado() ? 1 : 0); - vo.setDescAgencia(puntoVenta.getNombpuntoventa()); - vo.setNumagencia(puntoVenta.getNumPuntoVenta()); - vo.setDescEmpresa(empresa.getNombempresa()); - vo.setDescEquipamento(dispositivo.getDescricao()); - vo.setIdAgencia(dispositivo.getPuntoVenta().getPuntoventaId().longValue()); - vo.setIdempresa(dispositivo.getEmpresa().getEmpresaId().longValue()); - vo.setManutencao(dispositivo.getIndDispManutencao() ? 1 : 0); - vo.setCnpjAgencia(puntoVenta.getNumDoCPuntoVenta()); - vo.setEnderecoAgencia(puntoVenta.getDireccioncalle()+", nº: "+puntoVenta.getDireccionnumero()+". Cidade: "+puntoVenta.getCidade()); - vo.setCnpjEmpresa(empresa.getCnpj()); - - Map impostos = getImpostos(empresa); - - for (PtovtaEmpresa e : puntoVenta.getLsPtovtaEmpresa()){ - EmpresaVO emp = new EmpresaVO(); - emp.setEmpresaId(e.getEmpresa().getEmpresaId().longValue()); - emp.setNombempresa(e.getEmpresa().getNombempresa()); - emp.setCnpj(e.getEmpresa().getCnpj()); - emp.setIndImprimeRelFechamentoViagemDetalhadoEmarcada(e.getEmpresa().getIndImprimeRelFechamentoViagemDetalhadoEmarcada() != null ? e.getEmpresa().getIndImprimeRelFechamentoViagemDetalhadoEmarcada() : Boolean.FALSE); - emp.setIndImprimeLogoBilheteVendaEmbarcada(e.getEmpresa().getIndImprimeLogoBilheteVendaEmbarcada() != null ? e.getEmpresa().getIndImprimeLogoBilheteVendaEmbarcada() : Boolean.FALSE); - vo.getEmpresasVenda().add(emp); - for (InscricaoEstadual insc : e.getEmpresa().getInscricoesEstaduais()){ - EmpresaImposto imposto = impostos.get(insc.getEstado()); - InscricaoEstadualVO ie; - if (insc.getActivo()){ - ie = new InscricaoEstadualVO(insc); - if (imposto != null) { - ie.setPorctributo(imposto.getPorctributo()); - ie.setTributacaoImportacao(imposto.getTributacaoImportacao()); - ie.setTributacaoImportacaoIM(imposto.getTributacaoImportacaoIM()); - } - emp.getInscricoesEstaduais().add(ie); - } - } - } - vo.setEnderecoEmpresa(empresa.getLogradouro()+", nº: "+empresa.getNumero()+". Cidade: "+empresa.getBairro()); - Constante estacionEmbarcadaConst = constanteDAO.buscarPorNomeConstante(Constantes.ESTACAO_EMBARCADA); - if (estacionEmbarcadaConst == null || (estacionEmbarcadaConst != null && estacionEmbarcadaConst.getValorconstante() == null) || - (estacionEmbarcadaConst != null && estacionEmbarcadaConst.getValorconstante().isEmpty())){ - return Response.status(Response.Status.NOT_FOUND).entity("Error: Constante ESTACAO_EMBARCADA não cadastrada!").build(); - } - String estacionIdEmbarcada = estacionEmbarcadaConst.getValorconstante(); - vo.setEstacionId(estacionIdEmbarcada != null && !estacionIdEmbarcada.isEmpty() ? Integer.parseInt(estacionIdEmbarcada) : null); - - for (CtrlSerieEmbarcada serie : dispositivo.getSeries()){ - EstadoDispositivoEmbarcadaVO estado = new EstadoDispositivoEmbarcadaVO(); - estado.setDescUf(serie.getEstado().getCveestado()); - estado.setIdUf(serie.getEstado().getEstadoId().longValue()); - estado.setNumBpe(serie.getNumeroCorrente()); - estado.setSerie(serie.getSerie()); - vo.add(estado); - } - return Response.ok(vo, MediaType.APPLICATION_JSON).build(); - } - - private Map getImpostos(Empresa e){ - Map result = new HashMap(); - - for (EmpresaImposto ei : e.getEmpresaImpostoList()) { - if (ei.getActivo()) { - result.put(ei.getEstado(), ei); - } - } - return result; - } - @JsonIgnoreProperties(ignoreUnknown = true) - static class ParamsSincronizarDispositivo { - String imei; + SincronizarService service = (SincronizarService) AppContext.getApplicationContext().getBean("sincronizarService"); - public String getImei() { - return imei; - } - - public void setImei(String imei) { - this.imei = imei; + try { + return Response.ok(service.getDispositivoEmbarcada(params), MediaType.APPLICATION_JSON).build(); + } catch (ServiceEmbarcadaException e) { + return Response.status(Response.Status.NOT_FOUND).entity(e.getMessage()).build(); } } - } diff --git a/src/java/com/rjconsultores/ventaboletos/rest/SincronizarOperador.java b/src/java/com/rjconsultores/ventaboletos/rest/SincronizarOperador.java index c37bbb923..b082f8706 100644 --- a/src/java/com/rjconsultores/ventaboletos/rest/SincronizarOperador.java +++ b/src/java/com/rjconsultores/ventaboletos/rest/SincronizarOperador.java @@ -1,11 +1,5 @@ package com.rjconsultores.ventaboletos.rest; -import java.text.ParseException; -import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; - import javax.annotation.security.RolesAllowed; import javax.ws.rs.Consumes; import javax.ws.rs.POST; @@ -14,24 +8,12 @@ import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; import javax.ws.rs.core.Response; -import org.codehaus.jackson.annotate.JsonIgnoreProperties; import org.slf4j.Logger; -import com.rjconsultores.ventaboletos.dao.OperadorEmbarcadaDAO; -import com.rjconsultores.ventaboletos.dao.OperadorEmbarcadaLinhaDAO; -import com.rjconsultores.ventaboletos.dao.OperadorEmbarcadaServicoDAO; -import com.rjconsultores.ventaboletos.dao.PuntoVentaDAO; -import com.rjconsultores.ventaboletos.entidad.FormaPagoDet; -import com.rjconsultores.ventaboletos.entidad.OperadorEmbarcada; -import com.rjconsultores.ventaboletos.entidad.PtoVtaSeguro; -import com.rjconsultores.ventaboletos.entidad.PtovtaCatInd; -import com.rjconsultores.ventaboletos.entidad.PuntoVentaVO; -import com.rjconsultores.ventaboletos.vo.corrida.CorridaVO; -import com.rjconsultores.ventaboletos.vo.embarcada.FormaPagamentoVO; +import com.rjconsultores.ventaboletos.rest.bean.ParamsSincronizarOperador; +import com.rjconsultores.ventaboletos.rest.service.SincronizarOperadorService; +import com.rjconsultores.ventaboletos.rest.service.exception.ServiceEmbarcadaException; import com.rjconsultores.ventaboletos.vo.embarcada.OperadorEmbarcadaVO; -import com.rjconsultores.ventaboletos.vo.embarcada.SeguroTaxaEmbarqueVO; -import com.rjconsultores.ventaboletos.vo.embarcada.TiposPassagensBloqueadasVO; -import com.rjconsultores.ventaboletos.vo.ruta.RutaVO; import com.rjconsultores.ventaboletos.web.utilerias.spring.AppContext; @Path("/sincronizarOperador") @@ -45,86 +27,16 @@ public class SincronizarOperador { public Response buscarDadosOperador(ParamsSincronizarOperador params) { long start = System.currentTimeMillis(); - SimpleDateFormat sdf = new SimpleDateFormat("yyMMddHHmm"); - - Date dtIni = null; - Date dtFim = null; + SincronizarOperadorService service = (SincronizarOperadorService) AppContext.getApplicationContext().getBean("sincronizarOperadorService"); + OperadorEmbarcadaVO vo = null; + try { - dtIni = sdf.parse(params.dataInicial); - dtFim = sdf.parse(params.dataFinal); - } catch (ParseException e) { - log.error(e.getMessage(), e); + vo = service.buscarDadosOperador(params); + } catch (ServiceEmbarcadaException e) { + return Response.status(Response.Status.NOT_FOUND).entity(e.getMessage()).build(); } - OperadorEmbarcadaDAO operadorEmbarcadaDAO = (OperadorEmbarcadaDAO)AppContext.getApplicationContext().getBean("operadorEmbarcadaDAO"); - OperadorEmbarcadaLinhaDAO operadorEmbarcadaLinhaDAO = (OperadorEmbarcadaLinhaDAO)AppContext.getApplicationContext().getBean("operadorEmbarcadaLinhaDAO"); - OperadorEmbarcadaServicoDAO operadorEmbarcadaServicoDAO = (OperadorEmbarcadaServicoDAO)AppContext.getApplicationContext().getBean("operadorEmbarcadaServicoDAO"); - PuntoVentaDAO puntoventaDAO = (PuntoVentaDAO)AppContext.getApplicationContext().getBean("puntoVentaDAO"); - OperadorEmbarcada operadorEmbarcada; - try{ - operadorEmbarcada = operadorEmbarcadaDAO.buscarOperadorEmbarcadaPorUsuario(params.operador); - } catch (Exception e){ - return Response.status(Response.Status.NOT_FOUND).entity("Error: Buscar Operador Embarcada por Usuario retornou mais de um registro.").build(); - } - // List lsOperadorEmbarcadaLinha = operadorEmbarcadaLinhaDAO.buscarPorOperador(operadorEmbarcada); - - PuntoVentaVO puntoVentaVO = operadorEmbarcadaDAO.getPuntoVentaVO(params.operador); - - ListlsRutaVO = operadorEmbarcadaLinhaDAO.getListaRutaVO(params.operador); - - ListlsCorridaVO = operadorEmbarcadaServicoDAO.getListaCorridaVO(params.operador, params.empresa, dtIni, dtFim, puntoventaDAO.obtenerID(puntoVentaVO.getPuntoventaId())); - - OperadorEmbarcadaVO vo = new OperadorEmbarcadaVO(); - vo.setIdOperador(operadorEmbarcada.getUsuarioId()); - vo.setOperador(operadorEmbarcada.getUsername()); - vo.setDescOperador(operadorEmbarcada.getName()); - vo.setIndcorteautomatico(operadorEmbarcada.getUsuario().getIndCorteAutomatico()); - - if (puntoVentaVO != null) { - vo.setIdAgencia(puntoVentaVO.getPuntoventaId()); - vo.setDescAgencia(puntoVentaVO.nombpuntoventa); - - vo.setLsFormasPagamento(new ArrayList()); - vo.setLsSeguroTaxaEmbarque(new ArrayList()); - vo.setLsTiposPassagensBloqueadas(new ArrayList()); - - List listFP = operadorEmbarcadaDAO.getListaFormaPago(puntoVentaVO.getPuntoventaId()); - - for (FormaPagoDet dp : listFP) { - vo.getLsFormasPagamento().add( - new FormaPagamentoVO( - dp.getEmpresa().getEmpresaId(), - dp.getEmpresa().getNombempresa(), - dp.getFormaPago().getFormapagoId().intValue(), - dp.getFormaPago().getDescpago())); - } - - List listSTx = operadorEmbarcadaDAO.getListaSeguroTaxaEmbarque(puntoVentaVO.getPuntoventaId()); - - for (PtoVtaSeguro st : listSTx) { - vo.getLsSeguroTaxaEmbarque().add( - new SeguroTaxaEmbarqueVO( - st.getEmpresa().getEmpresaId(), - st.getIndVendeSeguroOpcEmbarcada(), - st.getIndVendeSeguroTabelaEmbarcada(), - st.getIndTaxaEmbarqueEmbarcada())); - } - - List listTPB = operadorEmbarcadaDAO.getListaTiposPassagensBloqueadas(puntoVentaVO.getPuntoventaId()); - - for (PtovtaCatInd tpb : listTPB) { - vo.getLsTiposPassagensBloqueadas().add( - new TiposPassagensBloqueadasVO( - tpb.getCategoria().getCategoriaId(), - tpb.getUsuarioBloqueado().getUsuarioId(), - tpb.getEmpresa().getEmpresaId())); - } - } - - vo.setLsRutas(lsRutaVO); - vo.setLsCorridas(lsCorridaVO); - printInfo("/sincronizarOperador", start); return Response.ok(vo, MediaType.APPLICATION_JSON).build(); @@ -143,36 +55,4 @@ public class SincronizarOperador { log.info(info); } - - @JsonIgnoreProperties(ignoreUnknown = true) - static class ParamsSincronizarOperador { - Integer operador; - Integer empresa; - String dataInicial; - String dataFinal; - public Integer getOperador() { - return operador; - } - public void setOperador(Integer operador) { - this.operador = operador; - } - public Integer getEmpresa() { - return empresa; - } - public void setEmpresa(Integer empresa) { - this.empresa = empresa; - } - public String getDataInicial() { - return dataInicial; - } - public void setDataInicial(String dataInicial) { - this.dataInicial = dataInicial; - } - public String getDataFinal() { - return dataFinal; - } - public void setDataFinal(String dataFinal) { - this.dataFinal = dataFinal; - } - } } diff --git a/src/java/com/rjconsultores/ventaboletos/rest/SincronizarOperadores.java b/src/java/com/rjconsultores/ventaboletos/rest/SincronizarOperadores.java index 9bdeeae86..ee9cadd85 100644 --- a/src/java/com/rjconsultores/ventaboletos/rest/SincronizarOperadores.java +++ b/src/java/com/rjconsultores/ventaboletos/rest/SincronizarOperadores.java @@ -9,9 +9,8 @@ import javax.ws.rs.Path; import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; -import org.codehaus.jackson.annotate.JsonIgnoreProperties; - -import com.rjconsultores.ventaboletos.dao.PuntoVentaDAO; +import com.rjconsultores.ventaboletos.rest.bean.ParamsDadosOperador; +import com.rjconsultores.ventaboletos.rest.service.SincronizarOperadoresService; import com.rjconsultores.ventaboletos.vo.embarcada.UsuarioEmbarcadaVO; import com.rjconsultores.ventaboletos.web.utilerias.spring.AppContext; @@ -23,23 +22,8 @@ public class SincronizarOperadores { @RolesAllowed("EMBARCADA") @Produces({ MediaType.APPLICATION_JSON }) public List buscarDadosOperador(ParamsDadosOperador params) { - - PuntoVentaDAO puntoVentaDAO = (PuntoVentaDAO)AppContext.getApplicationContext().getBean("puntoVentaDAO"); - - return puntoVentaDAO.buscaUsuariosDoPuntoVenta(params.getPuntoVentaId()); + SincronizarOperadoresService service = (SincronizarOperadoresService) AppContext.getApplicationContext().getBean("sincronizarOperadoresService"); + return service.buscarDadosOperador(params); } - - @JsonIgnoreProperties(ignoreUnknown = true) - static class ParamsDadosOperador { - Long puntoVentaId; - public Long getPuntoVentaId() { - return puntoVentaId; - } - - public void setPuntoVentaId(Long puntoVentaId) { - this.puntoVentaId = puntoVentaId; - } - } - } diff --git a/src/java/com/rjconsultores/ventaboletos/rest/SincronizarUsuariosControleEmbarque.java b/src/java/com/rjconsultores/ventaboletos/rest/SincronizarUsuariosControleEmbarque.java index 61aa2a44b..b4813921e 100644 --- a/src/java/com/rjconsultores/ventaboletos/rest/SincronizarUsuariosControleEmbarque.java +++ b/src/java/com/rjconsultores/ventaboletos/rest/SincronizarUsuariosControleEmbarque.java @@ -9,9 +9,8 @@ import javax.ws.rs.Path; import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; -import org.codehaus.jackson.annotate.JsonIgnoreProperties; - -import com.rjconsultores.ventaboletos.dao.UsuarioDAO; +import com.rjconsultores.ventaboletos.rest.bean.ParamsSincronizarUsuarios; +import com.rjconsultores.ventaboletos.rest.service.SincronizarUsuariosControleEmbarqueService; import com.rjconsultores.ventaboletos.vo.embarcada.UsuarioEmbarcadaVO; import com.rjconsultores.ventaboletos.web.utilerias.spring.AppContext; @@ -23,23 +22,8 @@ public class SincronizarUsuariosControleEmbarque { @RolesAllowed("EMBARCADA") @Produces({ MediaType.APPLICATION_JSON }) public List buscarUsuariosControleEmbarque(ParamsSincronizarUsuarios params) { - - UsuarioDAO usuarioDAO = (UsuarioDAO)AppContext.getApplicationContext().getBean("usuarioDAO"); - - return usuarioDAO.buscarPorFuncionSistema(params.funcionId); + SincronizarUsuariosControleEmbarqueService service = (SincronizarUsuariosControleEmbarqueService) AppContext.getApplicationContext().getBean("sincronizarUsuariosControleEmbarqueService"); + return service.buscarUsuariosControleEmbarque(params); } - - @JsonIgnoreProperties(ignoreUnknown = true) - static class ParamsSincronizarUsuarios { - Long funcionId; - public Long getFuncionId() { - return funcionId; - } - - public void setFuncionId(Long funcionId) { - this.funcionId = funcionId; - } - } - } diff --git a/src/java/com/rjconsultores/ventaboletos/rest/bean/ParamsDadosOperador.java b/src/java/com/rjconsultores/ventaboletos/rest/bean/ParamsDadosOperador.java new file mode 100644 index 000000000..ad37cad1a --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/rest/bean/ParamsDadosOperador.java @@ -0,0 +1,16 @@ +package com.rjconsultores.ventaboletos.rest.bean; + +import org.codehaus.jackson.annotate.JsonIgnoreProperties; + +@JsonIgnoreProperties(ignoreUnknown = true) +public class ParamsDadosOperador { + Long puntoVentaId; + + public Long getPuntoVentaId() { + return puntoVentaId; + } + + public void setPuntoVentaId(Long puntoVentaId) { + this.puntoVentaId = puntoVentaId; + } +} diff --git a/src/java/com/rjconsultores/ventaboletos/rest/bean/ParamsOperadorDetalhesCorrida.java b/src/java/com/rjconsultores/ventaboletos/rest/bean/ParamsOperadorDetalhesCorrida.java new file mode 100644 index 000000000..2301129f3 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/rest/bean/ParamsOperadorDetalhesCorrida.java @@ -0,0 +1,49 @@ +package com.rjconsultores.ventaboletos.rest.bean; + +import org.codehaus.jackson.annotate.JsonIgnoreProperties; + +@JsonIgnoreProperties(ignoreUnknown = true) +public class ParamsOperadorDetalhesCorrida { + Integer corridaId; + String feccorrida; + Integer rutaId; + Integer marcaId; + Integer puntoVentaId; + Integer claseServicioId; + public Integer getCorridaId() { + return corridaId; + } + public void setCorridaId(Integer corridaId) { + this.corridaId = corridaId; + } + public String getFeccorrida() { + return feccorrida; + } + public void setFeccorrida(String feccorrida) { + this.feccorrida = feccorrida; + } + public Integer getRutaId() { + return rutaId; + } + public void setRutaId(Integer rutaId) { + this.rutaId = rutaId; + } + public Integer getMarcaId() { + return marcaId; + } + public void setMarcaId(Integer marcaId) { + this.marcaId = marcaId; + } + public Integer getPuntoVentaId() { + return puntoVentaId; + } + public void setPuntoVentaId(Integer puntoVentaId) { + this.puntoVentaId = puntoVentaId; + } + public Integer getClaseServicioId() { + return claseServicioId; + } + public void setClaseServicioId(Integer claseServicioId) { + this.claseServicioId = claseServicioId; + } +} diff --git a/src/java/com/rjconsultores/ventaboletos/rest/bean/ParamsSincronizarDispositivo.java b/src/java/com/rjconsultores/ventaboletos/rest/bean/ParamsSincronizarDispositivo.java new file mode 100644 index 000000000..10ae9e93f --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/rest/bean/ParamsSincronizarDispositivo.java @@ -0,0 +1,16 @@ +package com.rjconsultores.ventaboletos.rest.bean; + +import org.codehaus.jackson.annotate.JsonIgnoreProperties; + +@JsonIgnoreProperties(ignoreUnknown = true) +public class ParamsSincronizarDispositivo { + String imei; + + public String getImei() { + return imei; + } + + public void setImei(String imei) { + this.imei = imei; + } +} diff --git a/src/java/com/rjconsultores/ventaboletos/rest/bean/ParamsSincronizarOperador.java b/src/java/com/rjconsultores/ventaboletos/rest/bean/ParamsSincronizarOperador.java new file mode 100644 index 000000000..915813e15 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/rest/bean/ParamsSincronizarOperador.java @@ -0,0 +1,36 @@ +package com.rjconsultores.ventaboletos.rest.bean; + +import org.codehaus.jackson.annotate.JsonIgnoreProperties; + +@JsonIgnoreProperties(ignoreUnknown = true) +public class ParamsSincronizarOperador { + Integer operador; + Integer empresa; + String dataInicial; + String dataFinal; + + public Integer getOperador() { + return operador; + } + public void setOperador(Integer operador) { + this.operador = operador; + } + public Integer getEmpresa() { + return empresa; + } + public void setEmpresa(Integer empresa) { + this.empresa = empresa; + } + public String getDataInicial() { + return dataInicial; + } + public void setDataInicial(String dataInicial) { + this.dataInicial = dataInicial; + } + public String getDataFinal() { + return dataFinal; + } + public void setDataFinal(String dataFinal) { + this.dataFinal = dataFinal; + } +} diff --git a/src/java/com/rjconsultores/ventaboletos/rest/bean/ParamsSincronizarUsuarios.java b/src/java/com/rjconsultores/ventaboletos/rest/bean/ParamsSincronizarUsuarios.java new file mode 100644 index 000000000..cd1bc0a09 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/rest/bean/ParamsSincronizarUsuarios.java @@ -0,0 +1,16 @@ +package com.rjconsultores.ventaboletos.rest.bean; + +import org.codehaus.jackson.annotate.JsonIgnoreProperties; + +@JsonIgnoreProperties(ignoreUnknown = true) +public class ParamsSincronizarUsuarios { + Long funcionId; + + public Long getFuncionId() { + return funcionId; + } + + public void setFuncionId(Long funcionId) { + this.funcionId = funcionId; + } +} \ No newline at end of file diff --git a/src/java/com/rjconsultores/ventaboletos/rest/service/AmbienteService.java b/src/java/com/rjconsultores/ventaboletos/rest/service/AmbienteService.java new file mode 100644 index 000000000..6113f88d9 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/rest/service/AmbienteService.java @@ -0,0 +1,25 @@ +package com.rjconsultores.ventaboletos.rest.service; + +import org.springframework.stereotype.Service; + +import com.rjconsultores.routing.ReadOnlyConnection; +import com.rjconsultores.ventaboletos.dao.ConstanteDAO; +import com.rjconsultores.ventaboletos.entidad.Constante; +import com.rjconsultores.ventaboletos.web.utilerias.spring.AppContext; + +@Service("ambienteService") +public class AmbienteService { + + public String getAmbienteReadWrite() { + ConstanteDAO constanteDAO = (ConstanteDAO) AppContext.getApplicationContext().getBean("constanteDAO"); + Constante constante = constanteDAO.buscarPorNomeConstante("NOMBRE_AMBIENTE"); + + return constante.getValorconstante(); + } + + @ReadOnlyConnection + public String getAmbienteReadOnly() { + return getAmbienteReadWrite(); + } + +} \ No newline at end of file diff --git a/src/java/com/rjconsultores/ventaboletos/rest/service/ConsultarOperadorDetalhesCorridaService.java b/src/java/com/rjconsultores/ventaboletos/rest/service/ConsultarOperadorDetalhesCorridaService.java new file mode 100644 index 000000000..4f37a9ad3 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/rest/service/ConsultarOperadorDetalhesCorridaService.java @@ -0,0 +1,45 @@ +package com.rjconsultores.ventaboletos.rest.service; + +import org.springframework.stereotype.Service; + +import com.rjconsultores.routing.ReadOnlyConnection; +import com.rjconsultores.ventaboletos.dao.MarcaDAO; +import com.rjconsultores.ventaboletos.dao.OperadorEmbarcadaServicoDAO; +import com.rjconsultores.ventaboletos.dao.PuntoVentaDAO; +import com.rjconsultores.ventaboletos.entidad.Marca; +import com.rjconsultores.ventaboletos.rest.bean.ParamsOperadorDetalhesCorrida; +import com.rjconsultores.ventaboletos.vo.corrida.CorridaVO; +import com.rjconsultores.ventaboletos.vo.embarcada.DetalheCorridaVO; +import com.rjconsultores.ventaboletos.web.utilerias.spring.AppContext; + +@Service("consultarOperadorDetalhesCorridaService") +public class ConsultarOperadorDetalhesCorridaService { + + @ReadOnlyConnection + public DetalheCorridaVO buscarDetalhesCorrida(ParamsOperadorDetalhesCorrida params) { + CorridaVO corrida = new CorridaVO(); + corrida.setCorridaId(params.getCorridaId()); + corrida.setFeccorrida(params.getFeccorrida()); + corrida.setRutaId(params.getRutaId()); + corrida.setMarcaId(params.getMarcaId()); + corrida.setClaseServicioId(params.getClaseServicioId()); + + OperadorEmbarcadaServicoDAO operadorEmbarcadaServicoDAO = (OperadorEmbarcadaServicoDAO)AppContext.getApplicationContext().getBean("operadorEmbarcadaServicoDAO"); + PuntoVentaDAO puntoventaDAO = (PuntoVentaDAO)AppContext.getApplicationContext().getBean("puntoVentaDAO"); + MarcaDAO marcaDAO = (MarcaDAO)AppContext.getApplicationContext().getBean("marcaDAO"); + + Marca marca = marcaDAO.obtenerID(params.getMarcaId().shortValue()); + if (marca != null){ + corrida.setEmpresaId(marca.getEmpresa().getEmpresaId()); + } + + operadorEmbarcadaServicoDAO.preencherCorrida(corrida, puntoventaDAO.obtenerID(params.getPuntoVentaId())); + + DetalheCorridaVO vo = new DetalheCorridaVO(); + vo.setLsTramoVO(corrida.getLsTramoVO()); + vo.setLsSecuenciaVO(corrida.getLsSecuenciaVO()); + + return vo; + } + +} diff --git a/src/java/com/rjconsultores/ventaboletos/rest/service/ConsultarOperadorService.java b/src/java/com/rjconsultores/ventaboletos/rest/service/ConsultarOperadorService.java new file mode 100644 index 000000000..92f6cbbf5 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/rest/service/ConsultarOperadorService.java @@ -0,0 +1,110 @@ +package com.rjconsultores.ventaboletos.rest.service; + +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +import org.slf4j.Logger; +import org.springframework.stereotype.Service; + +import com.rjconsultores.routing.ReadOnlyConnection; +import com.rjconsultores.ventaboletos.dao.OperadorEmbarcadaDAO; +import com.rjconsultores.ventaboletos.dao.OperadorEmbarcadaLinhaDAO; +import com.rjconsultores.ventaboletos.dao.OperadorEmbarcadaServicoDAO; +import com.rjconsultores.ventaboletos.entidad.FormaPagoDet; +import com.rjconsultores.ventaboletos.entidad.OperadorEmbarcada; +import com.rjconsultores.ventaboletos.entidad.PtoVtaSeguro; +import com.rjconsultores.ventaboletos.entidad.PtovtaCatInd; +import com.rjconsultores.ventaboletos.entidad.PuntoVentaVO; +import com.rjconsultores.ventaboletos.rest.bean.ParamsSincronizarOperador; +import com.rjconsultores.ventaboletos.vo.corrida.CorridaVO; +import com.rjconsultores.ventaboletos.vo.embarcada.FormaPagamentoVO; +import com.rjconsultores.ventaboletos.vo.embarcada.OperadorEmbarcadaVO; +import com.rjconsultores.ventaboletos.vo.embarcada.SeguroTaxaEmbarqueVO; +import com.rjconsultores.ventaboletos.vo.embarcada.TiposPassagensBloqueadasVO; +import com.rjconsultores.ventaboletos.vo.ruta.RutaVO; +import com.rjconsultores.ventaboletos.web.utilerias.spring.AppContext; + +@Service("consultarOperadorService") +public class ConsultarOperadorService { + private static Logger log = org.slf4j.LoggerFactory.getLogger(ConsultarOperadorService.class); + + @ReadOnlyConnection + public OperadorEmbarcadaVO buscarDadosOperador(ParamsSincronizarOperador params) { + SimpleDateFormat sdf = new SimpleDateFormat("yyMMddHHmm"); + + Date dtIni = null; + Date dtFim = null; + + try { + dtIni = sdf.parse(params.getDataInicial()); + dtFim = sdf.parse(params.getDataFinal()); + } catch (ParseException e) { + log.error(e.getMessage(), e); + } + + OperadorEmbarcadaDAO operadorEmbarcadaDAO = (OperadorEmbarcadaDAO)AppContext.getApplicationContext().getBean("operadorEmbarcadaDAO"); + OperadorEmbarcadaLinhaDAO operadorEmbarcadaLinhaDAO = (OperadorEmbarcadaLinhaDAO)AppContext.getApplicationContext().getBean("operadorEmbarcadaLinhaDAO"); + OperadorEmbarcadaServicoDAO operadorEmbarcadaServicoDAO = (OperadorEmbarcadaServicoDAO)AppContext.getApplicationContext().getBean("operadorEmbarcadaServicoDAO"); + OperadorEmbarcada operadorEmbarcada = operadorEmbarcadaDAO.buscarOperadorEmbarcadaPorUsuario(params.getOperador()); + + PuntoVentaVO puntoVentaVO = operadorEmbarcadaDAO.getPuntoVentaVO(params.getOperador()); + + List lsRutaVO = operadorEmbarcadaLinhaDAO.getListaRutaVO(params.getOperador()); + + List lsCorridaVO = operadorEmbarcadaServicoDAO.getListaCorridaProxyVO(params.getOperador(), params.getEmpresa(), dtIni, dtFim); + + OperadorEmbarcadaVO vo = new OperadorEmbarcadaVO(); + vo.setIdOperador(operadorEmbarcada.getUsuarioId()); + vo.setOperador(operadorEmbarcada.getUsername()); + vo.setDescOperador(operadorEmbarcada.getName()); + + if (puntoVentaVO != null) { + vo.setIdAgencia(puntoVentaVO.getPuntoventaId()); + vo.setDescAgencia(puntoVentaVO.nombpuntoventa); + + vo.setLsFormasPagamento(new ArrayList()); + vo.setLsSeguroTaxaEmbarque(new ArrayList()); + vo.setLsTiposPassagensBloqueadas(new ArrayList()); + + List listFP = operadorEmbarcadaDAO.getListaFormaPago(puntoVentaVO.getPuntoventaId()); + + for (FormaPagoDet dp : listFP) { + vo.getLsFormasPagamento().add( + new FormaPagamentoVO( + dp.getEmpresa().getEmpresaId(), + dp.getEmpresa().getNombempresa(), + dp.getFormaPago().getFormapagoId().intValue(), + dp.getFormaPago().getDescpago())); + } + + List listSTx = operadorEmbarcadaDAO.getListaSeguroTaxaEmbarque(puntoVentaVO.getPuntoventaId()); + + for (PtoVtaSeguro st : listSTx) { + vo.getLsSeguroTaxaEmbarque().add( + new SeguroTaxaEmbarqueVO( + st.getEmpresa().getEmpresaId(), + st.getIndVendeSeguroOpcEmbarcada(), + st.getIndVendeSeguroTabelaEmbarcada(), + st.getIndTaxaEmbarqueEmbarcada())); + } + + List listTPB = operadorEmbarcadaDAO.getListaTiposPassagensBloqueadas(puntoVentaVO.getPuntoventaId()); + + for (PtovtaCatInd tpb : listTPB) { + vo.getLsTiposPassagensBloqueadas().add( + new TiposPassagensBloqueadasVO( + tpb.getCategoria().getCategoriaId(), + tpb.getUsuarioBloqueado().getUsuarioId(), + tpb.getEmpresa().getEmpresaId())); + } + } + + vo.setLsRutas(lsRutaVO); + vo.setLsCorridas(lsCorridaVO); + + return vo; + } +} diff --git a/src/java/com/rjconsultores/ventaboletos/rest/service/SincronizarOperadorService.java b/src/java/com/rjconsultores/ventaboletos/rest/service/SincronizarOperadorService.java new file mode 100644 index 000000000..45ee10c79 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/rest/service/SincronizarOperadorService.java @@ -0,0 +1,120 @@ +package com.rjconsultores.ventaboletos.rest.service; + +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +import org.slf4j.Logger; +import org.springframework.stereotype.Service; + +import com.rjconsultores.routing.ReadOnlyConnection; +import com.rjconsultores.ventaboletos.dao.OperadorEmbarcadaDAO; +import com.rjconsultores.ventaboletos.dao.OperadorEmbarcadaLinhaDAO; +import com.rjconsultores.ventaboletos.dao.OperadorEmbarcadaServicoDAO; +import com.rjconsultores.ventaboletos.dao.PuntoVentaDAO; +import com.rjconsultores.ventaboletos.entidad.FormaPagoDet; +import com.rjconsultores.ventaboletos.entidad.OperadorEmbarcada; +import com.rjconsultores.ventaboletos.entidad.PtoVtaSeguro; +import com.rjconsultores.ventaboletos.entidad.PtovtaCatInd; +import com.rjconsultores.ventaboletos.entidad.PuntoVentaVO; +import com.rjconsultores.ventaboletos.rest.bean.ParamsSincronizarOperador; +import com.rjconsultores.ventaboletos.rest.service.exception.ServiceEmbarcadaException; +import com.rjconsultores.ventaboletos.vo.corrida.CorridaVO; +import com.rjconsultores.ventaboletos.vo.embarcada.FormaPagamentoVO; +import com.rjconsultores.ventaboletos.vo.embarcada.OperadorEmbarcadaVO; +import com.rjconsultores.ventaboletos.vo.embarcada.SeguroTaxaEmbarqueVO; +import com.rjconsultores.ventaboletos.vo.embarcada.TiposPassagensBloqueadasVO; +import com.rjconsultores.ventaboletos.vo.ruta.RutaVO; +import com.rjconsultores.ventaboletos.web.utilerias.spring.AppContext; + +@Service("sincronizarOperadorService") +public class SincronizarOperadorService { + private static Logger log = org.slf4j.LoggerFactory.getLogger(SincronizarOperadorService.class); + + @ReadOnlyConnection + public OperadorEmbarcadaVO buscarDadosOperador(ParamsSincronizarOperador params) throws ServiceEmbarcadaException { + SimpleDateFormat sdf = new SimpleDateFormat("yyMMddHHmm"); + + Date dtIni = null; + Date dtFim = null; + + try { + dtIni = sdf.parse(params.getDataInicial()); + dtFim = sdf.parse(params.getDataFinal()); + } catch (ParseException e) { + log.error(e.getMessage(), e); + } + + OperadorEmbarcadaDAO operadorEmbarcadaDAO = (OperadorEmbarcadaDAO)AppContext.getApplicationContext().getBean("operadorEmbarcadaDAO"); + OperadorEmbarcadaLinhaDAO operadorEmbarcadaLinhaDAO = (OperadorEmbarcadaLinhaDAO)AppContext.getApplicationContext().getBean("operadorEmbarcadaLinhaDAO"); + OperadorEmbarcadaServicoDAO operadorEmbarcadaServicoDAO = (OperadorEmbarcadaServicoDAO)AppContext.getApplicationContext().getBean("operadorEmbarcadaServicoDAO"); + PuntoVentaDAO puntoventaDAO = (PuntoVentaDAO)AppContext.getApplicationContext().getBean("puntoVentaDAO"); + OperadorEmbarcada operadorEmbarcada; + try{ + operadorEmbarcada = operadorEmbarcadaDAO.buscarOperadorEmbarcadaPorUsuario(params.getOperador()); + } catch (Exception e){ + throw new ServiceEmbarcadaException("Error: Buscar Operador Embarcada por Usuario retornou mais de um registro."); + } + // List lsOperadorEmbarcadaLinha = operadorEmbarcadaLinhaDAO.buscarPorOperador(operadorEmbarcada); + + PuntoVentaVO puntoVentaVO = operadorEmbarcadaDAO.getPuntoVentaVO(params.getOperador()); + + ListlsRutaVO = operadorEmbarcadaLinhaDAO.getListaRutaVO(params.getOperador()); + + ListlsCorridaVO = operadorEmbarcadaServicoDAO.getListaCorridaVO(params.getOperador(), params.getEmpresa(), dtIni, dtFim, puntoventaDAO.obtenerID(puntoVentaVO.getPuntoventaId())); + + OperadorEmbarcadaVO vo = new OperadorEmbarcadaVO(); + vo.setIdOperador(operadorEmbarcada.getUsuarioId()); + vo.setOperador(operadorEmbarcada.getUsername()); + vo.setDescOperador(operadorEmbarcada.getName()); + vo.setIndcorteautomatico(operadorEmbarcada.getUsuario().getIndCorteAutomatico()); + + if (puntoVentaVO != null) { + vo.setIdAgencia(puntoVentaVO.getPuntoventaId()); + vo.setDescAgencia(puntoVentaVO.nombpuntoventa); + + vo.setLsFormasPagamento(new ArrayList()); + vo.setLsSeguroTaxaEmbarque(new ArrayList()); + vo.setLsTiposPassagensBloqueadas(new ArrayList()); + + List listFP = operadorEmbarcadaDAO.getListaFormaPago(puntoVentaVO.getPuntoventaId()); + + for (FormaPagoDet dp : listFP) { + vo.getLsFormasPagamento().add( + new FormaPagamentoVO( + dp.getEmpresa().getEmpresaId(), + dp.getEmpresa().getNombempresa(), + dp.getFormaPago().getFormapagoId().intValue(), + dp.getFormaPago().getDescpago())); + } + + List listSTx = operadorEmbarcadaDAO.getListaSeguroTaxaEmbarque(puntoVentaVO.getPuntoventaId()); + + for (PtoVtaSeguro st : listSTx) { + vo.getLsSeguroTaxaEmbarque().add( + new SeguroTaxaEmbarqueVO( + st.getEmpresa().getEmpresaId(), + st.getIndVendeSeguroOpcEmbarcada(), + st.getIndVendeSeguroTabelaEmbarcada(), + st.getIndTaxaEmbarqueEmbarcada())); + } + + List listTPB = operadorEmbarcadaDAO.getListaTiposPassagensBloqueadas(puntoVentaVO.getPuntoventaId()); + + for (PtovtaCatInd tpb : listTPB) { + vo.getLsTiposPassagensBloqueadas().add( + new TiposPassagensBloqueadasVO( + tpb.getCategoria().getCategoriaId(), + tpb.getUsuarioBloqueado().getUsuarioId(), + tpb.getEmpresa().getEmpresaId())); + } + } + + vo.setLsRutas(lsRutaVO); + vo.setLsCorridas(lsCorridaVO); + + return vo; + } +} diff --git a/src/java/com/rjconsultores/ventaboletos/rest/service/SincronizarOperadoresService.java b/src/java/com/rjconsultores/ventaboletos/rest/service/SincronizarOperadoresService.java new file mode 100644 index 000000000..30690bcd5 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/rest/service/SincronizarOperadoresService.java @@ -0,0 +1,22 @@ +package com.rjconsultores.ventaboletos.rest.service; + +import java.util.List; + +import org.springframework.stereotype.Service; + +import com.rjconsultores.routing.ReadOnlyConnection; +import com.rjconsultores.ventaboletos.dao.PuntoVentaDAO; +import com.rjconsultores.ventaboletos.rest.bean.ParamsDadosOperador; +import com.rjconsultores.ventaboletos.vo.embarcada.UsuarioEmbarcadaVO; +import com.rjconsultores.ventaboletos.web.utilerias.spring.AppContext; + +@Service("sincronizarOperadoresService") +public class SincronizarOperadoresService { + + @ReadOnlyConnection + public List buscarDadosOperador(ParamsDadosOperador params) { + PuntoVentaDAO puntoVentaDAO = (PuntoVentaDAO)AppContext.getApplicationContext().getBean("puntoVentaDAO"); + return puntoVentaDAO.buscaUsuariosDoPuntoVenta(params.getPuntoVentaId()); + } + +} diff --git a/src/java/com/rjconsultores/ventaboletos/rest/service/SincronizarService.java b/src/java/com/rjconsultores/ventaboletos/rest/service/SincronizarService.java new file mode 100644 index 000000000..25836c8bb --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/rest/service/SincronizarService.java @@ -0,0 +1,123 @@ +package com.rjconsultores.ventaboletos.rest.service; + +import java.util.HashMap; +import java.util.Map; + +import org.springframework.stereotype.Service; + +import com.rjconsultores.routing.ReadOnlyConnection; +import com.rjconsultores.ventaboletos.constantes.Constantes; +import com.rjconsultores.ventaboletos.dao.ConstanteDAO; +import com.rjconsultores.ventaboletos.dao.DispositivoEmbarcadaDAO; +import com.rjconsultores.ventaboletos.dao.EmpresaDAO; +import com.rjconsultores.ventaboletos.dao.PuntoVentaDAO; +import com.rjconsultores.ventaboletos.entidad.Constante; +import com.rjconsultores.ventaboletos.entidad.CtrlSerieEmbarcada; +import com.rjconsultores.ventaboletos.entidad.DispositivoEmbarcada; +import com.rjconsultores.ventaboletos.entidad.Empresa; +import com.rjconsultores.ventaboletos.entidad.EmpresaImposto; +import com.rjconsultores.ventaboletos.entidad.Estado; +import com.rjconsultores.ventaboletos.entidad.InscricaoEstadual; +import com.rjconsultores.ventaboletos.entidad.PtovtaEmpresa; +import com.rjconsultores.ventaboletos.entidad.PuntoVenta; +import com.rjconsultores.ventaboletos.rest.bean.ParamsSincronizarDispositivo; +import com.rjconsultores.ventaboletos.rest.service.exception.ServiceEmbarcadaException; +import com.rjconsultores.ventaboletos.vo.embarcada.DispositivoEmbarcadaVO; +import com.rjconsultores.ventaboletos.vo.embarcada.EmpresaVO; +import com.rjconsultores.ventaboletos.vo.embarcada.EstadoDispositivoEmbarcadaVO; +import com.rjconsultores.ventaboletos.vo.embarcada.InscricaoEstadualVO; +import com.rjconsultores.ventaboletos.web.utilerias.spring.AppContext; + +@Service("sincronizarService") +public class SincronizarService { + + @ReadOnlyConnection + public DispositivoEmbarcadaVO getDispositivoEmbarcada(ParamsSincronizarDispositivo params) throws ServiceEmbarcadaException { + DispositivoEmbarcadaDAO dispositivoEmbarcadaDAO = (DispositivoEmbarcadaDAO)AppContext.getApplicationContext().getBean("dispositivoEmbarcadaDAO"); + EmpresaDAO empresaDAO = (EmpresaDAO)AppContext.getApplicationContext().getBean("empresaDAO"); + PuntoVentaDAO puntoVentaDAO = (PuntoVentaDAO)AppContext.getApplicationContext().getBean("puntoVentaDAO"); + DispositivoEmbarcada dispositivo = dispositivoEmbarcadaDAO.buscarImei(params.getImei()); + ConstanteDAO constanteDAO = (ConstanteDAO)AppContext.getApplicationContext().getBean("constanteDAO"); + + if (dispositivo == null){ + DispositivoEmbarcadaVO dispositivoVo = new DispositivoEmbarcadaVO(); + dispositivoVo.setMsg("Dispositivo não encontrado"); + return dispositivoVo; + } + + PuntoVenta puntoVenta = puntoVentaDAO.obtenerID(dispositivo.getPuntoVenta().getPuntoventaId().intValue()); + Empresa empresa = empresaDAO.obtenerID(dispositivo.getEmpresa().getEmpresaId().intValue()); + + DispositivoEmbarcadaVO vo = new DispositivoEmbarcadaVO(); + vo.setDispositivoId(dispositivo.getDispositivoEmbarcadaId()); + vo.setBaixado(dispositivo.getIndDispBaixado() ? 1 : 0); + vo.setBloqueado(dispositivo.getIndDispBloqueado() ? 1 : 0); + vo.setDescAgencia(puntoVenta.getNombpuntoventa()); + vo.setNumagencia(puntoVenta.getNumPuntoVenta()); + vo.setDescEmpresa(empresa.getNombempresa()); + vo.setDescEquipamento(dispositivo.getDescricao()); + vo.setIdAgencia(dispositivo.getPuntoVenta().getPuntoventaId().longValue()); + vo.setIdempresa(dispositivo.getEmpresa().getEmpresaId().longValue()); + vo.setManutencao(dispositivo.getIndDispManutencao() ? 1 : 0); + vo.setCnpjAgencia(puntoVenta.getNumDoCPuntoVenta()); + vo.setEnderecoAgencia(puntoVenta.getDireccioncalle()+", nº: "+puntoVenta.getDireccionnumero()+". Cidade: "+puntoVenta.getCidade()); + vo.setCnpjEmpresa(empresa.getCnpj()); + + Map impostos = getImpostos(empresa); + + for (PtovtaEmpresa e : puntoVenta.getLsPtovtaEmpresa()){ + EmpresaVO emp = new EmpresaVO(); + emp.setEmpresaId(e.getEmpresa().getEmpresaId().longValue()); + emp.setNombempresa(e.getEmpresa().getNombempresa()); + emp.setCnpj(e.getEmpresa().getCnpj()); + emp.setIndImprimeRelFechamentoViagemDetalhadoEmarcada(e.getEmpresa().getIndImprimeRelFechamentoViagemDetalhadoEmarcada() != null ? e.getEmpresa().getIndImprimeRelFechamentoViagemDetalhadoEmarcada() : Boolean.FALSE); + emp.setIndImprimeLogoBilheteVendaEmbarcada(e.getEmpresa().getIndImprimeLogoBilheteVendaEmbarcada() != null ? e.getEmpresa().getIndImprimeLogoBilheteVendaEmbarcada() : Boolean.FALSE); + vo.getEmpresasVenda().add(emp); + for (InscricaoEstadual insc : e.getEmpresa().getInscricoesEstaduais()){ + EmpresaImposto imposto = impostos.get(insc.getEstado()); + InscricaoEstadualVO ie; + if (insc.getActivo()){ + ie = new InscricaoEstadualVO(insc); + if (imposto != null) { + ie.setPorctributo(imposto.getPorctributo()); + ie.setTributacaoImportacao(imposto.getTributacaoImportacao()); + ie.setTributacaoImportacaoIM(imposto.getTributacaoImportacaoIM()); + } + emp.getInscricoesEstaduais().add(ie); + } + } + } + vo.setEnderecoEmpresa(empresa.getLogradouro()+", nº: "+empresa.getNumero()+". Cidade: "+empresa.getBairro()); + Constante estacionEmbarcadaConst = constanteDAO.buscarPorNomeConstante(Constantes.ESTACAO_EMBARCADA); + + if (estacionEmbarcadaConst == null || (estacionEmbarcadaConst != null && estacionEmbarcadaConst.getValorconstante() == null) || + (estacionEmbarcadaConst != null && estacionEmbarcadaConst.getValorconstante().isEmpty())){ + throw new ServiceEmbarcadaException("Error: Constante ESTACAO_EMBARCADA não cadastrada!"); + } + + String estacionIdEmbarcada = estacionEmbarcadaConst.getValorconstante(); + vo.setEstacionId(estacionIdEmbarcada != null && !estacionIdEmbarcada.isEmpty() ? Integer.parseInt(estacionIdEmbarcada) : null); + + for (CtrlSerieEmbarcada serie : dispositivo.getSeries()){ + EstadoDispositivoEmbarcadaVO estado = new EstadoDispositivoEmbarcadaVO(); + estado.setDescUf(serie.getEstado().getCveestado()); + estado.setIdUf(serie.getEstado().getEstadoId().longValue()); + estado.setNumBpe(serie.getNumeroCorrente()); + estado.setSerie(serie.getSerie()); + vo.add(estado); + } + + return vo; + } + + private Map getImpostos(Empresa e){ + Map result = new HashMap(); + + for (EmpresaImposto ei : e.getEmpresaImpostoList()) { + if (ei.getActivo()) { + result.put(ei.getEstado(), ei); + } + } + return result; + } +} diff --git a/src/java/com/rjconsultores/ventaboletos/rest/service/SincronizarUsuariosControleEmbarqueService.java b/src/java/com/rjconsultores/ventaboletos/rest/service/SincronizarUsuariosControleEmbarqueService.java new file mode 100644 index 000000000..c5bddbb24 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/rest/service/SincronizarUsuariosControleEmbarqueService.java @@ -0,0 +1,22 @@ +package com.rjconsultores.ventaboletos.rest.service; + +import java.util.List; + +import org.springframework.stereotype.Service; + +import com.rjconsultores.routing.ReadOnlyConnection; +import com.rjconsultores.ventaboletos.dao.UsuarioDAO; +import com.rjconsultores.ventaboletos.rest.bean.ParamsSincronizarUsuarios; +import com.rjconsultores.ventaboletos.vo.embarcada.UsuarioEmbarcadaVO; +import com.rjconsultores.ventaboletos.web.utilerias.spring.AppContext; + +@Service("sincronizarUsuariosControleEmbarqueService") +public class SincronizarUsuariosControleEmbarqueService { + + @ReadOnlyConnection + public List buscarUsuariosControleEmbarque(ParamsSincronizarUsuarios params) { + UsuarioDAO usuarioDAO = (UsuarioDAO) AppContext.getApplicationContext().getBean("usuarioDAO"); + return usuarioDAO.buscarPorFuncionSistema(params.getFuncionId()); + } + +} diff --git a/src/java/com/rjconsultores/ventaboletos/rest/service/exception/ServiceEmbarcadaException.java b/src/java/com/rjconsultores/ventaboletos/rest/service/exception/ServiceEmbarcadaException.java new file mode 100644 index 000000000..907e27693 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/rest/service/exception/ServiceEmbarcadaException.java @@ -0,0 +1,9 @@ +package com.rjconsultores.ventaboletos.rest.service.exception; + +public class ServiceEmbarcadaException extends Exception { + private static final long serialVersionUID = 8226405077123451667L; + + public ServiceEmbarcadaException(String message) { + super(message); + } +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/servlet/ReloadDBConnection.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/servlet/ReloadDBConnection.java new file mode 100644 index 000000000..507440eb6 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/servlet/ReloadDBConnection.java @@ -0,0 +1,40 @@ +package com.rjconsultores.ventaboletos.web.utilerias.servlet; + +import java.io.IOException; +import java.io.PrintWriter; + +import javax.servlet.ServletException; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import com.rjconsultores.ventaboletos.rest.service.AmbienteService; +import com.rjconsultores.ventaboletos.utilerias.ApplicationProperties; +import com.rjconsultores.ventaboletos.web.utilerias.spring.AppContext; + +public class ReloadDBConnection extends HttpServlet { + private static final long serialVersionUID = -2076848353707789950L; + + private PrintWriter out = null; + + @Override + protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { + out = resp.getWriter(); + out.println("

Reload DB Connection

"); + + ApplicationProperties.getInstance().readReadOnlyConnection(); + + AmbienteService service = (AmbienteService) AppContext.getApplicationContext().getBean("ambienteService"); + + out.println("Ambiente: " + service.getAmbienteReadOnly()); + + out.println("Processo realizado com sucesso."); + + out.close(); + } + + @Override + protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { + doGet(req, resp); + } +} diff --git a/src/java/spring-config.xml b/src/java/spring-config.xml index 1246bc10f..21977baf5 100644 --- a/src/java/spring-config.xml +++ b/src/java/spring-config.xml @@ -517,7 +517,19 @@ class="com.rjconsultores.ventaboletos.web.utilerias.spring.ApplicationContextProvider"> - + + + + + + + + + + + + + @@ -529,6 +541,11 @@ + + + + + diff --git a/web/WEB-INF/jboss-deployment-structure.xml b/web/WEB-INF/jboss-deployment-structure.xml index caf247d18..07b4780c7 100644 --- a/web/WEB-INF/jboss-deployment-structure.xml +++ b/web/WEB-INF/jboss-deployment-structure.xml @@ -3,9 +3,6 @@ - - - \ No newline at end of file diff --git a/web/WEB-INF/lib/ckez-3.6.0.0.jar b/web/WEB-INF/lib/ckez-3.6.0.0.jar deleted file mode 100644 index de16d2940..000000000 Binary files a/web/WEB-INF/lib/ckez-3.6.0.0.jar and /dev/null differ diff --git a/web/WEB-INF/lib/gson-2.3.1.jar b/web/WEB-INF/lib/gson-2.3.1.jar deleted file mode 100644 index 250132c19..000000000 Binary files a/web/WEB-INF/lib/gson-2.3.1.jar and /dev/null differ diff --git a/web/WEB-INF/web.xml b/web/WEB-INF/web.xml index 869d107bb..e1d358f51 100644 --- a/web/WEB-INF/web.xml +++ b/web/WEB-INF/web.xml @@ -163,6 +163,13 @@ ReloadFlyway com.rjconsultores.ventaboletos.servlet.ReloadFlyway + + + + ReloadDBConnection + ReloadDBConnection + com.rjconsultores.ventaboletos.web.utilerias.servlet.ReloadDBConnection + dspLoader *.dsp @@ -175,6 +182,10 @@ ReloadFlyway /ReloadFlyway + + ReloadDBConnection + /ReloadDBConnection +