diff --git a/pom.xml b/pom.xml index ff94c51ab..38b817028 100644 --- a/pom.xml +++ b/pom.xml @@ -4,12 +4,12 @@ 4.0.0 br.com.rjconsultores ventaboletosadm - 1.163.4 + 1.165.1 war - 1.121.4 - 1.103.3 + 1.122.1 + 1.105.0 UTF-8 diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioDadosConsolidadosCeturb.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioDadosConsolidadosCeturb.java new file mode 100644 index 000000000..43d64409f --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioDadosConsolidadosCeturb.java @@ -0,0 +1,352 @@ +/** + * + */ +package com.rjconsultores.ventaboletos.relatorios.impl; + +import java.math.BigDecimal; +import java.sql.Connection; +import java.sql.ResultSet; +import java.text.SimpleDateFormat; +import java.util.ArrayList; +import java.util.Date; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; + +import com.rjconsultores.ventaboletos.relatorios.utilitarios.DataSource; +import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio; +import com.rjconsultores.ventaboletos.relatorios.utilitarios.RelatorioDadosConsolidadosCeturbBean; +import com.rjconsultores.ventaboletos.relatorios.utilitarios.RelatorioResumoLinhasBean; +import com.rjconsultores.ventaboletos.service.ConstanteService; +import com.rjconsultores.ventaboletos.utilerias.MoneyHelper; +import com.rjconsultores.ventaboletos.web.utilerias.NamedParameterStatement; +import com.rjconsultores.ventaboletos.web.utilerias.spring.AppContext; + +import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource; + +/** + * @author Bruno H. G. Gouvea + * + */ +public class RelatorioDadosConsolidadosCeturb extends Relatorio { + + /** + * @param parametros + * @param conexao + */ + + private List lsDadosRelatorio; + private static String CONSTANTE_GRATUIDADE_CRIANCA; + + public RelatorioDadosConsolidadosCeturb(Map parametros, Connection conexao) throws Exception{ + super(parametros, conexao); + this.setCustomDataSource(new DataSource(this) { + @Override + public void initDados() throws Exception { + Integer rutaId = parametros.get("RUTA_ID") != null ? Integer.valueOf(parametros.get("RUTA_ID").toString()) : null; + Integer empresaId = parametros.get("EMPRESA_ID") != null ? Integer.valueOf(parametros.get("EMPRESA_ID").toString()) : null; + Integer grupoRutaId = parametros.get("GRUPORUTA_ID") != null ? Integer.valueOf(parametros.get("GRUPORUTA_ID").toString()) : null; + CONSTANTE_GRATUIDADE_CRIANCA = buscarConstante("GRATUIDADE_CRIANCA"); + String sql = getSql(rutaId, grupoRutaId); + + NamedParameterStatement stmt = new NamedParameterStatement(conexao, sql); + ResultSet rset = null; + + SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss"); + if (parametros.get("DATA_INICIAL") != null) { + Date dataInicio = (Date) parametros.get("DATA_INICIAL"); + stmt.setString("DATA_INICIAL", sdf.format(dataInicio)); + } + + if (parametros.get("DATA_FINAL") != null) { + Date dataFinal = (Date) parametros.get("DATA_FINAL"); + stmt.setString("DATA_FINAL", sdf.format(dataFinal)); + } + + if (rutaId != null) { + stmt.setInt("RUTA_ID", rutaId); + } + if (grupoRutaId != null) { + stmt.setInt("GRUPORUTA_ID", grupoRutaId); + } + stmt.setInt("EMPRESA_ID", empresaId.intValue()); + stmt.setString("CRIANCA_ID",CONSTANTE_GRATUIDADE_CRIANCA); + rset = stmt.executeQuery(); + + lsDadosRelatorio = new ArrayList(); + Set setDadosRelatorio = new HashSet(); + + RelatorioDadosConsolidadosCeturbBean relatorioBean = null; + while (rset.next()) { + + relatorioBean = new RelatorioDadosConsolidadosCeturbBean(); + relatorioBean.setINDSENTIDOIDA(rset.getInt("INDSENTIDOIDA")); + relatorioBean.setRUTA_ID(rset.getBigDecimal("RUTA_ID")); + relatorioBean.setNUMRUTA(rset.getString("NUMRUTA")); + relatorioBean.setDESCRUTA(rset.getString("DESCRUTA") + (BigDecimal.ZERO.equals(rset.getBigDecimal("INDSENTIDOIDA")) ? " - VOLTA " : " - IDA")); + relatorioBean.setINTERESTADUAL(rset.getString("INTERESTADUAL")); + relatorioBean.setGRUPO_LINHA(rset.getString("GRUPO_LINHA")); + relatorioBean.setEXTENSAO_KM(rset.getBigDecimal("EXTENSAO_KM")); + relatorioBean.setRECEITA_SEGURO(rset.getBigDecimal("RECEITA_SEGURO")); + relatorioBean.setRECEITA_BAGAGEM(rset.getBigDecimal("RECEITA_BAGAGEM")); + relatorioBean.setRECEITA_SEGURO_OUTROS(rset.getBigDecimal("RECEITA_SEGURO_OUTROS")); + relatorioBean.setRECEITA_TARIFA(rset.getBigDecimal("RECEITA_TARIFA")); + relatorioBean.setRECEITA_PEDAGIO(rset.getBigDecimal("RECEITA_PEDAGIO")); + relatorioBean.setRECEITA_EMBARQUE(rset.getBigDecimal("RECEITA_EMBARQUE")); + relatorioBean.setPASSAGEIROS(rset.getBigDecimal("PASSAGEIROS")); + relatorioBean.setVIAGENS_EXTRA(rset.getBigDecimal("VIAGENS_EXTRA")); + relatorioBean.setVIAGENS(rset.getBigDecimal("VIAGENS")); + relatorioBean.setCVE_CLASE_SERVICIO(rset.getString("CVE_CLASE_SERVICIO")); + relatorioBean.setRECEITA_TOTAL(rset.getBigDecimal("RECEITA_TOTAL")); + relatorioBean.setVIAGENS_TOTAL(rset.getBigDecimal("VIAGENS_TOTAL")); + relatorioBean.setKM_RODADO(rset.getBigDecimal("KM_RODADO")); + relatorioBean.setPASSAGEIROS_EQUIVALENTE(rset.getBigDecimal("PASSAGEIROS_EQUIVALENTE")); + relatorioBean.setPASSAGEIROS_MPA(rset.getBigDecimal("PASSAGEIROS_MPA")); + relatorioBean.setPASSAGEIROS_MPE(rset.getBigDecimal("PASSAGEIROS_MPE")); + relatorioBean.setRECEITA_KM(rset.getBigDecimal("RECEITA_KM")); + relatorioBean.setRECEITA_VIAGEM(rset.getBigDecimal("RECEITA_VIAGEM")); + relatorioBean.setPAX_KM(rset.getBigDecimal("PAX_KM")); + relatorioBean.setPAX_OFERTADO(rset.getBigDecimal("PAX_OFERTADO")); + relatorioBean.setTARIFA(rset.getBigDecimal("TARIFA")); + relatorioBean.setEQ(rset.getBigDecimal("EQ")); + relatorioBean.setIAP(rset.getBigDecimal("IAP")); + relatorioBean.setASSENTOS(rset.getBigDecimal("ASSENTOS")); + relatorioBean.setICMS(calcularICMS(relatorioBean.getRECEITA_TOTAL(), rset.getBigDecimal("ICMS"))); + relatorioBean.setTARIFA_MAIOR(rset.getBigDecimal("TARIFAMAIOR")); + setDadosRelatorio.add(relatorioBean); + } + + if (setDadosRelatorio.size() > 0) { + lsDadosRelatorio.addAll(setDadosRelatorio); + setLsDadosRelatorio( lsDadosRelatorio ); + }else { + //tratado caso onde filtra a linha (apenas uma linha) + if(rset.getRow() ==0 && rutaId !=null && relatorioBean!=null) { + lsDadosRelatorio.add(relatorioBean); + setLsDadosRelatorio(lsDadosRelatorio); + } + } + + } + }); + } + + /* + * (non-Javadoc) + * + * @see com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio#processaParametros() + */ + @Override + public void processaParametros() throws Exception { + } + + private String getSql(Integer rutaId, Integer grupoRutaId) { + StringBuilder sqlSb = new StringBuilder(); + sqlSb.append(" SELECT SUB.*, "); + sqlSb.append(" (NVL(SUB.PASSAGEIROS,0) / DECODE(NVL(SUB.VIAGENS_TOTAL,0), 0, 1, NVL(SUB.VIAGENS_TOTAL,0))) AS PASSAGEIROS_MPA, "); + sqlSb.append(" ( ROUND(NVL(SUB.PASSAGEIROS,0), 2) / DECODE(NVL(SUB.VIAGENS_TOTAL,0), 0, 1, NVL(SUB.VIAGENS_TOTAL,0))) AS PASSAGEIROS_MPE, "); + sqlSb.append(" (NVL(SUB.RECEITA_TOTAL,0) / DECODE(NVL(SUB.KM_RODADO,0), 0, 1, NVL(SUB.KM_RODADO,0))) RECEITA_KM, "); + sqlSb.append(" (NVL(SUB.RECEITA_TOTAL,0) / DECODE(NVL(SUB.VIAGENS_TOTAL,0), 0, 1, NVL(SUB.VIAGENS_TOTAL,0))) AS RECEITA_VIAGEM, "); + sqlSb.append(" ROUND(((NVL(RECEITA_TARIFA,0) / DECODE(NVL(RECEITA_TARIFA,0), 0, 1, NVL(SUB.VIAGENS_TOTAL,0))) / DECODE(NVL(SUB.TARIFA,0), 0, 1, NVL(SUB.TARIFA,0))), 2) AS EQ, "); + sqlSb.append(" (NVL(SUB.ASSENTOS,0) * NVL(SUB.KM_RODADO,0)) AS PAX_OFERTADO, "); + sqlSb.append(" ((((SUB.PAX_KM) / (NVL(SUB.ASSENTOS,0) * NVL(SUB.KM_RODADO,0)))) * 100) AS IAP "); + sqlSb.append(" FROM ( SELECT TAB.INDSENTIDOIDA, TAB.RUTA_ID, TAB.NUMRUTA, TAB.DESCRUTA, TAB.TARIFA, TAB.ASSENTOS, TAB.ROLOPERATIVO_ID, "); + sqlSb.append(" TAB.INTERESTADUAL, TAB.GRUPO_LINHA, TAB.EXTENSAO_KM, TAB.CVE_CLASE_SERVICIO, "); + sqlSb.append(" SUM(NVL(TAB.RECEITA_SEGURO,0)) AS RECEITA_SEGURO, SUM(NVL(TAB.RECEITA_BAGAGEM,0)) AS RECEITA_BAGAGEM, "); + sqlSb.append(" SUM(NVL(TAB.RECEITA_SEGURO_OUTROS,0)) AS RECEITA_SEGURO_OUTROS, SUM(NVL(TAB.RECEITA_TARIFA,0)) AS RECEITA_TARIFA, "); + sqlSb.append(" SUM(NVL(TAB.RECEITA_PEDAGIO,0)) AS RECEITA_PEDAGIO, SUM(NVL(TAB.RECEITA_EMBARQUE,0)) AS RECEITA_EMBARQUE, SUM(NVL(TAB.PASSAGEIROS,0)) AS PASSAGEIROS, "); + sqlSb.append(" SUM(NVL(TAB.VIAGENS_EXTRA,0)) AS VIAGENS_EXTRA, SUM(NVL(TAB.VIAGENS,0)) AS VIAGENS, SUM(NVL(TAB.RECEITA_TOTAL,0)) AS RECEITA_TOTAL, "); + sqlSb.append(" SUM(NVL(TAB.VIAGENS_TOTAL,0)) AS VIAGENS_TOTAL, SUM(NVL(TAB.KM_RODADO,0)) AS KM_RODADO, SUM(NVL(TAB.PASSAGEIROS_EQUIVALENTE,0)) AS PASSAGEIROS_EQUIVALENTE, "); + sqlSb.append(" SUM(NVL(TAB.PAX_KM,0)) AS PAX_KM, "); + sqlSb.append(" TAB.ICMS, "); + sqlSb.append(" TAB.TARIFAMAIOR "); + sqlSb.append(" FROM (SELECT TAB1.*, "); + sqlSb.append(" (TAB1.RECEITA_TARIFA + RECEITA_SEGURO + RECEITA_EMBARQUE + RECEITA_PEDAGIO) RECEITA_TOTAL, "); + sqlSb.append(" (NVL(TAB1.VIAGENS,0) + NVL(TAB1.VIAGENS_EXTRA,0)) VIAGENS_TOTAL, "); + sqlSb.append(" ((NVL(TAB1.VIAGENS,0) + NVL(TAB1.VIAGENS_EXTRA,0)) * NVL(TAB1.EXTENSAO_KM,0)) KM_RODADO, "); + sqlSb.append(" TAB1.KM_REAL PAX_KM, "); + sqlSb.append(" (SELECT SUM(NVL(PE.EQUIVALENTE,0)) "); + sqlSb.append(" FROM (SELECT CO.FECCORRIDA, CO.RUTA_ID, BO.PRECIOBASE, CO.CORRIDA_ID, ROUND((BO.NUMKMVIAJE * COUNT(1) / "); + if (parametros.get("SOMAR_KM_RODADOS_POR").equals("SEQUENCIA")) { + sqlSb.append(" (SELECT SUM(NVL(TR.CANTKMREAL,0)) "); + sqlSb.append(" FROM RUTA_SECUENCIA RS, TRAMO TR "); + sqlSb.append(" WHERE RS.RUTA_ID = TAB1.RUTA_ID "); + sqlSb.append(" AND RS.TRAMO_ID = TR.TRAMO_ID "); + sqlSb.append(" AND RS.ACTIVO = 1 )), 2) EQUIVALENTE "); + }else { + sqlSb.append(" (SELECT SUM(NVL(TR.CANTKMREAL,0)) "); + sqlSb.append(" FROM RUTA_COMBINACION RS, TRAMO TR "); + sqlSb.append(" WHERE RS.RUTA_ID = TAB1.RUTA_ID "); + sqlSb.append(" AND RS.TRAMO_ID = TR.TRAMO_ID "); + + sqlSb.append(" AND TR.ORIGEN_ID = CO.ORIGEN_ID "); + sqlSb.append(" AND TR.DESTINO_ID = CO.DESTINO_ID "); + + sqlSb.append(" AND RS.ACTIVO = 1)), 2) EQUIVALENTE "); + } + sqlSb.append(" FROM CORRIDA CO, BOLETO BO "); + sqlSb.append(" WHERE CO.CORRIDA_ID = BO.CORRIDA_ID "); + sqlSb.append(" AND CO.FECCORRIDA = BO.FECCORRIDA "); + sqlSb.append(" AND BO.ACTIVO = 1 "); + sqlSb.append(" AND (BO.MOTIVOCANCELACION_ID IS NULL OR BO.MOTIVOCANCELACION_ID = 0 AND BO.CATEGORIA_ID <> :CRIANCA_ID) "); + sqlSb.append(" GROUP BY CO.FECCORRIDA, CO.RUTA_ID, BO.PRECIOBASE, BO.NUMKMVIAJE, CO.CORRIDA_ID, CO.ORIGEN_ID, CO.DESTINO_ID) PE "); + sqlSb.append(" WHERE PE.FECCORRIDA = TAB1.FECCORRIDA "); + sqlSb.append(" AND PE.CORRIDA_ID = TAB1.CORRIDA_ID "); + sqlSb.append(" AND PE.RUTA_ID = TAB1.RUTA_ID) PASSAGEIROS_EQUIVALENTE "); + sqlSb.append(" FROM (SELECT RT.RUTA_ID, "); + sqlSb.append(" RT.INDSENTIDOIDA, "); + sqlSb.append(" RT.NUMRUTA, "); + sqlSb.append(" CR.FECCORRIDA, "); + sqlSb.append(" CR.CORRIDA_ID, "); + sqlSb.append(" CONCAT(RT.DESCRUTA, CASE WHEN RT.INDSENTIDOIDA = 0 THEN ' - VOLTA' ELSE ' - IDA' END) DESCRUTA, "); + sqlSb.append(" TF.PRECIO TARIFA, "); + sqlSb.append(" DA.CANTASIENTOS ASSENTOS, "); + sqlSb.append(" RO.ROLOPERATIVO_ID, "); + sqlSb.append(" CASE WHEN CO.ESTADO_ID <> CD.ESTADO_ID THEN 'S' ELSE 'N' END INTERESTADUAL, "); + sqlSb.append(" NVL(GR.DESCGRUPO, 'Nao Definido') GRUPO_LINHA, "); + if (parametros.get("SOMAR_KM_RODADOS_POR").equals("SEQUENCIA")) { + sqlSb.append(" (SELECT SUM(NVL(RS.KMORIGINAL,0)) FROM RUTA_SECUENCIA RS, TRAMO TR WHERE RS.RUTA_ID = RT.RUTA_ID AND RS.TRAMO_ID = TR.TRAMO_ID AND RS.ACTIVO = 1) EXTENSAO_KM, "); + }else { + sqlSb.append(" TR.CANTKMREAL AS EXTENSAO_KM, "); + } + + sqlSb.append(" SUM(NVL(BL.NUMKMVIAJE,0)) KM_REAL, "); + sqlSb.append(" NVL(SUM(NVL(BL.IMPORTESEGURO,0)), 0) RECEITA_SEGURO, "); + sqlSb.append(" 0 RECEITA_BAGAGEM, "); + sqlSb.append(" 0 RECEITA_SEGURO_OUTROS, "); + sqlSb.append(" SUM(NVL(BL.PRECIOPAGADO,0)) RECEITA_TARIFA, "); + sqlSb.append(" SUM(NVL(BL.IMPORTEPEDAGIO,0)) RECEITA_PEDAGIO, "); + sqlSb.append(" SUM(NVL(BL.IMPORTETAXAEMBARQUE,0)) RECEITA_EMBARQUE, "); + sqlSb.append(" COUNT(1) PASSAGEIROS, "); + sqlSb.append(" COUNT(DISTINCT CASE WHEN CR.TIPOSERVICIO_ID = 2 THEN CR.FECCORRIDA || CR.CORRIDA_ID ELSE NULL END) VIAGENS_EXTRA, "); + sqlSb.append(" COUNT(DISTINCT CASE WHEN CR.TIPOSERVICIO_ID <> 2 THEN CR.FECCORRIDA || CR.CORRIDA_ID ELSE NULL END) VIAGENS, "); + sqlSb.append(" NVL(CS.CVECLASE, ' ') CVE_CLASE_SERVICIO, "); + sqlSb.append(" EI.ICMS ICMS,"); + sqlSb.append(" (SELECT MAX(T.PRECIO) AS PRECIO FROM TARIFA T "); + sqlSb.append(" JOIN TRAMO TR ON TR.TRAMO_ID = T.TRAMO_ID "); + sqlSb.append(" JOIN PARADA PORIGEN ON PORIGEN.PARADA_ID = TR.ORIGEN_ID "); + sqlSb.append(" JOIN PARADA PDESTINO ON PDESTINO.PARADA_ID = TR.DESTINO_ID "); + sqlSb.append(" JOIN CLASE_SERVICIO CS ON CS.CLASESERVICIO_ID = T.CLASESERVICIO_ID "); + sqlSb.append(" JOIN VIGENCIA_TARIFA VT ON VT.VIGENCIATARIFA_ID = T.VIGENCIATARIFA_ID "); + sqlSb.append(" JOIN MARCA M ON M.MARCA_ID = T.MARCA_ID "); + sqlSb.append(" WHERE "); + sqlSb.append(" T.ACTIVO = 1 "); + sqlSb.append(" AND VT.ACTIVO = 1 "); + sqlSb.append(" AND TR.ACTIVO = 1 "); + sqlSb.append(" AND T .RUTA_ID = RT.RUTA_ID "); + sqlSb.append(" )TARIFAMAIOR "); + sqlSb.append(" FROM RUTA RT, "); + + if (!parametros.get("SOMAR_KM_RODADOS_POR").equals("SEQUENCIA")) { + sqlSb.append(" RUTA_COMBINACION RC, "); + } + + sqlSb.append(" BOLETO BL, "); + sqlSb.append(" CORRIDA CR, "); + sqlSb.append(" TRAMO TR, "); + sqlSb.append(" ROL_OPERATIVO RO, "); + sqlSb.append(" DIAGRAMA_AUTOBUS DA, "); + sqlSb.append(" TARIFA TF, "); + sqlSb.append(" VIGENCIA_TARIFA VT, "); + sqlSb.append(" GRUPO_RUTA GR, "); + sqlSb.append(" PARADA PO, "); + sqlSb.append(" PARADA PD, "); + sqlSb.append(" CIUDAD CO, "); + sqlSb.append(" CIUDAD CD, "); + sqlSb.append(" CLASE_SERVICIO CS, "); + sqlSb.append(" EMPRESA_IMPOSTO EI "); + sqlSb.append(" WHERE RT.RUTA_ID = CR.RUTA_ID "); + sqlSb.append(" AND CS.CLASESERVICIO_ID = RT.CLASESERVICIO_ID "); + sqlSb.append(" AND CR.FECCORRIDA = BL.FECCORRIDA "); + if(rutaId !=null) { + sqlSb.append(" AND CR.RUTA_ID = NVL(:RUTA_ID, CR.RUTA_ID) "); + } + if(grupoRutaId!=null) { + sqlSb.append(" AND DECODE(:GRUPORUTA_ID, NULL, 1, RT.GRUPORUTA_ID) = DECODE(:GRUPORUTA_ID, NULL, 1, :GRUPORUTA_ID) "); + } + sqlSb.append(" AND CR.CORRIDA_ID = BL.CORRIDA_ID "); + sqlSb.append(" AND CR.EMPRESACORRIDA_ID = :EMPRESA_ID "); + sqlSb.append(" AND CR.ORIGEN_ID = PO.PARADA_ID "); + sqlSb.append(" AND CR.DESTINO_ID = PD.PARADA_ID "); + sqlSb.append(" AND PO.CIUDAD_ID = CO.CIUDAD_ID "); + sqlSb.append(" AND PD.CIUDAD_ID = CD.CIUDAD_ID "); + sqlSb.append(" AND RT.GRUPORUTA_ID = GR.GRUPORUTA_ID(+) "); + sqlSb.append(" AND RO.ROLOPERATIVO_ID = CR.ROLOPERATIVO_ID "); + sqlSb.append(" AND RO.DIAGRAMAAUTOBUS_ID = DA.DIAGRAMAAUTOBUS_ID "); + sqlSb.append(" AND TF.CLASESERVICIO_ID = CR.CLASESERVICIO_ID "); + sqlSb.append(" AND TR.ORIGEN_ID = CR.ORIGEN_ID "); + sqlSb.append(" AND TR.DESTINO_ID = CR.DESTINO_ID "); + + if (!parametros.get("SOMAR_KM_RODADOS_POR").equals("SEQUENCIA")) { + sqlSb.append(" AND RC.RUTA_ID = RT.RUTA_ID "); + sqlSb.append(" AND RC.TRAMO_ID = TR.TRAMO_ID "); + sqlSb.append(" AND RC.ACTIVO = 1 "); + } + + sqlSb.append(" AND TF.MARCA_ID = CR.MARCA_ID "); + sqlSb.append(" AND TF.RUTA_ID = CR.RUTA_ID "); + sqlSb.append(" AND TF.TRAMO_ID = TR.TRAMO_ID "); + sqlSb.append(" AND TF.STATUSTARIFA = 'A' "); + sqlSb.append(" AND TF.ACTIVO = 1 "); + sqlSb.append(" AND BL.MOTIVOCANCELACION_ID IS NULL "); + sqlSb.append(" AND BL.INDSTATUSOPERACION = 'F' "); + sqlSb.append(" AND TF.VIGENCIATARIFA_ID = VT.VIGENCIATARIFA_ID "); + sqlSb.append(" AND VT.ACTIVO = 1 "); + sqlSb.append(" AND BL.CATEGORIA_ID NOT IN (3, :CRIANCA_ID) "); + sqlSb.append(" AND CR.FECCORRIDA BETWEEN VT.FECINICIOVIGENCIA AND VT.FECFINVIGENCIA "); + sqlSb.append(" AND CR.FECCORRIDA BETWEEN TO_DATE(:DATA_INICIAL, 'DD/MM/YY hh24:mi:ss') AND TO_DATE(:DATA_FINAL, 'DD/MM/YY hh24:mi:ss') "); + sqlSb.append(" AND CR.ACTIVO = 1 "); + sqlSb.append(" AND BL.ACTIVO = 1 "); + sqlSb.append(" AND EI.EMPRESA_ID = CR.EMPRESACORRIDA_ID AND CO.ESTADO_ID = EI.ESTADO_ID and EI.ACTIVO = 1"); + sqlSb.append(" GROUP BY CS.CVECLASE, "); + sqlSb.append(" RT.RUTA_ID, "); + sqlSb.append(" RT.NUMRUTA, "); + sqlSb.append(" CR.FECCORRIDA, "); + sqlSb.append(" CR.CORRIDA_ID, "); + sqlSb.append(" RT.DESCRUTA, "); + sqlSb.append(" TF.PRECIO, "); + sqlSb.append(" DA.CANTASIENTOS, "); + sqlSb.append(" RO.ROLOPERATIVO_ID, "); + sqlSb.append(" GR.DESCGRUPO, "); + sqlSb.append(" CO.ESTADO_ID, "); + sqlSb.append(" CD.ESTADO_ID, "); + sqlSb.append(" TR.CANTKMREAL, "); + sqlSb.append(" RT.INDSENTIDOIDA, EI.ICMS) TAB1 "); + sqlSb.append(" GROUP BY TAB1.RUTA_ID,TAB1.INDSENTIDOIDA,TAB1.NUMRUTA,TAB1.FECCORRIDA,TAB1.DESCRUTA, "); + sqlSb.append(" TAB1.TARIFA,TAB1.ASSENTOS,TAB1.ROLOPERATIVO_ID,TAB1.INTERESTADUAL, "); + sqlSb.append(" TAB1.GRUPO_LINHA,TAB1.EXTENSAO_KM,TAB1.RECEITA_SEGURO,TAB1.RECEITA_BAGAGEM, "); + sqlSb.append(" TAB1.RECEITA_SEGURO_OUTROS,TAB1.RECEITA_TARIFA,TAB1.RECEITA_PEDAGIO,TAB1.RECEITA_EMBARQUE, "); + sqlSb.append(" TAB1.PASSAGEIROS,TAB1.VIAGENS_EXTRA,TAB1.VIAGENS,TAB1.CVE_CLASE_SERVICIO, TAB1.KM_REAL, TAB1.CORRIDA_ID, TAB1.ICMS, TAB1.TARIFAMAIOR "); + sqlSb.append(" ) TAB "); + sqlSb.append(" GROUP BY TAB.RUTA_ID, TAB.NUMRUTA, TAB.DESCRUTA, TAB.TARIFA, TAB.ASSENTOS, TAB.ROLOPERATIVO_ID, "); + sqlSb.append(" TAB.INTERESTADUAL, TAB.GRUPO_LINHA, TAB.EXTENSAO_KM, TAB.CVE_CLASE_SERVICIO, TAB.INDSENTIDOIDA, TAB.ICMS, TAB.TARIFAMAIOR) SUB "); + sqlSb.append(" WHERE "); + sqlSb.append(" (DECODE(NVL(SUB.VIAGENS_TOTAL,0), 0, 1, NVL(SUB.VIAGENS_TOTAL,0)) != 0) "); + sqlSb.append(" AND DECODE(NVL(SUB.VIAGENS_TOTAL,0), 0, 1, NVL(SUB.VIAGENS_TOTAL,0)) != 0 "); + sqlSb.append(" AND DECODE(NVL(SUB.KM_RODADO,0), 0, 1, NVL(SUB.KM_RODADO,0)) != 0 "); + sqlSb.append(" AND DECODE(NVL(SUB.VIAGENS_TOTAL,0), 0, 1, NVL(SUB.VIAGENS_TOTAL,0)) != 0 "); + sqlSb.append(" AND DECODE(NVL(SUB.VIAGENS_TOTAL,0), 0, 1, NVL(SUB.VIAGENS_TOTAL,0)) != 0 "); + sqlSb.append(" AND DECODE(NVL(SUB.TARIFA,0), 0, 1, NVL(SUB.TARIFA,0)) != 0 "); + sqlSb.append(" AND (NVL(SUB.ASSENTOS,0) * NVL(SUB.KM_RODADO,0)) != 0 "); + sqlSb.append(" ORDER BY SUB.DESCRUTA, SUB.INDSENTIDOIDA, SUB.ASSENTOS, SUB.TARIFA "); + return sqlSb.toString(); + } + + public void setLsDadosRelatorio(List lsDadosRelatorio) { + this.setCollectionDataSource(new JRBeanCollectionDataSource(lsDadosRelatorio)); + this.lsDadosRelatorio = lsDadosRelatorio; + } + private String buscarConstante(String nomeConstante) { + ConstanteService constanteService = (ConstanteService) AppContext.getApplicationContext().getBean("constanteService"); + return constanteService.buscarPorNomeConstante(nomeConstante).getValorconstante(); + } + + private BigDecimal calcularICMS(BigDecimal receitaTotal, BigDecimal ICMS) { + if(receitaTotal != null && MoneyHelper.isMaior(receitaTotal, BigDecimal.ZERO)) { + return MoneyHelper.getValorDescontadoPercentual(receitaTotal, ICMS); + } + return BigDecimal.ZERO; + } + +} diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioDadosConsolidadosCeturb_es.properties b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioDadosConsolidadosCeturb_es.properties new file mode 100644 index 000000000..5df1ab735 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioDadosConsolidadosCeturb_es.properties @@ -0,0 +1,16 @@ +#geral +msg.noData=Não foi possivel obter dados com os parâmetros informados. + + +#Labels cabeçalho +cabecalho.relatorio=Reporte: +cabecalho.periodo=Period Viagens: +cabecalho.periodoA=à +cabecalho.dataHora=Data/Hora: +cabecalho.impressorPor=Impressor por: +cabecalho.pagina=Página +cabecalho.de=de +cabecalho.filtros=Filtros: + +rodape.pagina=Página +rodape.de=de \ No newline at end of file diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioDadosConsolidadosCeturb_pt_BR.properties b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioDadosConsolidadosCeturb_pt_BR.properties new file mode 100644 index 000000000..b0ecd266c --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/internacionalizacao/RelatorioDadosConsolidadosCeturb_pt_BR.properties @@ -0,0 +1,16 @@ +#geral +msg.noData=Não foi possivel obter dados com os parâmetros informados. + + +#Labels cabeçalho +cabecalho.relatorio=Relatório: +cabecalho.periodo=Período Viagens: +cabecalho.periodoA=à +cabecalho.dataHora=Data/Hora: +cabecalho.impressorPor=Impressor por: +cabecalho.pagina=Página +cabecalho.de=de +cabecalho.filtros=Filtros: + +rodape.pagina=Página +rodape.de=de \ No newline at end of file diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioDadosConsolidadosCeturb.jasper b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioDadosConsolidadosCeturb.jasper new file mode 100644 index 000000000..c05e61f94 Binary files /dev/null and b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioDadosConsolidadosCeturb.jasper differ diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioDadosConsolidadosCeturb.jrxml b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioDadosConsolidadosCeturb.jrxml new file mode 100644 index 000000000..7e8c029dc --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/templates/RelatorioDadosConsolidadosCeturb.jrxml @@ -0,0 +1,395 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/utilitarios/RelatorioDadosConsolidadosCeturbBean.java b/src/java/com/rjconsultores/ventaboletos/relatorios/utilitarios/RelatorioDadosConsolidadosCeturbBean.java new file mode 100644 index 000000000..06c37e814 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/utilitarios/RelatorioDadosConsolidadosCeturbBean.java @@ -0,0 +1,378 @@ +package com.rjconsultores.ventaboletos.relatorios.utilitarios; + +import java.math.BigDecimal; +import java.util.Date; + +public class RelatorioDadosConsolidadosCeturbBean implements Comparable{ + + private int INDSENTIDOIDA; + private BigDecimal RUTA_ID; + private BigDecimal RUTA_ID_VOLTA; + private String NUMRUTA; + private String PREFIXO; + private String DESCRUTA; + private String INTERESTADUAL; + private String GRUPO_LINHA; + private BigDecimal EXTENSAO_KM; + private BigDecimal RECEITA_SEGURO; + private BigDecimal RECEITA_BAGAGEM; + private BigDecimal RECEITA_SEGURO_OUTROS; + private BigDecimal RECEITA_TARIFA; + private BigDecimal RECEITA_TARIFA_SEGURO; + private BigDecimal RECEITA_PEDAGIO; + private BigDecimal RECEITA_EMBARQUE; + private BigDecimal PASSAGEIROS; + private BigDecimal VIAGENS_EXTRA; + private BigDecimal VIAGENS; + private String CVE_CLASE_SERVICIO; + private BigDecimal RECEITA_TOTAL; + private BigDecimal VIAGENS_TOTAL; + private BigDecimal KM_RODADO; + private BigDecimal PASSAGEIROS_EQUIVALENTE; + private BigDecimal PASSAGEIROS_MPA; + private BigDecimal PASSAGEIROS_MPE; + private BigDecimal RECEITA_KM; + private BigDecimal RECEITA_VIAGEM; + private BigDecimal PAX_KM; + private BigDecimal PAX_OFERTADO; + private String DESC_CLASE_SERVICIO; + private BigDecimal ASSENTOS; + + private Integer ROLOPERATIVO_ID; + private Date FECCORRIDA; + private BigDecimal TARIFA; + private BigDecimal EQ; + private BigDecimal IAP; + private BigDecimal ICMS; + private BigDecimal TARIFA_MAIOR; + + + + public BigDecimal getRUTA_ID_VOLTA() { + return RUTA_ID_VOLTA; + } + + public void setRUTA_ID_VOLTA(BigDecimal rUTA_ID_VOLTA) { + RUTA_ID_VOLTA = rUTA_ID_VOLTA; + } + + public BigDecimal getRUTA_ID() { + return RUTA_ID; + } + + public void setRUTA_ID(BigDecimal rUTA_ID) { + RUTA_ID = rUTA_ID; + } + + public String getNUMRUTA() { + return NUMRUTA; + } + + public void setNUMRUTA(String nUMRUTA) { + NUMRUTA = nUMRUTA; + } + + public String getPREFIXO() { + return PREFIXO; + } + + public void setPREFIXO(String pREFIXO) { + PREFIXO = pREFIXO; + } + + public String getDESCRUTA() { + return DESCRUTA; + } + + public void setDESCRUTA(String dESCRUTA) { + DESCRUTA = dESCRUTA; + } + + public String getINTERESTADUAL() { + return INTERESTADUAL; + } + + public void setINTERESTADUAL(String iNTERESTADUAL) { + INTERESTADUAL = iNTERESTADUAL; + } + + public String getGRUPO_LINHA() { + return GRUPO_LINHA; + } + + public void setGRUPO_LINHA(String gRUPO_LINHA) { + GRUPO_LINHA = gRUPO_LINHA; + } + + public BigDecimal getEXTENSAO_KM() { + return EXTENSAO_KM; + } + + public void setEXTENSAO_KM(BigDecimal eXTENSAO_KM) { + EXTENSAO_KM = eXTENSAO_KM; + } + + public BigDecimal getRECEITA_SEGURO() { + return RECEITA_SEGURO; + } + + public void setRECEITA_SEGURO(BigDecimal rECEITA_SEGURO) { + RECEITA_SEGURO = rECEITA_SEGURO; + } + + public BigDecimal getRECEITA_BAGAGEM() { + return RECEITA_BAGAGEM; + } + + public void setRECEITA_BAGAGEM(BigDecimal rECEITA_BAGAGEM) { + RECEITA_BAGAGEM = rECEITA_BAGAGEM; + } + + public BigDecimal getRECEITA_SEGURO_OUTROS() { + return RECEITA_SEGURO_OUTROS; + } + + public void setRECEITA_SEGURO_OUTROS(BigDecimal rECEITA_SEGURO_OUTROS) { + RECEITA_SEGURO_OUTROS = rECEITA_SEGURO_OUTROS; + } + + public BigDecimal getRECEITA_TARIFA() { + return RECEITA_TARIFA; + } + + public void setRECEITA_TARIFA(BigDecimal rECEITA_TARIFA) { + RECEITA_TARIFA = rECEITA_TARIFA; + } + + public BigDecimal getRECEITA_PEDAGIO() { + return RECEITA_PEDAGIO; + } + + public void setRECEITA_PEDAGIO(BigDecimal rECEITA_PEDAGIO) { + RECEITA_PEDAGIO = rECEITA_PEDAGIO; + } + + public BigDecimal getRECEITA_EMBARQUE() { + return RECEITA_EMBARQUE; + } + + public void setRECEITA_EMBARQUE(BigDecimal rECEITA_EMBARQUE) { + RECEITA_EMBARQUE = rECEITA_EMBARQUE; + } + + public BigDecimal getPASSAGEIROS() { + return PASSAGEIROS; + } + + public void setPASSAGEIROS(BigDecimal pASSAGEIROS) { + PASSAGEIROS = pASSAGEIROS; + } + + public BigDecimal getVIAGENS_EXTRA() { + return VIAGENS_EXTRA; + } + + public void setVIAGENS_EXTRA(BigDecimal vIAGENS_EXTRA) { + VIAGENS_EXTRA = vIAGENS_EXTRA; + } + + public BigDecimal getVIAGENS() { + return VIAGENS; + } + + public void setVIAGENS(BigDecimal vIAGENS) { + VIAGENS = vIAGENS; + } + + public String getCVE_CLASE_SERVICIO() { + return CVE_CLASE_SERVICIO; + } + + public void setCVE_CLASE_SERVICIO(String cVE_CLASE_SERVICIO) { + CVE_CLASE_SERVICIO = cVE_CLASE_SERVICIO; + } + + public BigDecimal getRECEITA_TOTAL() { + return RECEITA_TOTAL; + } + + public void setRECEITA_TOTAL(BigDecimal rECEITA_TOTAL) { + RECEITA_TOTAL = rECEITA_TOTAL; + } + + public BigDecimal getVIAGENS_TOTAL() { + return VIAGENS_TOTAL; + } + + public void setVIAGENS_TOTAL(BigDecimal vIAGENS_TOTAL) { + VIAGENS_TOTAL = vIAGENS_TOTAL; + } + + public BigDecimal getKM_RODADO() { + return KM_RODADO; + } + + public void setKM_RODADO(BigDecimal kM_RODADO) { + KM_RODADO = kM_RODADO; + } + + public BigDecimal getPASSAGEIROS_EQUIVALENTE() { + return PASSAGEIROS_EQUIVALENTE; + } + + public void setPASSAGEIROS_EQUIVALENTE(BigDecimal pASSAGEIROS_EQUIVALENTE) { + PASSAGEIROS_EQUIVALENTE = pASSAGEIROS_EQUIVALENTE; + } + + public BigDecimal getPASSAGEIROS_MPA() { + return PASSAGEIROS_MPA; + } + + public void setPASSAGEIROS_MPA(BigDecimal pASSAGEIROS_MPA) { + PASSAGEIROS_MPA = pASSAGEIROS_MPA; + } + + public BigDecimal getPASSAGEIROS_MPE() { + return PASSAGEIROS_MPE; + } + + public void setPASSAGEIROS_MPE(BigDecimal pASSAGEIROS_MPE) { + PASSAGEIROS_MPE = pASSAGEIROS_MPE; + } + + public BigDecimal getRECEITA_KM() { + return RECEITA_KM; + } + + public void setRECEITA_KM(BigDecimal rECEITA_KM) { + RECEITA_KM = rECEITA_KM; + } + + public BigDecimal getRECEITA_VIAGEM() { + return RECEITA_VIAGEM; + } + + public void setRECEITA_VIAGEM(BigDecimal rECEITA_VIAGEM) { + RECEITA_VIAGEM = rECEITA_VIAGEM; + } + + public BigDecimal getPAX_KM() { + return PAX_KM; + } + + public void setPAX_KM(BigDecimal pAX_KM) { + PAX_KM = pAX_KM; + } + + public BigDecimal getPAX_OFERTADO() { + return PAX_OFERTADO; + } + + public void setPAX_OFERTADO(BigDecimal pAX_OFERTADO) { + PAX_OFERTADO = pAX_OFERTADO; + } + + public int getINDSENTIDOIDA() { + return INDSENTIDOIDA; + } + + public void setINDSENTIDOIDA(int iNDSENTIDOIDA) { + INDSENTIDOIDA = iNDSENTIDOIDA; + } + + public String getDESC_CLASE_SERVICIO() { + return DESC_CLASE_SERVICIO; + } + + public void setDESC_CLASE_SERVICIO(String dESC_CLASE_SERVICIO) { + DESC_CLASE_SERVICIO = dESC_CLASE_SERVICIO; + } + + public BigDecimal getRECEITA_TARIFA_SEGURO() { + return RECEITA_TARIFA_SEGURO; + } + + public void setRECEITA_TARIFA_SEGURO(BigDecimal rECEITA_TARIFA_SEGURO) { + RECEITA_TARIFA_SEGURO = rECEITA_TARIFA_SEGURO; + } + + public BigDecimal getASSENTOS() { + return ASSENTOS; + } + + public void setASSENTOS(BigDecimal aSSENTOS) { + ASSENTOS = aSSENTOS; + } + + @Override + public String toString() { + // TODO Auto-generated method stub + return getRUTA_ID() + getDESCRUTA(); + } + + @Override + public int compareTo(RelatorioDadosConsolidadosCeturbBean o) { + if( this == null || o == null) { + return -1; + } + + return this.getPREFIXO().compareTo(o.getPREFIXO()); + } + + public Integer getROLOPERATIVO_ID() { + return ROLOPERATIVO_ID; + } + + public void setROLOPERATIVO_ID(Integer rOLOPERATIVO_ID) { + ROLOPERATIVO_ID = rOLOPERATIVO_ID; + } + + public Date getFECCORRIDA() { + return FECCORRIDA; + } + + public void setFECCORRIDA(Date fECCORRIDA) { + FECCORRIDA = fECCORRIDA; + } + + public BigDecimal getTARIFA() { + return TARIFA; + } + + public void setTARIFA(BigDecimal tARIFA) { + TARIFA = tARIFA; + } + + public BigDecimal getEQ() { + return EQ; + } + + public void setEQ(BigDecimal eQ) { + EQ = eQ; + } + + public BigDecimal getIAP() { + return IAP; + } + + public void setIAP(BigDecimal iAP) { + IAP = iAP; + } + + public BigDecimal getICMS() { + return ICMS; + } + + public void setICMS(BigDecimal iCMS) { + ICMS = iCMS; + } + + public BigDecimal getTARIFA_MAIOR() { + return TARIFA_MAIOR; + } + + public void setTARIFA_MAIOR(BigDecimal tARIFA_MAIOR) { + TARIFA_MAIOR = tARIFA_MAIOR; + } + +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/BusquedaCodigoBarraTrechoController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/BusquedaCodigoBarraTrechoController.java new file mode 100644 index 000000000..e5db47b69 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/BusquedaCodigoBarraTrechoController.java @@ -0,0 +1,250 @@ + +package com.rjconsultores.ventaboletos.web.gui.controladores.catalogos; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import org.apache.commons.lang.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Scope; +import org.springframework.stereotype.Controller; +import org.zkoss.util.resource.Labels; +import org.zkoss.zk.ui.Component; +import org.zkoss.zk.ui.event.Event; +import org.zkoss.zk.ui.event.EventListener; +import org.zkoss.zul.Paging; + +import com.rjconsultores.ventaboletos.entidad.CodigoBarraTrecho; +import com.rjconsultores.ventaboletos.entidad.Custom; +import com.rjconsultores.ventaboletos.entidad.Empresa; +import com.rjconsultores.ventaboletos.entidad.Parada; +import com.rjconsultores.ventaboletos.service.CustomService; +import com.rjconsultores.ventaboletos.service.EmpresaService; +import com.rjconsultores.ventaboletos.utilerias.CustomEnum; +import com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEmpresa; +import com.rjconsultores.ventaboletos.web.utilerias.MyComboboxParada; +import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; +import com.rjconsultores.ventaboletos.web.utilerias.MyListbox; +import com.rjconsultores.ventaboletos.web.utilerias.MyTextbox; +import com.rjconsultores.ventaboletos.web.utilerias.paginacion.HibernateSearchObject; +import com.rjconsultores.ventaboletos.web.utilerias.paginacion.PagedListWrapper; +import com.rjconsultores.ventaboletos.web.utilerias.render.RenderCodigoBarraTrecho; +import com.rjconsultores.ventaboletos.web.utilerias.spring.AppContext; + +@Controller("busquedaCodigoBarraTrechoController") +@Scope("prototype") +public class BusquedaCodigoBarraTrechoController extends MyGenericForwardComposer { + + /** + * + */ + private static final long serialVersionUID = 1L; + @Autowired + private transient PagedListWrapper plwCodigoBarraTrecho; + private MyListbox codigoBarraTrechoList; + private Paging pagingCodigoBarraTrecho; + private MyComboboxEmpresa comboEmpresa; + private MyComboboxParada cmbOrigen; + private MyComboboxParada cmbDestino; + private MyTextbox txtCodTerminal; + private MyTextbox txtCodEmpresa; + private MyTextbox txtCodRuta; + + private List lsEmpresa; + + @Autowired + private EmpresaService empresaService; + + @Override + public void doAfterCompose(Component comp) throws Exception { + + lsEmpresa = empresaService.obtenerTodos(); + + super.doAfterCompose(comp); + + codigoBarraTrechoList.setItemRenderer(new RenderCodigoBarraTrecho()); + codigoBarraTrechoList.addEventListener("onDoubleClick", new EventListener() { + + @Override + public void onEvent(Event event) throws Exception { + CodigoBarraTrecho codigoBarraTrecho = (CodigoBarraTrecho) codigoBarraTrechoList.getSelected(); + verCodigoBarraTrecho(codigoBarraTrecho); + } + }); + + refreshLista(); + } + + @SuppressWarnings({ "unchecked", "rawtypes" }) + private void verCodigoBarraTrecho(CodigoBarraTrecho codigoBarraTrecho) { + if (codigoBarraTrecho == null) { + return; + } + + Map args = new HashMap(); + args.put("codigoBarraTrecho", codigoBarraTrecho); + args.put("codigoBarraTrechoList", codigoBarraTrechoList); + + openWindow("/gui/catalogos/editarCodigoBarraTrecho.zul", Labels.getLabel("editarConfiguracaoCodBarrasTrechoController.title"), args, + MODAL); + } + + private void refreshLista() { + HibernateSearchObject codigoBarraTrechoBusqueda = new HibernateSearchObject( + CodigoBarraTrecho.class, pagingCodigoBarraTrecho.getPageSize()); + + if (comboEmpresa.getSelectedItem() != null) { + Empresa empresa = (Empresa) comboEmpresa.getSelectedItem().getValue(); + codigoBarraTrechoBusqueda.addFilterEqual("empresa.empresaId", empresa.getEmpresaId()); + } + + if (cmbOrigen.getSelectedItem() != null) { + Parada origen = (Parada) cmbOrigen.getSelectedItem().getValue(); + codigoBarraTrechoBusqueda.addFilterEqual("origen.paradaId", origen.getParadaId()); + } + + if (cmbDestino.getSelectedItem() != null) { + Parada destino = (Parada) cmbDestino.getSelectedItem().getValue(); + codigoBarraTrechoBusqueda.addFilterEqual("destino.paradaId", destino.getParadaId()); + } + + if (StringUtils.isNotBlank(txtCodTerminal.getText())) { + codigoBarraTrechoBusqueda.addFilterLike("codTerminal", txtCodTerminal.getText()); + } + + if (StringUtils.isNotBlank(txtCodEmpresa.getText())) { + codigoBarraTrechoBusqueda.addFilterLike("codEmpresa", txtCodEmpresa.getText()); + } + + if (StringUtils.isNotBlank(txtCodRuta.getText())) { + codigoBarraTrechoBusqueda.addFilterLike("codRuta", txtCodRuta.getText()); + } + + codigoBarraTrechoBusqueda.addFilterEqual(ACTIVO, Boolean.TRUE); + + codigoBarraTrechoBusqueda.addSortAsc("empresa"); + + plwCodigoBarraTrecho.init(codigoBarraTrechoBusqueda, codigoBarraTrechoList, pagingCodigoBarraTrecho); + + } + + public void onClick$btnPesquisa(Event ev) { + refreshLista(); + } + + public void onClick$btnRefresh(Event ev) { + refreshLista(); + } + + public void onClick$btnNovo(Event ev) { + verCodigoBarraTrecho(new CodigoBarraTrecho()); + } + + public void onClick$btnPadrao(Event ev) { + CustomService customService = (CustomService) AppContext.getApplicationContext().getBean("customService"); + Custom custom = customService.buscar(CustomEnum.PADRAO_CODIGO_BARRA_TRECHO.getDescricao()); + + if (custom == null) { + return; + } + + Map args = new HashMap(); + args.put("custom", custom); + args.put("customList", new MyListbox()); + + openWindow("/gui/catalogos/editarCustom.zul", + Labels.getLabel("customController.window.title"), args, MODAL); + + } + + public PagedListWrapper getPlwCodigoBarraTrecho() { + return plwCodigoBarraTrecho; + } + + public void setPlwCodigoBarraTrecho(PagedListWrapper plwCodigoBarraTrecho) { + this.plwCodigoBarraTrecho = plwCodigoBarraTrecho; + } + + public MyListbox getCodigoBarraTrechoList() { + return codigoBarraTrechoList; + } + + public void setCodigoBarraTrechoList(MyListbox codigoBarraTrechoList) { + this.codigoBarraTrechoList = codigoBarraTrechoList; + } + + public Paging getPagingCodigoBarraTrecho() { + return pagingCodigoBarraTrecho; + } + + public void setPagingCodigoBarraTrecho(Paging pagingCodigoBarraTrecho) { + this.pagingCodigoBarraTrecho = pagingCodigoBarraTrecho; + } + + public MyComboboxEmpresa getComboEmpresa() { + return comboEmpresa; + } + + public void setComboEmpresa(MyComboboxEmpresa comboEmpresa) { + this.comboEmpresa = comboEmpresa; + } + + public MyComboboxParada getCmbDestino() { + return cmbDestino; + } + + public void setCmbDestino(MyComboboxParada cmbDestino) { + this.cmbDestino = cmbDestino; + } + + public MyTextbox getTxtCodTerminal() { + return txtCodTerminal; + } + + public void setTxtCodTerminal(MyTextbox txtCodTerminal) { + this.txtCodTerminal = txtCodTerminal; + } + + public MyTextbox getTxtCodEmpresa() { + return txtCodEmpresa; + } + + public void setTxtCodEmpresa(MyTextbox txtCodEmpresa) { + this.txtCodEmpresa = txtCodEmpresa; + } + + public MyTextbox getTxtCodRuta() { + return txtCodRuta; + } + + public void setTxtCodRuta(MyTextbox txtCodRuta) { + this.txtCodRuta = txtCodRuta; + } + + public List getLsEmpresa() { + return lsEmpresa; + } + + public void setLsEmpresa(List lsEmpresa) { + this.lsEmpresa = lsEmpresa; + } + + public EmpresaService getEmpresaService() { + return empresaService; + } + + public void setEmpresaService(EmpresaService empresaService) { + this.empresaService = empresaService; + } + + public MyComboboxParada getCmbOrigen() { + return cmbOrigen; + } + + public void setCmbOrigen(MyComboboxParada cmbOrigen) { + this.cmbOrigen = cmbOrigen; + } + + +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarCodigoBarraTrechoController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarCodigoBarraTrechoController.java new file mode 100644 index 000000000..0f58a8edd --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/catalogos/EditarCodigoBarraTrechoController.java @@ -0,0 +1,231 @@ + +package com.rjconsultores.ventaboletos.web.gui.controladores.catalogos; + +import java.util.List; + +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Scope; +import org.springframework.stereotype.Controller; +import org.zkoss.util.resource.Labels; +import org.zkoss.zhtml.Messagebox; +import org.zkoss.zk.ui.Component; +import org.zkoss.zk.ui.Executions; +import org.zkoss.zk.ui.event.Event; +import org.zkoss.zul.Button; + +import com.rjconsultores.ventaboletos.entidad.CodigoBarraTrecho; +import com.rjconsultores.ventaboletos.entidad.Empresa; +import com.rjconsultores.ventaboletos.entidad.Parada; +import com.rjconsultores.ventaboletos.service.CodigoBarraTrechoService; +import com.rjconsultores.ventaboletos.service.EmpresaService; +import com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEmpresa; +import com.rjconsultores.ventaboletos.web.utilerias.MyComboboxParada; +import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; +import com.rjconsultores.ventaboletos.web.utilerias.MyListbox; +import com.rjconsultores.ventaboletos.web.utilerias.MyTextbox; + +@Controller("editarCodigoBarraTrechoController") +@Scope("prototype") +public class EditarCodigoBarraTrechoController extends MyGenericForwardComposer { + + private static final long serialVersionUID = 1L; + + @Autowired + private EmpresaService empresaService; + + @Autowired + private CodigoBarraTrechoService codigoBarraTrechoService; + + private CodigoBarraTrecho codigoBarraTrecho; + + private MyListbox codigoBarraTrechoList; + private List lsEmpresa; + private List lsParada; + + private MyComboboxEmpresa cmbEmpresa; + private MyComboboxParada cmbOrigen; + private MyComboboxParada cmbDestino; + private MyTextbox txtCodTerminal; + private MyTextbox txtCodEmpresa; + private MyTextbox txtCodRuta; + private Button btnApagar; + + private static Logger log = LogManager.getLogger(EditarCodigoBarraTrechoController.class); + + @Override + public void doAfterCompose(Component comp) throws Exception { + super.doAfterCompose(comp); + + codigoBarraTrecho = (CodigoBarraTrecho) Executions.getCurrent().getArg().get("codigoBarraTrecho"); + codigoBarraTrechoList = (MyListbox) Executions.getCurrent().getArg().get("codigoBarraTrechoList"); + + if (codigoBarraTrecho != null && codigoBarraTrecho.getCodigoBarraId() != null) { + cmbEmpresa.setText(codigoBarraTrecho.getEmpresa().getNombempresa()); + cmbOrigen.setComboItemByParada(codigoBarraTrecho.getOrigen()); + cmbDestino.setComboItemByParada(codigoBarraTrecho.getDestino()); + txtCodTerminal.setText(codigoBarraTrecho.getCodTerminal()); + txtCodEmpresa.setText(codigoBarraTrecho.getCodEmpresa()); + txtCodRuta.setText(codigoBarraTrecho.getCodRuta()); + } else { + btnApagar.setVisible(false); + } + + } + + public void onClick$btnSalvar(Event ev) throws InterruptedException { + try { + + codigoBarraTrecho.setActivo(true); + codigoBarraTrecho.setEmpresa((Empresa) cmbEmpresa.getSelectedItem().getValue()); + codigoBarraTrecho.setOrigen((Parada) cmbOrigen.getSelectedItem().getValue()); + codigoBarraTrecho.setDestino((Parada) cmbDestino.getSelectedItem().getValue()); + codigoBarraTrecho.setCodTerminal(txtCodTerminal.getText()); + codigoBarraTrecho.setCodEmpresa(txtCodEmpresa.getText()); + codigoBarraTrecho.setCodRuta(txtCodRuta.getText()); + + codigoBarraTrechoList.removeItem(codigoBarraTrecho); + + if (codigoBarraTrecho.getCodigoBarraId() == null) { + codigoBarraTrechoList.addItemNovo(codigoBarraTrechoService.suscribir(codigoBarraTrecho)); + } else { + codigoBarraTrechoList.addItemNovo(codigoBarraTrechoService.actualizacion(codigoBarraTrecho)); + } + + closeWindow(); + } catch (Exception e) { + log.error(e.getLocalizedMessage(), e); + } + + } + + public void onClick$btnApagar(Event ev) throws InterruptedException { + try { + int resp = Messagebox.show(Labels.getLabel("editarConfiguracaoCodBarrasTrechoController.MSG.borrarPergunta"), + Labels.getLabel("editarConfiguracaoCodBarrasTrechoController.title"), Messagebox.YES | Messagebox.NO, + Messagebox.QUESTION); + + if (resp == Messagebox.YES) { + + codigoBarraTrechoService.borrar(codigoBarraTrecho); + + Messagebox.show(Labels.getLabel("editarConfiguracaoCodBarrasTrechoController.MSG.borrarOK"), + Labels.getLabel("editarConfiguracaoCodBarrasTrechoController.title"), Messagebox.OK, + Messagebox.INFORMATION); + + codigoBarraTrechoList.removeItem(codigoBarraTrecho); + + closeWindow(); + } + } catch (Exception e) { + log.error(e.getLocalizedMessage(), e); + } + + } + + public EmpresaService getEmpresaService() { + return empresaService; + } + + public void setEmpresaService(EmpresaService empresaService) { + this.empresaService = empresaService; + } + + public CodigoBarraTrechoService getCodigoBarraTrechoService() { + return codigoBarraTrechoService; + } + + public void setCodigoBarraTrechoService(CodigoBarraTrechoService codigoBarraTrechoService) { + this.codigoBarraTrechoService = codigoBarraTrechoService; + } + + public CodigoBarraTrecho getCodigoBarraTrecho() { + return codigoBarraTrecho; + } + + public void setCodigoBarraTrecho(CodigoBarraTrecho codigoBarraTrecho) { + this.codigoBarraTrecho = codigoBarraTrecho; + } + + public MyListbox getCodigoBarraTrechoList() { + return codigoBarraTrechoList; + } + + public void setCodigoBarraTrechoList(MyListbox codigoBarraTrechoList) { + this.codigoBarraTrechoList = codigoBarraTrechoList; + } + + public List getLsEmpresa() { + return lsEmpresa; + } + + public void setLsEmpresa(List lsEmpresa) { + this.lsEmpresa = lsEmpresa; + } + + public List getLsParada() { + return lsParada; + } + + public void setLsParada(List lsParada) { + this.lsParada = lsParada; + } + + public MyComboboxEmpresa getCmbEmpresa() { + return cmbEmpresa; + } + + public void setCmbEmpresa(MyComboboxEmpresa cmbEmpresa) { + this.cmbEmpresa = cmbEmpresa; + } + + public MyComboboxParada getCmbOrigen() { + return cmbOrigen; + } + + public void setCmbOrigen(MyComboboxParada cmbOrigen) { + this.cmbOrigen = cmbOrigen; + } + + public MyComboboxParada getCmbDestino() { + return cmbDestino; + } + + public void setCmbDestino(MyComboboxParada cmbDestino) { + this.cmbDestino = cmbDestino; + } + + public MyTextbox getTxtCodTerminal() { + return txtCodTerminal; + } + + public void setTxtCodTerminal(MyTextbox txtCodTerminal) { + this.txtCodTerminal = txtCodTerminal; + } + + public MyTextbox getTxtCodEmpresa() { + return txtCodEmpresa; + } + + public void setTxtCodEmpresa(MyTextbox txtCodEmpresa) { + this.txtCodEmpresa = txtCodEmpresa; + } + + public MyTextbox getTxtCodRuta() { + return txtCodRuta; + } + + public void setTxtCodRuta(MyTextbox txtCodRuta) { + this.txtCodRuta = txtCodRuta; + } + + public Button getBtnApagar() { + return btnApagar; + } + + public void setBtnApagar(Button btnApagar) { + this.btnApagar = btnApagar; + } + +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioDadosConsolidadosCeturbController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioDadosConsolidadosCeturbController.java new file mode 100644 index 000000000..04d2ef2cd --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/relatorios/RelatorioDadosConsolidadosCeturbController.java @@ -0,0 +1,205 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ +package com.rjconsultores.ventaboletos.web.gui.controladores.relatorios; + +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import javax.sql.DataSource; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Scope; +import org.springframework.stereotype.Controller; +import org.zkoss.util.resource.Labels; +import org.zkoss.zk.ui.Component; +import org.zkoss.zk.ui.event.Event; +import org.zkoss.zul.Checkbox; +import org.zkoss.zul.Comboitem; +import org.zkoss.zul.Datebox; +import org.zkoss.zul.Radio; + +import com.rjconsultores.ventaboletos.entidad.Empresa; +import com.rjconsultores.ventaboletos.entidad.GrupoRuta; +import com.rjconsultores.ventaboletos.entidad.Ruta; +import com.rjconsultores.ventaboletos.relatorios.impl.RelatorioDadosConsolidadosCeturb; +import com.rjconsultores.ventaboletos.relatorios.impl.RelatorioResumoLinhas; +import com.rjconsultores.ventaboletos.relatorios.impl.RelatorioResumoLinhasAnalitico; +import com.rjconsultores.ventaboletos.relatorios.impl.RelatorioResumoLinhasAnaliticoSimplificadoSumarizado; +import com.rjconsultores.ventaboletos.relatorios.impl.RelatorioResumoLinhasAnaliticoSumarizado; +import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio; +import com.rjconsultores.ventaboletos.service.ConstanteService; +import com.rjconsultores.ventaboletos.service.EmpresaService; +import com.rjconsultores.ventaboletos.service.GrupoRutaService; +import com.rjconsultores.ventaboletos.service.RutaService; +import com.rjconsultores.ventaboletos.utilerias.DateUtil; +import com.rjconsultores.ventaboletos.utilerias.UsuarioLogado; +import com.rjconsultores.ventaboletos.web.utilerias.MyComboboxEstandar; +import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; +import com.rjconsultores.ventaboletos.web.utilerias.spring.AppContext; + +/** + * + * @author Administrador + */ +@Controller("relatorioDadosConsolidadosCeturbController") +@Scope("prototype") +public class RelatorioDadosConsolidadosCeturbController extends MyGenericForwardComposer { + + private static final long serialVersionUID = 1L; + + @Autowired + private DataSource dataSourceRead; + @Autowired + private EmpresaService empresaService; + @Autowired + private RutaService rutaService; + @Autowired + private GrupoRutaService grupoRutaService; + + private List lsRuta; + private List lsEmpresa; + private List lsGrupoRuta; + + private Datebox fecCorridaIni; + private Datebox fecCorridaFin; + private MyComboboxEstandar cmbRuta; + private MyComboboxEstandar cmbEmpresa; + private MyComboboxEstandar cmbGrupoRuta; + private Radio rdAnalitico; + private Radio rdSequencia; + private Checkbox chcSumarizar; + private Checkbox chcSimplificadoSumarizado; + private static String CONSTANTE_GRATUIDADE_CRIANCA; + + + + public void onClick$btnExecutarRelatorio(Event ev) throws Exception { + executarRelatorio(); + } + + /** + * @throws Exception + * + */ + @SuppressWarnings({ "rawtypes", "unchecked" }) + private void executarRelatorio() throws Exception { + + Relatorio relatorio; + Map parametros = new HashMap(); + StringBuilder filtro = new StringBuilder(); + + parametros.put("DATA_INICIAL", this.fecCorridaIni.getValue()); + parametros.put("DATA_FINAL", DateUtil.fimFecha(this.fecCorridaFin.getValue())); + parametros.put("NOME_RELATORIO", Labels.getLabel("relatorioDadosConsolidadosCeturbController.window.title")); + parametros.put("USUARIO", UsuarioLogado.getUsuarioLogado().getUsuarioId().toString()); + parametros.put("NOME_USUARIO", UsuarioLogado.getUsuarioLogado().getNombusuario()); + parametros.put("CRIANCA_ID", buscarConstante("GRATUIDADE_CRIANCA")); + + Comboitem itemRuta = cmbRuta.getSelectedItem(); + + filtro.append("Linha: "); + if (itemRuta != null) { + Ruta ruta = (Ruta) itemRuta.getValue(); + parametros.put("RUTA_ID", ruta.getRutaId()); + filtro.append(ruta.getDescruta() + ";"); + } + else + filtro.append("Todas;"); + + Comboitem itemGrupoRuta = cmbGrupoRuta.getSelectedItem(); + + filtro.append("Grupo de Linha: "); + if (itemGrupoRuta != null) { + GrupoRuta grupoRuta = (GrupoRuta) itemGrupoRuta.getValue(); + parametros.put("GRUPORUTA_ID", grupoRuta.getGrupoRutaId()); + filtro.append(grupoRuta.getDescGrupo()); + } + else + filtro.append("Todos;"); + + Comboitem itemEmpresa = cmbEmpresa.getSelectedItem(); + if (itemEmpresa != null) { + Empresa empresa = (Empresa) itemEmpresa.getValue(); + parametros.put("EMPRESA_ID", empresa.getEmpresaId()); + parametros.put("EMPRESA", empresa.getNombempresa()); + filtro.append(" EMPRESA: " + empresa.getNombempresa()); + } + + SimpleDateFormat df = new SimpleDateFormat("dd/MM/yyyy"); + filtro.append(" DATA: " + df.format(new Date())); + parametros.put("DATA", new Date()); + parametros.put("SOMAR_KM_RODADOS_POR", rdSequencia.isChecked() ? "SEQUENCIA" : "COMBINACAO"); + + + parametros.put("FILTROS", filtro.toString()); + + String tituloRelatorio = "relatorioDadosConsolidadosCeturbController.window.title"; + relatorio = new RelatorioDadosConsolidadosCeturb(parametros, dataSourceRead.getConnection()); + Map args = new HashMap(); + args.put("relatorio", relatorio); + + openWindow("/component/reportView.zul", + Labels.getLabel(tituloRelatorio), args, MODAL); + + } + + @Override + public void doAfterCompose(Component comp) throws Exception { + setLsRuta(rutaService.obtenerTodos()); + lsEmpresa = empresaService.obtenerTodos(); + lsGrupoRuta = grupoRutaService.obtenerTodos(); + + super.doAfterCompose(comp); + } + + private String buscarConstante(String nomeConstante) { + ConstanteService constanteService = (ConstanteService) AppContext.getApplicationContext().getBean("constanteService"); + return constanteService.buscarPorNomeConstante(nomeConstante).getValorconstante(); + } + + public List getLsRuta() { + return lsRuta; + } + + public void setLsRuta(List lsRuta) { + this.lsRuta = lsRuta; + } + + public MyComboboxEstandar getCmbRuta() { + return cmbRuta; + } + + public void setCmbRuta(MyComboboxEstandar cmbRuta) { + this.cmbRuta = cmbRuta; + } + + public List getLsEmpresa() { + return lsEmpresa; + } + + public void setLsEmpresa(List lsEmpresa) { + this.lsEmpresa = lsEmpresa; + } + + public List getLsGrupoRuta() { + return lsGrupoRuta; + } + + public void setLsGrupoRuta(List lsGrupoRuta) { + this.lsGrupoRuta = lsGrupoRuta; + } + + public Checkbox getChcSimplificadoSumarizado() { + return chcSimplificadoSumarizado; + } + + public void setChcSimplificadoSumarizado(Checkbox chcSimplificadoSumarizado) { + this.chcSimplificadoSumarizado = chcSimplificadoSumarizado; + } + +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/catalogos/ItemMenuCodigoBarraTrecho.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/catalogos/ItemMenuCodigoBarraTrecho.java new file mode 100644 index 000000000..02fe482ab --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/catalogos/ItemMenuCodigoBarraTrecho.java @@ -0,0 +1,25 @@ +package com.rjconsultores.ventaboletos.web.utilerias.menu.item.catalogos; + +import org.zkoss.util.resource.Labels; + +import com.rjconsultores.ventaboletos.web.utilerias.PantallaUtileria; +import com.rjconsultores.ventaboletos.web.utilerias.menu.DefaultItemMenuSistema; + +public class ItemMenuCodigoBarraTrecho extends DefaultItemMenuSistema { + + public ItemMenuCodigoBarraTrecho() { + super("indexController.mniConfCodBarrasTrecho.label"); + } + + @Override + public String getClaveMenu() { + return "COM.RJCONSULTORES.ADMINISTRACION.GUI.CATALOGOS.CODIGOBARRATRECHO"; + } + + @Override + public void ejecutar() { + PantallaUtileria.openWindow("/gui/catalogos/busquedaCodigoBarraTrecho.zul", + Labels.getLabel("editarConfiguracaoCodBarrasTrechoController.title"), getArgs(), desktop); + } + +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/ItemMenuRelatorioDadosConsolidadosCeturb.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/ItemMenuRelatorioDadosConsolidadosCeturb.java new file mode 100644 index 000000000..db321b86d --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/relatorios/ItemMenuRelatorioDadosConsolidadosCeturb.java @@ -0,0 +1,24 @@ +package com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios; + +import org.zkoss.util.resource.Labels; + +import com.rjconsultores.ventaboletos.web.utilerias.PantallaUtileria; +import com.rjconsultores.ventaboletos.web.utilerias.menu.DefaultItemMenuSistema; + +public class ItemMenuRelatorioDadosConsolidadosCeturb extends DefaultItemMenuSistema { + + public ItemMenuRelatorioDadosConsolidadosCeturb() { + super("indexController.mniRelatorioDadosConsolidadosCeturb.label"); + } + + @Override + public String getClaveMenu() { + return "COM.RJCONSULTORES.ADMINISTRACION.GUI.RELATORIOS.MENU.DADOSCONSOLIDADOCETURB"; + } + + @Override + public void ejecutar() { + PantallaUtileria.openWindow("/gui/relatorios/filtroRelatorioDadosConsolidadosCeturb.zul", + Labels.getLabel("indexController.mniRelatorioDadosConsolidadosCeturb.label"), getArgs() ,desktop); + } +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/menu_original.properties b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/menu_original.properties index f5c89ceb1..43b072d27 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/menu_original.properties +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/menu_original.properties @@ -35,6 +35,7 @@ catalogos.tipoInformativoComissao=com.rjconsultores.ventaboletos.web.utilerias.m catalogos.regionMetropolitana=com.rjconsultores.ventaboletos.web.utilerias.menu.item.catalogos.ItemMenuRegionMetropolitana catalogos.contasMD=com.rjconsultores.ventaboletos.web.utilerias.menu.item.catalogos.ItemMenuBusquedaContasMD catalogos.impresionLayout=com.rjconsultores.ventaboletos.web.utilerias.menu.item.catalogos.ItemMenuImpresionLayoutConfig +catalogos.codigoBarraTrecho=com.rjconsultores.ventaboletos.web.utilerias.menu.item.catalogos.ItemMenuCodigoBarraTrecho gr=com.rjconsultores.ventaboletos.web.utilerias.menu.item.gr.MenuGr gr.aidf=com.rjconsultores.ventaboletos.web.utilerias.menu.item.gr.ItemMenuAidf gr.movimentacionBilhetes=com.rjconsultores.ventaboletos.web.utilerias.menu.item.gr.ItemMenuMovimentacionBilhetes @@ -284,6 +285,7 @@ analitico.gerenciais.pacote.resumido=com.rjconsultores.ventaboletos.web.utileria analitico.gerenciais.relatorioRemessaCNAB=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioRemessaCNAB analitico.gerenciais.ceturb=com.rjconsultores.ventaboletos.web.utilerias.menu.item.analitico.gerenciais.ceturb.SubMenuRelatorioCeturb analitico.gerenciais.ceturb.RelatorioMovimentoMensalPassageiros=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioMovimentoMensalPassageiros +analitico.gerenciais.ceturb.RelatorioDadosConsolidadosCeturb=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioDadosConsolidadosCeturb analitico.integracion=com.rjconsultores.ventaboletos.web.utilerias.menu.item.analitico.integracion.SubMenuIntegracion analitico.integracion.sisdap=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioSisdap analitico.integracion.sie=com.rjconsultores.ventaboletos.web.utilerias.menu.item.relatorios.ItemMenuRelatorioSie diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderCodigoBarraTrecho.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderCodigoBarraTrecho.java new file mode 100644 index 000000000..622508cbf --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderCodigoBarraTrecho.java @@ -0,0 +1,38 @@ + +package com.rjconsultores.ventaboletos.web.utilerias.render; + +import org.zkoss.zul.Listcell; +import org.zkoss.zul.Listitem; +import org.zkoss.zul.ListitemRenderer; + +import com.rjconsultores.ventaboletos.entidad.CodigoBarraTrecho; + +public class RenderCodigoBarraTrecho implements ListitemRenderer { + + public void render(Listitem lstm, Object o) throws Exception { + CodigoBarraTrecho codigoBarraTrecho = (CodigoBarraTrecho) o; + + Listcell lc = new Listcell(codigoBarraTrecho.getCodigoBarraId().toString()); + lc.setParent(lstm); + + lc = new Listcell(codigoBarraTrecho.getEmpresa().getNombempresa()); + lc.setParent(lstm); + + lc = new Listcell(codigoBarraTrecho.getOrigen().getDescparada()); + lc.setParent(lstm); + + lc = new Listcell(codigoBarraTrecho.getDestino().getDescparada()); + lc.setParent(lstm); + + lc = new Listcell(codigoBarraTrecho.getCodTerminal()); + lc.setParent(lstm); + + lc = new Listcell(codigoBarraTrecho.getCodEmpresa()); + lc.setParent(lstm); + + lc = new Listcell(codigoBarraTrecho.getCodRuta()); + lc.setParent(lstm); + + lstm.setAttribute("data", codigoBarraTrecho); + } +} diff --git a/src/java/spring-config.xml b/src/java/spring-config.xml index 1591c56fb..cc5f1544e 100644 --- a/src/java/spring-config.xml +++ b/src/java/spring-config.xml @@ -489,7 +489,7 @@ com.rjconsultores.ventaboletos.entidad.EmpresaNequiConfig com.rjconsultores.ventaboletos.entidad.RevenueConfig com.rjconsultores.ventaboletos.entidad.StatusSolicitudExpreso - + com.rjconsultores.ventaboletos.entidad.CodigoBarraTrecho diff --git a/web/WEB-INF/i3-label_en.label b/web/WEB-INF/i3-label_en.label index 7ce6577f6..9de95cf4c 100644 --- a/web/WEB-INF/i3-label_en.label +++ b/web/WEB-INF/i3-label_en.label @@ -10535,3 +10535,29 @@ winMovimentacionBilhetesPuntoVenta.numSerie.label = Series winMovimentacionBilhetesPuntoVenta.origem.label = Origin winMovimentacionBilhetesPuntoVenta.puntoventa.label = Ag. winMovimentacionBilhetesPuntoVenta.tipoMovimentacion.label = Nature + +editarConfiguracaoCodBarrasTrechoController.title = Barcode Configuration Section +indexController.mniConfCodBarrasTrecho.label = Bar Code Configuration Section +editarConfiguracaoCodBarrasTrechoController.MSG.borrarOK = Barcode configuration Section deleted successfully. +editarConfiguracaoCodBarrasTrechoController.MSG.borrarPergunta = Do you want to delete this barcode configuration? +editarConfiguracaoCodBarrasTrechoController.empresa = Enterprise +editarConfiguracaoCodBarrasTrechoController.origem = Origin +editarConfiguracaoCodBarrasTrechoController.destino = Destination +editarConfiguracaoCodBarrasTrechoController.codTerminal = Terminal Code +editarConfiguracaoCodBarrasTrechoController.codEmpresa = Company Code +editarConfiguracaoCodBarrasTrechoController.codRuta = Line Code + + +# Realtorio dados consolidados Ceturb +relatorioDadosConsolidadosCeturbController.lbAte.value = until +relatorioDadosConsolidadosCeturbController.lbEmpresa.value = Enterprise +relatorioDadosConsolidadosCeturbController.lbFecCorrida.value = Travel Period +relatorioDadosConsolidadosCeturbController.lbGrupoRuta.label = Line Group +relatorioDadosConsolidadosCeturbController.lbKMConsiderarExtensao.ajuda = Select Sequence if you want the total KM driven considering the sequence registration, otherwise the KM of the Combination will be considered. +relatorioDadosConsolidadosCeturbController.lbKMConsiderarExtensao.label = Consider for full extension +relatorioDadosConsolidadosCeturbController.lbKMConsiderarExtensaoCobinacao.label = Combination +relatorioDadosConsolidadosCeturbController.lbKMConsiderarExtensaoSequencia.label = Sequence +relatorioDadosConsolidadosCeturbController.lbRuta.value = Line +relatorioDadosConsolidadosCeturbController.lblSimplificadoSumarizado.value = Summarize by rows (Simplified) +relatorioDadosConsolidadosCeturbController.lblSumarizar.value = Summarize by rows (Full) +relatorioDadosConsolidadosCeturbController.window.title = Ceturb Consolidated Data Report \ No newline at end of file diff --git a/web/WEB-INF/i3-label_es_CO.label b/web/WEB-INF/i3-label_es_CO.label index e6bb95afc..b36c34700 100644 --- a/web/WEB-INF/i3-label_es_CO.label +++ b/web/WEB-INF/i3-label_es_CO.label @@ -10558,3 +10558,29 @@ winMovimentacionBilhetesPuntoVenta.numSerie.label = Série winMovimentacionBilhetesPuntoVenta.origem.label = Origen winMovimentacionBilhetesPuntoVenta.puntoventa.label = Ag. winMovimentacionBilhetesPuntoVenta.tipoMovimentacion.label = Naturaleza + +editarConfiguracaoCodBarrasTrechoController.title = Configuración de código de barras +indexController.mniConfCodBarrasTrecho.label = Configuración cód. de barras +editarConfiguracaoCodBarrasTrechoController.MSG.borrarOK = Se eliminó correctamente el extracto de la configuración del código de barras. +editarConfiguracaoCodBarrasTrechoController.MSG.borrarPergunta = ¿Quiere eliminar esta configuración de código de barras? +editarConfiguracaoCodBarrasTrechoController.empresa = Empresa +editarConfiguracaoCodBarrasTrechoController.origem = Origen +editarConfiguracaoCodBarrasTrechoController.destino = Destino +editarConfiguracaoCodBarrasTrechoController.codTerminal = Cod. Terminal +editarConfiguracaoCodBarrasTrechoController.codEmpresa = Cod. Empresa +editarConfiguracaoCodBarrasTrechoController.codRuta = Cod. Ruta + + +# Relatorio dados consolidados Ceturb +relatorioDadosConsolidadosCeturbController.lbAte.value = hasta +relatorioDadosConsolidadosCeturbController.lbEmpresa.value = Empresa +relatorioDadosConsolidadosCeturbController.lbFecCorrida.value = Períod de viaje +relatorioDadosConsolidadosCeturbController.lbGrupoRuta.label = Grupo de líneas +relatorioDadosConsolidadosCeturbController.lbKMConsiderarExtensao.ajuda = Seleccione Secuencia si desea el total de KM recorridos considerando el registro de secuencia, de lo contrario se considerarán los KM de la Combinación. +relatorioDadosConsolidadosCeturbController.lbKMConsiderarExtensao.label = Considere la posibilidad de una extensión completa +relatorioDadosConsolidadosCeturbController.lbKMConsiderarExtensaoCobinacao.label = Combinación +relatorioDadosConsolidadosCeturbController.lbKMConsiderarExtensaoSequencia.label = Secuencia +relatorioDadosConsolidadosCeturbController.lbRuta.value = Ruta +relatorioDadosConsolidadosCeturbController.lblSimplificadoSumarizado.value = Sumarizar por linhas (Simplificado) +relatorioDadosConsolidadosCeturbController.lblSumarizar.value = Sumarizar por la Rutas (Completo) +relatorioDadosConsolidadosCeturbController.window.title = Reporte Datos Consolidados Ceturb \ No newline at end of file diff --git a/web/WEB-INF/i3-label_es_MX.label b/web/WEB-INF/i3-label_es_MX.label index f6c2652d5..6fe865dce 100644 --- a/web/WEB-INF/i3-label_es_MX.label +++ b/web/WEB-INF/i3-label_es_MX.label @@ -10560,3 +10560,30 @@ winMovimentacionBilhetesPuntoVenta.numSerie.label = Série winMovimentacionBilhetesPuntoVenta.origem.label = Origen winMovimentacionBilhetesPuntoVenta.puntoventa.label = Ag. winMovimentacionBilhetesPuntoVenta.tipoMovimentacion.label = Naturaleza + +editarConfiguracaoCodBarrasTrechoController.title = Configuración de código de barras +indexController.mniConfCodBarrasTrecho.label = Configuración cód. de barras +editarConfiguracaoCodBarrasTrechoController.MSG.borrarOK = Se eliminó correctamente el extracto de la configuración del código de barras. +editarConfiguracaoCodBarrasTrechoController.MSG.borrarPergunta = ¿Quiere eliminar esta configuración de código de barras? +editarConfiguracaoCodBarrasTrechoController.empresa = Empresa +editarConfiguracaoCodBarrasTrechoController.origem = Origen +editarConfiguracaoCodBarrasTrechoController.destino = Destino +editarConfiguracaoCodBarrasTrechoController.codTerminal = Cod. Terminal +editarConfiguracaoCodBarrasTrechoController.codEmpresa = Cod. Empresa +editarConfiguracaoCodBarrasTrechoController.codRuta = Cod. Ruta + + + +# Relatorio dados consolidados Ceturb +relatorioDadosConsolidadosCeturbController.lbAte.value = hasta +relatorioDadosConsolidadosCeturbController.lbEmpresa.value = Empresa +relatorioDadosConsolidadosCeturbController.lbFecCorrida.value = Períod de viaje +relatorioDadosConsolidadosCeturbController.lbGrupoRuta.label = Grupo de líneas +relatorioDadosConsolidadosCeturbController.lbKMConsiderarExtensao.ajuda = Seleccione Secuencia si desea el total de KM recorridos considerando el registro de secuencia, de lo contrario se considerarán los KM de la Combinación. +relatorioDadosConsolidadosCeturbController.lbKMConsiderarExtensao.label = Considere la posibilidad de una extensión completa +relatorioDadosConsolidadosCeturbController.lbKMConsiderarExtensaoCobinacao.label = Combinación +relatorioDadosConsolidadosCeturbController.lbKMConsiderarExtensaoSequencia.label = Secuencia +relatorioDadosConsolidadosCeturbController.lbRuta.value = Ruta +relatorioDadosConsolidadosCeturbController.lblSimplificadoSumarizado.value = Sumarizar por linhas (Simplificado) +relatorioDadosConsolidadosCeturbController.lblSumarizar.value = Sumarizar por la Rutas (Completo) +relatorioDadosConsolidadosCeturbController.window.title = Reporte Datos Consolidados Ceturb \ No newline at end of file diff --git a/web/WEB-INF/i3-label_fr_FR.label b/web/WEB-INF/i3-label_fr_FR.label index 74298c327..a961702dd 100644 --- a/web/WEB-INF/i3-label_fr_FR.label +++ b/web/WEB-INF/i3-label_fr_FR.label @@ -10535,3 +10535,29 @@ winMovimentacionBilhetesPuntoVenta.numSerie.label = Série winMovimentacionBilhetesPuntoVenta.origem.label = Origine winMovimentacionBilhetesPuntoVenta.puntoventa.label = Ag. winMovimentacionBilhetesPuntoVenta.tipoMovimentacion.label = Nature + +editarConfiguracaoCodBarrasTrechoController.title = Configuration du code-barres d'extrait +indexController.mniConfCodBarrasTrecho.label = Configuration des codes Extrait de barres +editarConfiguracaoCodBarrasTrechoController.MSG.borrarOK = La configuration de l'extrait de code-barres a été supprimée avec succès. +editarConfiguracaoCodBarrasTrechoController.MSG.borrarPergunta = Voulez-vous supprimer ce paramètre de code-barres ? +editarConfiguracaoCodBarrasTrechoController.empresa = Entreprise +editarConfiguracaoCodBarrasTrechoController.origem = Origine +editarConfiguracaoCodBarrasTrechoController.destino = Destination +editarConfiguracaoCodBarrasTrechoController.codTerminal = Code. Terminal +editarConfiguracaoCodBarrasTrechoController.codEmpresa = Code. Entreprise +editarConfiguracaoCodBarrasTrechoController.codRuta = Code. Doubler + + +# Realtorio dados consolidados Ceturb +relatorioDadosConsolidadosCeturbController.lbAte.value = jusqu'à +relatorioDadosConsolidadosCeturbController.lbEmpresa.value = Entreprise +relatorioDadosConsolidadosCeturbController.lbFecCorrida.value = Période de voyage +relatorioDadosConsolidadosCeturbController.lbGrupoRuta.label = Groupe de lignes +relatorioDadosConsolidadosCeturbController.lbKMConsiderarExtensao.ajuda = Sélectionnez Séquence si vous souhaitez que le KM total parcouru en tenant compte de l'enregistrement de la séquence, sinon le KM de la combinaison sera pris en compte. +relatorioDadosConsolidadosCeturbController.lbKMConsiderarExtensao.label = Envisager une extension complète +relatorioDadosConsolidadosCeturbController.lbKMConsiderarExtensaoCobinacao.label = Combinaison +relatorioDadosConsolidadosCeturbController.lbKMConsiderarExtensaoSequencia.label = Séquence +relatorioDadosConsolidadosCeturbController.lbRuta.value = Doubler +relatorioDadosConsolidadosCeturbController.lblSimplificadoSumarizado.value = Résumer par lignes (simplifié) +relatorioDadosConsolidadosCeturbController.lblSumarizar.value = Résumer par lignes (simplifié) +relatorioDadosConsolidadosCeturbController.window.title = Rapport de données consolidées Ceturb \ No newline at end of file diff --git a/web/WEB-INF/i3-label_pt_BR.label b/web/WEB-INF/i3-label_pt_BR.label index 0f31f2da9..e9827a338 100644 --- a/web/WEB-INF/i3-label_pt_BR.label +++ b/web/WEB-INF/i3-label_pt_BR.label @@ -10531,3 +10531,28 @@ winMovimentacionBilhetesPuntoVenta.numSerie.label = Série winMovimentacionBilhetesPuntoVenta.origem.label = Origem winMovimentacionBilhetesPuntoVenta.puntoventa.label = Ag. winMovimentacionBilhetesPuntoVenta.tipoMovimentacion.label = Natureza + +editarConfiguracaoCodBarrasTrechoController.title = Configuração de códigos de Barras Trecho +indexController.mniConfCodBarrasTrecho.label = Configuração Cod. Barras Trecho +editarConfiguracaoCodBarrasTrechoController.MSG.borrarOK = Configuração de códigos de barras Trecho excluída com sucesso. +editarConfiguracaoCodBarrasTrechoController.MSG.borrarPergunta = Deseja eliminar esta configuração de códigos de barras? +editarConfiguracaoCodBarrasTrechoController.empresa = Empresa +editarConfiguracaoCodBarrasTrechoController.origem = Origem +editarConfiguracaoCodBarrasTrechoController.destino = Destino +editarConfiguracaoCodBarrasTrechoController.codTerminal = Cod. Terminal +editarConfiguracaoCodBarrasTrechoController.codEmpresa = Cod. Empresa +editarConfiguracaoCodBarrasTrechoController.codRuta = Cod. Linha + +# Realtorio dados consolidados Ceturb +relatorioDadosConsolidadosCeturbController.lbAte.value = até +relatorioDadosConsolidadosCeturbController.lbEmpresa.value = Empresa +relatorioDadosConsolidadosCeturbController.lbFecCorrida.value = Período de Viagem +relatorioDadosConsolidadosCeturbController.lbGrupoRuta.label = Grupo de Linhas +relatorioDadosConsolidadosCeturbController.lbKMConsiderarExtensao.ajuda = Selecione Sequência caso queira o total de KM rodado considerando o cadastro da sequencia, se não será considerado a KM da Combinação. +relatorioDadosConsolidadosCeturbController.lbKMConsiderarExtensao.label = Considerar para extensão total +relatorioDadosConsolidadosCeturbController.lbKMConsiderarExtensaoCobinacao.label = Combinação +relatorioDadosConsolidadosCeturbController.lbKMConsiderarExtensaoSequencia.label = Sequência +relatorioDadosConsolidadosCeturbController.lbRuta.value = Linha +relatorioDadosConsolidadosCeturbController.lblSimplificadoSumarizado.value = Sumarizar por linhas (Simplificado) +relatorioDadosConsolidadosCeturbController.lblSumarizar.value = Sumarizar por linhas (Completo) +relatorioDadosConsolidadosCeturbController.window.title = Relatório Dados Consolidados Ceturb \ No newline at end of file diff --git a/web/gui/catalogos/busquedaCodigoBarraTrecho.zul b/web/gui/catalogos/busquedaCodigoBarraTrecho.zul new file mode 100644 index 000000000..13aa4763e --- /dev/null +++ b/web/gui/catalogos/busquedaCodigoBarraTrecho.zul @@ -0,0 +1,119 @@ + + + + + + + + + + +