diff --git a/pom.xml b/pom.xml index 281d7c2b0..a57bc5ada 100644 --- a/pom.xml +++ b/pom.xml @@ -4,14 +4,12 @@ 4.0.0 br.com.rjconsultores ventaboletosadm - 1.131.1 - + 1.131.7 war - 1.101.0 - 1.88.0 - + 1.102.0 + 1.89.0 UTF-8 diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioEstoque.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioEstoque.java index ff90965ed..19517aefb 100644 --- a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioEstoque.java +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioEstoque.java @@ -49,19 +49,13 @@ public class RelatorioEstoque extends Relatorio { String sql = retornarItensConsultaPorPuloFolio(puntoVentaId,empresaId, dtInicio, dtFim, aidfTipoId, aidfId); NamedParameterStatement stmt = new NamedParameterStatement(conexao, sql); - if(dtInicio != null && dtFim != null) { - stmt.setString("dataInicio", DateUtil.getStringDate(dtInicio, "dd/MM/yyyy") + " 00:00:00"); - stmt.setString("dataFinal", DateUtil.getStringDate(dtFim, "dd/MM/yyyy") + " 23:59:59"); - }else if(dtInicio != null) { - stmt.setString("dataInicio", DateUtil.getStringDate(dtInicio, "dd/MM/yyyy") + " 00:00:00"); - } +// if(dtInicio != null && dtFim != null) { +// stmt.setString("dataInicio", DateUtil.getStringDate(dtInicio, "dd/MM/yyyy") + " 00:00:00"); +// stmt.setString("dataFinal", DateUtil.getStringDate(dtFim, "dd/MM/yyyy") + " 23:59:59"); +// }else if(dtInicio != null) { +// stmt.setString("dataInicio", DateUtil.getStringDate(dtInicio, "dd/MM/yyyy") + " 00:00:00"); +// } - Calendar c = Calendar.getInstance(); - c.setTime(dtInicio); - c.add(Calendar.YEAR, -3); - - stmt.setString("dataInicioVenda", DateUtil.getStringDate(c.getTime(), "dd/MM/yyyy") + " 23:59:59"); - stmt.setString("dataFimVenda", DateUtil.getStringDate(new Date(), "dd/MM/yyyy") + " 23:59:59"); if(aidfTipoId != null) { stmt.setInt("aidfTipo",aidfTipoId); @@ -109,8 +103,8 @@ public class RelatorioEstoque extends Relatorio { stmt2.setString("dataInicio", DateUtil.getStringDate(dtInicio, "dd/MM/yyyy") + " 00:00:00"); } - stmt2.setString("dataInicioVenda", DateUtil.getStringDate(c.getTime(), "dd/MM/yyyy") + " 23:59:59"); - stmt2.setString("dataFimVenda", DateUtil.getStringDate(new Date(), "dd/MM/yyyy") + " 23:59:59"); +// stmt2.setString("dataInicioVenda", DateUtil.getStringDate(c.getTime(), "dd/MM/yyyy") + " 23:59:59"); +// stmt2.setString("dataFimVenda", DateUtil.getStringDate(new Date(), "dd/MM/yyyy") + " 23:59:59"); if(aidfTipoId != null) { stmt2.setInt("aidfTipo",aidfTipoId); @@ -153,6 +147,7 @@ public class RelatorioEstoque extends Relatorio { List lsTempRetorno = new ArrayList<>(); List lsTempRetornoAux = new ArrayList<>(); lsEstoquePorSalto = validarFolioPreImpressoPuntoventa(lsEstoquePorSalto, puntoVentaId); + lsEstoquePorSalto = validarFolioPreImpressoFechorAquicision(lsEstoquePorSalto, dtInicio,dtFim); for (ItemReporteControleEstoqueBoletos i : lsEstoquePorSalto) { if(map.get(i.getID()) == null) { for (ItemReporteControleEstoqueBoletos item : lsEstoquePorSalto) { @@ -277,13 +272,13 @@ public class RelatorioEstoque extends Relatorio { sb.append(" AND Em.empresa_ID = ") .append(empresaId); } - if(dataInicio!= null && dataFim != null) { - sb.append(" AND AI.fecadquisicion BETWEEN TO_DATE(:dataInicio,'dd/mm/yyyy hh24:mi:ss') AND TO_DATE(:dataFinal,'dd/mm/yyyy hh24:mi:ss') "); - }else if(dataInicio!= null) { - sb.append(" AND AI.fecadquisicion >= TO_DATE(:dataInicio,'dd/mm/yyyy hh24:mi:ss') "); - } - sb.append(" AND cj.fechorventa BETWEEN TO_DATE(:dataInicioVenda,'dd/mm/yyyy hh24:mi:ss') AND TO_DATE(:dataFimVenda,'dd/mm/yyyy hh24:mi:ss') "); - sb.append(" AND DAB.NUMFOLIOFINAL < 2147483647 "); +// if(dataInicio!= null && dataFim != null) { +// sb.append(" AND AI.fecadquisicion BETWEEN TO_DATE(:dataInicio,'dd/mm/yyyy hh24:mi:ss') AND TO_DATE(:dataFinal,'dd/mm/yyyy hh24:mi:ss') "); +// }else if(dataInicio!= null) { +// sb.append(" AND AI.fecadquisicion >= TO_DATE(:dataInicio,'dd/mm/yyyy hh24:mi:ss') "); +// } + sb.append(" AND CJ.fechorventa BETWEEN (SELECT MIN(C.fechorventa) FROM CAJA c ) AND (select MAX(c.fechorventa) FROM CAJA c) "); + sb.append(" AND DAB.NUMFOLIOFINAL < 2147483647 "); sb.append(" AND DAB.STATUSOPERACION IN(0, "); sb.append(" 1, "); sb.append(" 4) "); @@ -361,12 +356,12 @@ public class RelatorioEstoque extends Relatorio { sb.append(" AND Em.empresa_ID = ") .append(empresaId); } - if(dataInicio!= null && dataFim != null) { - sb.append(" AND AI.fecadquisicion BETWEEN TO_DATE(:dataInicio,'dd/mm/yyyy hh24:mi:ss') AND TO_DATE(:dataFinal,'dd/mm/yyyy hh24:mi:ss') "); - }else if(dataInicio!= null) { - sb.append(" AND AI.fecadquisicion >= TO_DATE(:dataInicio,'dd/mm/yyyy hh24:mi:ss') "); - } - sb.append(" AND FECHORVTA BETWEEN TO_DATE(:dataInicioVenda,'dd/mm/yyyy hh24:mi:ss') AND TO_DATE(:dataFimVenda,'dd/mm/yyyy hh24:mi:ss') "); +// if(dataInicio!= null && dataFim != null) { +// sb.append(" AND AI.fecadquisicion BETWEEN TO_DATE(:dataInicio,'dd/mm/yyyy hh24:mi:ss') AND TO_DATE(:dataFinal,'dd/mm/yyyy hh24:mi:ss') "); +// }else if(dataInicio!= null) { +// sb.append(" AND AI.fecadquisicion >= TO_DATE(:dataInicio,'dd/mm/yyyy hh24:mi:ss') "); +// } + sb.append(" AND CJ.FECHORVTA BETWEEN (SELECT MIN(CD.FECHORVTA) FROM CAJA_DIVERSOS CD) AND (select MAX(CD.FECHORVTA) FROM CAJA_DIVERSOS CD) "); sb.append(" AND DAB.NUMFOLIOFINAL < 2147483647 "); sb.append(" AND DAB.STATUSOPERACION IN(0, "); sb.append(" 1, "); @@ -380,7 +375,7 @@ public class RelatorioEstoque extends Relatorio { sb.append(" AND DAB.ACTIVO = 1 "); sb.append(" AND AB.activo =1 AND AI.activo = 1 and est.estado_id = ai.ESTADO_ID "); sb.append(aidfTipo != null ? " AND (AI.AIDFTIPO_ID =:aidfTipo AND AIT.AIDFTIPO_ID = AI.AIDFTIPO_ID) " : " AND AIT.AIDFTIPO_ID = AI.AIDFTIPO_ID "); - sb.append(" and CJ.aidf_id = AI.AIDF_ID "); +// sb.append(" and CJ.aidf_id = AI.AIDF_ID "); sb.append(aidfId != null ? " AND (AI.AIDF_ID =:aidfId AND DAB.AIDF_ID = AI.AIDF_ID) " : " AND DAB.AIDF_ID = AI.AIDF_ID "); sb.append(" GROUP BY DAB.AIDF_ID, "); sb.append(" DAB.NUMSERIEPREIMPRESA, "); @@ -463,21 +458,20 @@ public class RelatorioEstoque extends Relatorio { .append("LEFT JOIN aidf_tipo ait ON ait.AIDFTIPO_ID= ai.AIDFTIPO_ID ") .append("LEFT JOIN ESTADO est ON est.ESTADO_ID = ai.ESTADO_ID ") .append("LEFT JOIN ESTACION ES ON es.ESTACION_ID = ab.ESTACION_ID ") - .append("JOIN CAJA_DIVERSOS CJ ON CJ.AIDF_ID = dab.AIDF_ID ") +// .append("LEFT JOIN CAJA_DIVERSOS CJ ON CJ.AIDF_ID = dab.AIDF_ID ") +// .append("LEFT JOIN CAJA CC ON (TO_NUMBER(CC.NUMFOLIOPREIMPRESO) BETWEEN TO_NUMBER(DAB.NUMFOLIOINICIAL) AND TO_NUMBER(DAB.NUMFOLIOFINAL) AND (CC.NUMSERIEPREIMPRESA = dab.NUMSERIEPREIMPRESA OR (CC.NUMSERIEPREIMPRESA IS NULL AND dab.NUMSERIEPREIMPRESA IS NULL))) ") .append("WHERE dab.STATUSOPERACION IN(0,1,4) ") .append("AND dab.ACTIVO = 1 ") .append(" and dab.NUMFOLIOFINAL < 2147483647 ") .append(" AND DAB.AIDF_ID = AI.AIDF_ID and ai.activo = 1 ") .append(aidfTipo != null ? " AND AI.AIDFTIPO_ID = :aidfTipo " : " ") - .append(aidfId != null ? " AND AI.AIDF_ID = :aidfId " : " ") - .append("AND TO_NUMBER(CJ.NUMFOLIOPREIMPRESO) BETWEEN TO_NUMBER(DAB.NUMFOLIOINICIAL) AND TO_NUMBER(DAB.NUMFOLIOFINAL) ") - .append(" AND (cj.NUMSERIEPREIMPRESA = dab.NUMSERIEPREIMPRESA ") - .append(" OR (cj.NUMSERIEPREIMPRESA IS NULL ") - .append("AND dab.NUMSERIEPREIMPRESA IS NULL)) ") - .append(" AND CJ.FECHORVTA BETWEEN TO_DATE(:dataInicioVenda,'dd/mm/yyyy hh24:mi:ss') AND TO_DATE(:dataFimVenda,'dd/mm/yyyy hh24:mi:ss') "); - - - + .append(aidfId != null ? " AND AI.AIDF_ID = :aidfId " : " "); +// .append("AND TO_NUMBER(CJ.NUMFOLIOPREIMPRESO) BETWEEN TO_NUMBER(DAB.NUMFOLIOINICIAL) AND TO_NUMBER(DAB.NUMFOLIOFINAL) ") +// .append(" AND (cj.NUMSERIEPREIMPRESA = dab.NUMSERIEPREIMPRESA ") +// .append(" OR (cj.NUMSERIEPREIMPRESA IS NULL ") +// .append("AND dab.NUMSERIEPREIMPRESA IS NULL)) ") +// .append(" AND (CJ.FECHORVTA BETWEEN (SELECT MIN(C.FECHORVTA) FROM CAJA_DIVERSOS c ) AND (select MAX(c.FECHORVTA) FROM CAJA_DIVERSOS c) ") +// .append(" OR CC.FECHORVENTA BETWEEN (SELECT MIN(C.fechorventa) FROM CAJA c ) AND (select MAX(c.fechorventa) FROM CAJA c)) "); if (puntoVentaId != null) { @@ -648,5 +642,18 @@ public class RelatorioEstoque extends Relatorio { } return lsEstoquePorSaltoaux; } + + private List validarFolioPreImpressoFechorAquicision(List lsEstoquePorSalto,Date dataInicial, Date dataFinal) { + + List lsEstoquePorSaltoaux = new ArrayList<>(lsEstoquePorSalto); + + for (ItemReporteControleEstoqueBoletos itemReporteControleEstoqueBoletos : lsEstoquePorSalto) { + if(!(DateUtil.isIgualORMaior(itemReporteControleEstoqueBoletos.getFechorAquisicion(), dataInicial) && DateUtil.isIgualORMenor(itemReporteControleEstoqueBoletos.getFechorAquisicion(), dataFinal))) { + lsEstoquePorSaltoaux.remove(itemReporteControleEstoqueBoletos); + } + + } + return lsEstoquePorSaltoaux; + } } diff --git a/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioInformeViajesOcasionalesPdf.java b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioInformeViajesOcasionalesPdf.java new file mode 100644 index 000000000..2a81b08ad --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/relatorios/impl/RelatorioInformeViajesOcasionalesPdf.java @@ -0,0 +1,343 @@ +package com.rjconsultores.ventaboletos.relatorios.impl; + +import java.io.ByteArrayOutputStream; +import java.io.File; +import java.io.IOException; +import java.sql.Connection; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; + +import org.apache.logging.log4j.Logger; + +import org.zkoss.zul.Filedownload; +import org.zkoss.zul.Listcell; +import org.zkoss.zul.Listhead; +import org.zkoss.zul.Listheader; + +import com.rjconsultores.ventaboletos.entidad.DispositivoEmbarcada; +import com.rjconsultores.ventaboletos.relatorios.utilitarios.DataSource; +import com.rjconsultores.ventaboletos.relatorios.utilitarios.Relatorio; +import com.rjconsultores.ventaboletos.relatorios.utilitarios.RelatorioDispositivoEmbarcadaBean; +import com.rjconsultores.ventaboletos.web.utilerias.MyListbox; + +import net.sf.jasperreports.engine.JRDataSource; +import net.sf.jasperreports.engine.JRException; +import net.sf.jasperreports.engine.JRField; +import net.sf.jasperreports.engine.JRLineBox; +import net.sf.jasperreports.engine.JasperCompileManager; +import net.sf.jasperreports.engine.JasperExportManager; +import net.sf.jasperreports.engine.JasperFillManager; +import net.sf.jasperreports.engine.JasperPrint; +import net.sf.jasperreports.engine.JasperReport; +import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource; +import net.sf.jasperreports.engine.data.JRMapCollectionDataSource; +import net.sf.jasperreports.engine.design.JRDesignBand; +import net.sf.jasperreports.engine.design.JRDesignConditionalStyle; +import net.sf.jasperreports.engine.design.JRDesignExpression; +import net.sf.jasperreports.engine.design.JRDesignField; +import net.sf.jasperreports.engine.design.JRDesignLine; +import net.sf.jasperreports.engine.design.JRDesignSection; +import net.sf.jasperreports.engine.design.JRDesignStaticText; +import net.sf.jasperreports.engine.design.JRDesignStyle; +import net.sf.jasperreports.engine.design.JRDesignTextField; +import net.sf.jasperreports.engine.design.JRDesignVariable; +import net.sf.jasperreports.engine.design.JasperDesign; +import net.sf.jasperreports.engine.export.JExcelApiExporter; +import net.sf.jasperreports.engine.export.JExcelApiExporterParameter; +import net.sf.jasperreports.engine.export.JRPdfExporter; +import net.sf.jasperreports.engine.export.JRPdfExporterParameter; +import net.sf.jasperreports.engine.export.JRXlsExporterParameter; +import net.sf.jasperreports.engine.export.ooxml.JRXlsxExporter; +import net.sf.jasperreports.engine.type.HorizontalAlignEnum; +import net.sf.jasperreports.engine.type.VerticalAlignEnum; +import net.sf.jasperreports.engine.type.WhenNoDataTypeEnum; + +public class RelatorioInformeViajesOcasionalesPdf { + +// private static Logger log = LogManager.getLogger(RelatorioDispositivoEmbarcada.class); + public MyListbox viajeExpresosList; + + public RelatorioInformeViajesOcasionalesPdf(final MyListbox expresosList) throws Exception { + this.viajeExpresosList = expresosList; + + } + + public File generateReport(boolean isPdf) throws JRException, IOException { + + System.setProperty("jasper.reports.compile.class.path", System.getProperty("java.io.tmpdir")); + + JasperDesign jasperDesign = createDesign(); + JasperReport jasperReport = JasperCompileManager + .compileReport(jasperDesign); + + File file = null; + + JRDataSource jrDataSource = prepareDataSource(); + Map params = new HashMap(); + + JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, + params, jrDataSource); + + if (isPdf) { + file = File.createTempFile("pdf", ".pdf"); + + if (!file.exists()) { + file.mkdir(); + file.setWritable(true); + } + + JRPdfExporter exporter = new JRPdfExporter(); + exporter.setParameter(JRPdfExporterParameter.JASPER_PRINT, jasperPrint); + exporter.setParameter(JRPdfExporterParameter.OUTPUT_FILE_NAME, file.getPath()); + exporter.exportReport(); + } else { + file = File.createTempFile("xlsx", ".xlsx"); + + if (!file.exists()) { + file.mkdir(); + file.setWritable(true); + } + + JRXlsxExporter exporter = new JRXlsxExporter(); + exporter.setParameter(JRXlsExporterParameter.JASPER_PRINT, jasperPrint); + exporter.setParameter(JRXlsExporterParameter.OUTPUT_FILE_NAME, file.getPath()); + exporter.exportReport(); + } + return file; + + } + + public byte[] generateReportRender(boolean isPdf) throws Exception { + + System.setProperty("jasper.reports.compile.class.path", System.getProperty("java.io.tmpdir")); + System.setProperty("net.sf.jasperreports.compiler.temp.dir", System.getProperty("java.io.tmpdir")); + + JasperDesign jasperDesign = createDesign(); + JasperReport jasperReport = JasperCompileManager + .compileReport(jasperDesign); + + byte[] conteudo = null; + + JRDataSource jrDataSource = prepareDataSource(); + Map params = new HashMap(); + + JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, + params, jrDataSource); + + if (isPdf) { + conteudo = this.renderPdf(jasperPrint); + } else { + conteudo = this.renderXls(false, jasperPrint); + } + return conteudo; + + } + + private JRDataSource prepareDataSource() { + List> preparedData = new ArrayList>(); + Map map; + map = new HashMap(); + Boolean isValid = viajeExpresosList.getPaginal() != null; + Integer paginaActual = isValid ? viajeExpresosList.getPaginal().getActivePage() : null; + + if (isValid) { + for (int i = 0; i < viajeExpresosList.getPaginal().getPageCount(); i++) { + viajeExpresosList.getPaginal().setActivePage(i); + viajeExpresosList.renderAll(); + } + } + + for (Integer i = 0; i < viajeExpresosList.getSize(); i++) { + List list = viajeExpresosList.getItemAtIndex(i).getChildren(); + + map = new HashMap(); + for (Integer j = 0; j < list.size(); j++) { + Listcell linha = (Listcell) list.get(j); + map.put(j.toString(),linha.getLabel()); + } + preparedData.add(map); + } + + if (isValid && paginaActual != null) { + viajeExpresosList.getPaginal().setActivePage(paginaActual); + } + + return new JRMapCollectionDataSource(preparedData); + } + + public JasperDesign createDesign() throws JRException { + + JRDesignStaticText staticText = null; + + JRDesignTextField textField = null; + + JRDesignBand band = null; + + JRDesignExpression expression = null; + + @SuppressWarnings("unused") + JRDesignLine line = null; + + JRDesignField field = null; + + @SuppressWarnings("unused") + JRDesignConditionalStyle conditionalStyle = null; + + JRLineBox lineBox = null; + + JRDesignVariable variable = null; + + int x; + int y; + final int ROW_HEIGHT = 15; + final int COLUMN_WIDTH = 90; + + JasperDesign jasperDesign = new JasperDesign(); + jasperDesign.setName("Aba 1"); + jasperDesign.setPageWidth(1200); + jasperDesign.setPageHeight(800); + jasperDesign.setColumnWidth(COLUMN_WIDTH); + jasperDesign.setColumnSpacing(0); + jasperDesign.setLeftMargin(40); + jasperDesign.setRightMargin(40); + jasperDesign.setTopMargin(40); + jasperDesign.setBottomMargin(40); + jasperDesign.setIgnorePagination(true); + jasperDesign.setWhenNoDataType(WhenNoDataTypeEnum.ALL_SECTIONS_NO_DETAIL); + + JRDesignStyle normalStyle = new JRDesignStyle(); + normalStyle.setName("normal"); + normalStyle.setDefault(true); + normalStyle.setFontName("SansSerif"); + normalStyle.setFontSize((int) 7.5f); + lineBox = normalStyle.getLineBox(); + lineBox.getTopPen().setLineWidth(0.5f); + lineBox.getRightPen().setLineWidth(0.5f); + lineBox.getBottomPen().setLineWidth(0.5f); + lineBox.getLeftPen().setLineWidth(0.5f); + jasperDesign.addStyle(normalStyle); + + JRDesignStyle headerStyle = new JRDesignStyle(); + headerStyle.setName("header"); + headerStyle.setDefault(true); + headerStyle.setFontName("SansSerif"); + headerStyle.setFontSize((int) 8.5f); + headerStyle.setBold(true); + lineBox = headerStyle.getLineBox(); + lineBox.getTopPen().setLineWidth(0.5f); + lineBox.getRightPen().setLineWidth(0.5f); + lineBox.getBottomPen().setLineWidth(0.5f); + lineBox.getLeftPen().setLineWidth(0.5f); + jasperDesign.addStyle(headerStyle); + + for (Integer i = 0; i < viajeExpresosList.getItemAtIndex(0).getChildren().size(); i++) { + field = new JRDesignField(); + field.setName(i.toString()); + field.setValueClass(java.lang.String.class); + jasperDesign.addField(field); + } + + band = new JRDesignBand(); + + jasperDesign.setTitle(band); + + x = 0; + y = 0; + band = new JRDesignBand(); + band.setHeight(ROW_HEIGHT); + + Listhead listHead = (Listhead) viajeExpresosList.getHeads().iterator().next(); + for (Iterator iterator = listHead.getChildren().iterator(); iterator.hasNext();) { + Listheader child = (Listheader) iterator.next(); + staticText = montaHeader(x, y, ROW_HEIGHT, COLUMN_WIDTH, headerStyle, child.getLabel()); + staticText.setVerticalAlignment(VerticalAlignEnum.JUSTIFIED); + band.addElement(staticText); + x += staticText.getWidth(); + } + + jasperDesign.setColumnHeader(band); + + + band = new JRDesignBand(); + band.setHeight(ROW_HEIGHT); + x = 0; + y = 0; + + + + for (Integer i = 0; i < viajeExpresosList.getItemAtIndex(0).getChildren().size(); i++) { + + textField = new JRDesignTextField(); + textField.setX(x); + textField.setY(y); + textField.setWidth(COLUMN_WIDTH); + textField.setHeight(ROW_HEIGHT); + textField.setStretchWithOverflow(true); + textField.setHorizontalAlignment(HorizontalAlignEnum.CENTER); + textField.setVerticalAlignment(VerticalAlignEnum.MIDDLE); + expression = new JRDesignExpression(); + expression.setText("$F{" + i.toString() + "}"); + textField.setExpression(expression); + textField.setStyle(normalStyle); + band.addElement(textField); + x += textField.getWidth(); + } + + ((JRDesignSection) jasperDesign.getDetailSection()).addBand(band); + + band = new JRDesignBand(); + jasperDesign.setColumnFooter(band); + + band = new JRDesignBand(); + jasperDesign.setPageFooter(band); + + return jasperDesign; + } + + private static JRDesignStaticText montaHeader(int x, int y, final int ROW_HEIGHT, final int COLUMN_WIDTH, JRDesignStyle headerStyle, String nomeColuna) { + JRDesignStaticText staticText; + staticText = new JRDesignStaticText(); + staticText.setX(x); + staticText.setY(y); + staticText.setWidth(COLUMN_WIDTH); + staticText.setHeight(ROW_HEIGHT); + staticText.setHorizontalAlignment(HorizontalAlignEnum.CENTER); + staticText.setStyle(headerStyle); + staticText.setText(nomeColuna); + return staticText; + } + + + private byte[] renderXls(boolean isCustomXls, JasperPrint jasperPrint) throws Exception { + JExcelApiExporter exporterXLS = new JExcelApiExporter(); + ByteArrayOutputStream output = new ByteArrayOutputStream(); + + // As duas propriedades são para quando o arquivo xls chegar no máximo de linhas pular para a próxima aba do arquivo mantis #11294 + exporterXLS.setParameter(JExcelApiExporterParameter.IS_ONE_PAGE_PER_SHEET, Boolean.TRUE); + exporterXLS.setParameter(JExcelApiExporterParameter.MAXIMUM_ROWS_PER_SHEET, 65500); + + exporterXLS.setParameter(JExcelApiExporterParameter.JASPER_PRINT, jasperPrint); + exporterXLS.setParameter(JExcelApiExporterParameter.OUTPUT_STREAM, output); + + if (!isCustomXls) { + exporterXLS.setParameter(JExcelApiExporterParameter.IS_ONE_PAGE_PER_SHEET, Boolean.FALSE); + exporterXLS.setParameter(JExcelApiExporterParameter.IS_DETECT_CELL_TYPE, Boolean.TRUE); + exporterXLS.setParameter(JExcelApiExporterParameter.IS_WHITE_PAGE_BACKGROUND, Boolean.FALSE); + exporterXLS.setParameter(JExcelApiExporterParameter.IS_REMOVE_EMPTY_SPACE_BETWEEN_ROWS, Boolean.TRUE); + exporterXLS.setParameter(JExcelApiExporterParameter.IS_REMOVE_EMPTY_SPACE_BETWEEN_COLUMNS, Boolean.TRUE); + } + + // collapseRowSpan + // JRXlsExporterParameter. + exporterXLS.exportReport(); + return output.toByteArray(); + } + + private byte[] renderPdf(JasperPrint jasperPrint) throws Exception { + return JasperExportManager.exportReportToPdf(jasperPrint); + } + +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/expressos/InformeViajesOcasionalesExpresosController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/expressos/InformeViajesOcasionalesExpresosController.java index 9d1848b9e..de592f309 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/expressos/InformeViajesOcasionalesExpresosController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/expressos/InformeViajesOcasionalesExpresosController.java @@ -1,34 +1,38 @@ package com.rjconsultores.ventaboletos.web.gui.controladores.expressos; -import java.util.ArrayList; +import java.io.ByteArrayInputStream; +import java.io.InputStream; +import java.sql.SQLException; +import java.text.SimpleDateFormat; +import java.util.Calendar; import java.util.Date; -import java.util.List; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Scope; import org.springframework.stereotype.Controller; +import org.zkoss.util.media.AMedia; import org.zkoss.util.resource.Labels; import org.zkoss.zk.ui.Component; import org.zkoss.zk.ui.event.Event; +import org.zkoss.zul.Filedownload; import org.zkoss.zul.Messagebox; import org.zkoss.zul.Paging; -import com.rjconsultores.ventaboletos.entidad.SolicitudExpreso; import com.rjconsultores.ventaboletos.entidad.TrayectosExpresos; -import com.rjconsultores.ventaboletos.service.SolicitudExpresosService; +import com.rjconsultores.ventaboletos.relatorios.impl.RelatorioInformeViajesOcasionalesPdf; import com.rjconsultores.ventaboletos.utilerias.DateUtil; import com.rjconsultores.ventaboletos.web.utilerias.MyDatebox; import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; import com.rjconsultores.ventaboletos.web.utilerias.MyListbox; import com.rjconsultores.ventaboletos.web.utilerias.paginacion.HibernateSearchObject; import com.rjconsultores.ventaboletos.web.utilerias.paginacion.PagedListWrapper; -import com.rjconsultores.ventaboletos.web.utilerias.render.RenderExpresosPorCotizar; import com.rjconsultores.ventaboletos.web.utilerias.render.RenderInformeViajesOcasionales; @Controller("informeViajesOcasionalesExpresosController") @Scope("prototype") public class InformeViajesOcasionalesExpresosController extends MyGenericForwardComposer{ + private static final String NOME_RELATORIO = "informeViajesOcasionales"; private static final long serialVersionUID = 1L; @Autowired @@ -83,6 +87,26 @@ public class InformeViajesOcasionalesExpresosController extends MyGenericForward public void onClick$btnImprimir(Event ev) throws InterruptedException {} + public void onClick$btnExportarPdf(Event ev) throws SQLException, Exception { + excutarInformeViajes(true); + } + + private void excutarInformeViajes(boolean isPdf)throws SQLException, Exception { + RelatorioInformeViajesOcasionalesPdf r = new RelatorioInformeViajesOcasionalesPdf(expresosList); + InputStream mediais = new ByteArrayInputStream(r.generateReportRender(isPdf)); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd_HH-mm"); + String nomeRelatorioDownload = NOME_RELATORIO + "_" + sdf.format(Calendar.getInstance().getTime()); + + if(isPdf) { + AMedia conteudoRelatorioXLS = new AMedia("relatorio.pdf", "pdf", null, mediais); + Filedownload.save(conteudoRelatorioXLS.getStreamData(), "application/pdf", nomeRelatorioDownload + ".pdf"); + }else { + AMedia conteudoRelatorioXLS = new AMedia("relatorio.xls", "xls", null, mediais); + Filedownload.save(conteudoRelatorioXLS.getStreamData(), "application/xls", nomeRelatorioDownload + ".xls"); + } + + } + public MyListbox getExpresosList() { return expresosList; } diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/expressos/ProgramacionVehiculosExpresosController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/expressos/ProgramacionVehiculosExpresosController.java index 155f1ead5..bb022bb7d 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/expressos/ProgramacionVehiculosExpresosController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/expressos/ProgramacionVehiculosExpresosController.java @@ -24,7 +24,7 @@ import com.rjconsultores.ventaboletos.web.utilerias.render.RenderProgramacionVeh @Controller("programacionVehiculoExpresosController") @Scope("prototype") public class ProgramacionVehiculosExpresosController extends MyGenericForwardComposer{ -private static final long serialVersionUID = 1L; + private static final long serialVersionUID = 1L; @Autowired private transient PagedListWrapper plwTrayectosExpresos; diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/expressos/SeguimientoExpresosController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/expressos/SeguimientoExpresosController.java new file mode 100644 index 000000000..aa5c6f622 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/expressos/SeguimientoExpresosController.java @@ -0,0 +1,67 @@ +package com.rjconsultores.ventaboletos.web.gui.controladores.expressos; + +import java.util.Date; + +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.Messagebox; +import org.zkoss.zul.Paging; + +import com.rjconsultores.ventaboletos.entidad.TrayectosExpresos; +import com.rjconsultores.ventaboletos.utilerias.DateUtil; +import com.rjconsultores.ventaboletos.web.utilerias.MyDatebox; +import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; +import com.rjconsultores.ventaboletos.web.utilerias.MyListbox; +import com.rjconsultores.ventaboletos.web.utilerias.paginacion.HibernateSearchObject; +import com.rjconsultores.ventaboletos.web.utilerias.paginacion.PagedListWrapper; +import com.rjconsultores.ventaboletos.web.utilerias.render.RenderInformeViajesOcasionales; +import com.rjconsultores.ventaboletos.web.utilerias.render.RenderSeguimientoExpresos; + +@Controller("seguimientoExpresosController") +@Scope("prototype") +public class SeguimientoExpresosController extends MyGenericForwardComposer{ + private static final long serialVersionUID = 1L; + + @Autowired + private transient PagedListWrapper plwTrayectosExpresos; + + private MyDatebox dtInicio; + private MyDatebox dtFim; + private MyListbox expresosList; + private Paging pagingExpresos; + + @Override + public void doAfterCompose(Component comp) throws Exception { + super.doAfterCompose(comp); + + expresosList.setItemRenderer(new RenderSeguimientoExpresos()); + + refreshLista(); + } + + private void refreshLista() throws InterruptedException { + HibernateSearchObject buscarExpresos = + new HibernateSearchObject(TrayectosExpresos.class, pagingExpresos.getPageSize()); + + Date fechaInicio = dtInicio.getValue(); + if(fechaInicio != null) { + buscarExpresos.addFilterGreaterOrEqual("solicitudExpresoId.fechaSolicitud", DateUtil.inicioFecha(fechaInicio)); + } + + Date fechaFin = dtFim.getValue(); + if(fechaFin != null) { + buscarExpresos.addFilterLessOrEqual("solicitudExpresoId.fechaSolicitud", DateUtil.fimFecha(fechaFin)); + } + + plwTrayectosExpresos.init(buscarExpresos, expresosList, pagingExpresos); + } + + public void onClick$btnPesquisa(Event ev) throws InterruptedException { + refreshLista(); + } + +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/ingreso/EditarTipoEventoExtraController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/ingreso/EditarTipoEventoExtraController.java index 0f5deeab9..1ee555119 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/ingreso/EditarTipoEventoExtraController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/ingreso/EditarTipoEventoExtraController.java @@ -92,6 +92,7 @@ public class EditarTipoEventoExtraController extends MyGenericForwardComposer { private MyComboboxEstandar cmbEmpresa; private MyComboboxPuntoVenta cmbPontoVenda; private MyComboboxImpresionLayoutConfig cmbImpresionLayoutConfig; + private MyComboboxImpresionLayoutConfig cmbImpresionLayoutEmailConfig; /*Forma de Pagamento*/ private List lsEmpresas; /*Forma de Pagamento*/ @@ -144,6 +145,7 @@ public class EditarTipoEventoExtraController extends MyGenericForwardComposer { rowIndEnviaExcessoDeBagagemSefaz.setVisible(false); } cmbImpresionLayoutConfig.setInitialValue(tipoEventoExtra.getImpresionLayoutConfig()); + cmbImpresionLayoutEmailConfig.setInitialValue(tipoEventoExtra.getImpresionLayoutEmailConfig()); } else { rowIndEnviaExcessoDeBagagemSefaz.setVisible(false); btnApagar.setVisible(false); @@ -291,6 +293,12 @@ public class EditarTipoEventoExtraController extends MyGenericForwardComposer { if (cbImpresionLayoutConfig != null) { tipoEventoExtra.setImpresionLayoutConfig((ImpresionLayoutConfig) cbImpresionLayoutConfig.getValue()); } + + Comboitem cbImpresionLayoutEmailConfig = cmbImpresionLayoutEmailConfig.getSelectedItem(); + tipoEventoExtra.setImpresionLayoutEmailConfig(null); + if (cbImpresionLayoutEmailConfig != null) { + tipoEventoExtra.setImpresionLayoutEmailConfig((ImpresionLayoutConfig) cbImpresionLayoutEmailConfig.getValue()); + } try { tipoEventoExtra.setActivo(Boolean.TRUE); diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/BusquedaPrecioVentajaController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/BusquedaPrecioVentajaController.java index b54d73e66..86b03c426 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/BusquedaPrecioVentajaController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/tarifas/BusquedaPrecioVentajaController.java @@ -27,6 +27,7 @@ import com.rjconsultores.ventaboletos.dao.ConstanteDAO; import com.rjconsultores.ventaboletos.entidad.Parada; import com.rjconsultores.ventaboletos.entidad.PrecioVentaja; import com.rjconsultores.ventaboletos.entidad.Ruta; +import com.rjconsultores.ventaboletos.service.ConstanteService; import com.rjconsultores.ventaboletos.service.CorridaService; import com.rjconsultores.ventaboletos.service.ParadaService; import com.rjconsultores.ventaboletos.service.RutaService; @@ -61,7 +62,10 @@ public class BusquedaPrecioVentajaController extends MyGenericForwardComposer { @Autowired private CorridaService corridaService; @Autowired - private ParadaService paradaService; + private ParadaService paradaService; + + @Autowired + private ConstanteService constanteService; private MyListbox precioVentajaList; @@ -109,7 +113,7 @@ public class BusquedaPrecioVentajaController extends MyGenericForwardComposer { @Override public void doAfterCompose(Component comp) throws Exception { super.doAfterCompose(comp); - itxCorrida.setMaxlength(Boolean.valueOf(constanteDAO.buscarPorNomeConstante(Constantes.NUM_VIAJE_9_DIGITOS).getValorconstante()) ? 9 : 7); + itxCorrida.setMaxlength(Boolean.valueOf(constanteService.buscarValorConstantePorNomeConstanteBoolean(Constantes.NUM_VIAJE_9_DIGITOS) ) ? 9 : 7); lsRuta = rutaService.obtenerTodos(); cmbRuta.setItemRenderer(new MyComboRutaRenderer()); diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/expressos/ItemMenuSeguimientoExpresos.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/expressos/ItemMenuSeguimientoExpresos.java new file mode 100644 index 000000000..05e2a8609 --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/menu/item/expressos/ItemMenuSeguimientoExpresos.java @@ -0,0 +1,25 @@ +package com.rjconsultores.ventaboletos.web.utilerias.menu.item.expressos; + +import org.zkoss.util.resource.Labels; + +import com.rjconsultores.ventaboletos.web.utilerias.PantallaUtileria; +import com.rjconsultores.ventaboletos.web.utilerias.menu.DefaultItemMenuSistema; + +public class ItemMenuSeguimientoExpresos extends DefaultItemMenuSistema { + public ItemMenuSeguimientoExpresos() { + super("indexController.mniExpressosSeguimientoExpresos.label"); + } + + @Override + public String getClaveMenu() { + return "COM.RJCONSULTORES.ADMINISTRACION.GUI.EXPRESSOS.SEGUIMIENTOEXPRESOS"; + } + + @Override + public void ejecutar() { + PantallaUtileria.openWindow("/gui/expressos/seguimientoExpresos.zul", + Labels.getLabel("indexController.mniExpressosSeguimientoExpresos.label"), + getArgs(), desktop); + + } +} diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderSeguimientoExpresos.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderSeguimientoExpresos.java new file mode 100644 index 000000000..f213d433f --- /dev/null +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderSeguimientoExpresos.java @@ -0,0 +1,67 @@ +package com.rjconsultores.ventaboletos.web.utilerias.render; + +import org.zkoss.util.resource.Labels; +import org.zkoss.zul.Listcell; +import org.zkoss.zul.Listitem; +import org.zkoss.zul.ListitemRenderer; + +import com.rjconsultores.ventaboletos.entidad.Constante; +import com.rjconsultores.ventaboletos.entidad.TrayectosExpresos; +import com.rjconsultores.ventaboletos.entidad.Usuario; +import com.rjconsultores.ventaboletos.service.ConstanteService; +import com.rjconsultores.ventaboletos.service.UsuarioService; +import com.rjconsultores.ventaboletos.utilerias.DateUtil; +import com.rjconsultores.ventaboletos.web.utilerias.spring.AppContext; + +public class RenderSeguimientoExpresos implements ListitemRenderer { + + public RenderSeguimientoExpresos() { + super(); + } + + @Override + public void render(Listitem item, Object data) throws Exception { + TrayectosExpresos expresos = (TrayectosExpresos) data; + + Listcell lc = new Listcell(expresos.getSolicitudExpresoId().getSolicitudExpresoId().toString()); //# solicitud + lc.setParent(item); + + lc = new Listcell(DateUtil.getStringDate(expresos.getSolicitudExpresoId().getFechaSolicitud(), "dd/MM/yyyy")); //Fecha solicitud + lc.setParent(item); + + lc = new Listcell(expresos.getSolicitudExpresoId().getCiudadOrigen().getNombciudad() + " - " + expresos.getSolicitudExpresoId().getCiudadDestino().getNombciudad()); //Ruta + lc.setParent(item); + + lc = new Listcell(expresos.getSolicitudExpresoId().getIndViajeRedondo() == true ? Labels.getLabel("expressosPorCotizarController.lhIdaRegreso.label") : Labels.getLabel("expresosController.lbl.idaVuelta")); //Ruta + lc.setParent(item); + + lc = new Listcell(DateUtil.getStringDate(expresos.getSolicitudExpresoId().getFechaHoraIda()), "dd/MM/yyyy hh:mm:ss"); //Fecha salida + lc.setParent(item); + + lc = new Listcell(DateUtil.getStringDate(expresos.getSolicitudExpresoId().getFechaHoraRegreso()), "dd/MM/yyyy hh:mm:ss"); //Fecha salida + lc.setParent(item); + + lc = new Listcell(expresos.getSolicitudExpresoId().getDescSitioPartidaIda()); + lc.setParent(item); + + lc = new Listcell(expresos.getSolicitudExpresoId().getDescSitioPartidaRegreso()); + lc.setParent(item); + + lc = new Listcell(expresos.getNumPlaca() == null ? "N/A" : expresos.getNumPlaca().toString()); //Placa + lc.setParent(item); + + lc = new Listcell(expresos.getSolicitudExpresoId().getStatusSolicitudExpresoId().toString()); //Estado + lc.setParent(item); + + lc = new Listcell(expresos.getSolicitudExpresoId().getDocContrato() != null ? Labels.getLabel("MSG.SI") : Labels.getLabel("MSG.NO")); + lc.setParent(item); + + lc = new Listcell(expresos.getDocFluec() != null ? Labels.getLabel("MSG.SI") : Labels.getLabel("MSG.NO")); + lc.setParent(item); + + lc = new Listcell(expresos.getSolicitudExpresoId().getDocListaPasajeros() != null ? Labels.getLabel("MSG.SI") : Labels.getLabel("MSG.NO")); + lc.setParent(item); + + item.setAttribute("data", expresos); + } +} diff --git a/web/WEB-INF/i3-label_en.label b/web/WEB-INF/i3-label_en.label index d473fd9d7..0bc7525f7 100644 --- a/web/WEB-INF/i3-label_en.label +++ b/web/WEB-INF/i3-label_en.label @@ -7854,7 +7854,9 @@ expresosController.lbl.estadoSolicitado = Required expresosController.lbl.idaVuelta = Going expresosController.lbl.pagadoCredito = Paid on Credit expresosController.lbl.verDetalle = See detail - +expresosController.lh.contratoAdjunto = Contrato Adjunto +expresosController.lh.fuecAdjunto = FUEC Adjunto +expresosController.lh.listaPasajerosAdjunto = Lista Pasajeros Adjunto expresosPorCotizarCotizar.window.title = Express Quote expresosPorCotizarPagoCredito.window.title = Credit Payment @@ -8298,6 +8300,7 @@ indexController.mniExpressosInformeViajesOcasionales.label = Occasional Travel R indexController.mniExpressosLog.label = Log indexController.mniExpressosPorCotizar.label = Express to be quoted indexController.mniExpressosProgramacionVehiculos.label = Vehicle Programming +indexController.mniExpressosSeguimientoExpresos.label = Seguimiento Expresos indexController.mniExtrairBpeXmlController.lab0el = Extract BP-e XML indexController.mniFaturarVoucher.label = Voucher Billing indexController.mniFechamentoParamgeral.label = Config. CtaCte Closing and Company Slip diff --git a/web/WEB-INF/i3-label_es_MX.label b/web/WEB-INF/i3-label_es_MX.label index 0982b6e04..38f75859d 100644 --- a/web/WEB-INF/i3-label_es_MX.label +++ b/web/WEB-INF/i3-label_es_MX.label @@ -4494,8 +4494,8 @@ editarContratoController.tab.contrato = Contrato editarContratoController.tab.desconto = Descuento editarContratoController.window.title = Contrato -editarConvenioController.CupomAleatorioNao.value = Não -editarConvenioController.CupomAleatorioSim.value = Sim +editarConvenioController.CupomAleatorioNao.value = No +editarConvenioController.CupomAleatorioSim.value = Si editarConvenioController.Descuento.value = Descuento Fijo editarConvenioController.DescuentoTooltiptext.value = Não é Válido para Bpe editarConvenioController.Geral.value = Geral @@ -4527,37 +4527,37 @@ editarConvenioController.btnBorrarConvenioDet.tooltiptext = Eliminar editarConvenioController.btnFechar.tooltiptext = Cerrar editarConvenioController.btnSalvar.tooltiptext = Guardar editarConvenioController.lbCliente.value = Cliente -editarConvenioController.lbCodigoCupom.value = Código Cupom +editarConvenioController.lbCodigoCupom.value = Código Cupon editarConvenioController.lbCpfCliente.value = DOC. Cliente editarConvenioController.lbCveConvenio.value = Código Convenio editarConvenioController.lbDescConvenio.value = Convenio - Descuento editarConvenioController.lbIdCliente.value = Id. Cliente -editarConvenioController.lbMensagemGanhador.value = Mensagem Ganhador +editarConvenioController.lbMensagemGanhador.value = Mensage Ganador editarConvenioController.lbNumDocfinal.value = Doc. Final editarConvenioController.lbNumDocinicio.value = Doc. Inicial -editarConvenioController.lbNumEmiteCupom.value = Emitir cupom a cada +editarConvenioController.lbNumEmiteCupom.value = Emitir cupon cada editarConvenioController.lbNumeroDocumento.value = Numero de documento editarConvenioController.lbNumfoliofinal.value = Final: editarConvenioController.lbNumfolioinicio.value = Inicial: editarConvenioController.lbOutros.value = Outros editarConvenioController.lbPedagio.value = Peaje editarConvenioController.lbPeriodoEmissao.final = Final: -editarConvenioController.lbPeriodoEmissao.inicial = Inicial: -editarConvenioController.lbPeriodoEmissao.value = Período de Emisión +editarConvenioController.lbPeriodoEmissao.inicial = Principio: +editarConvenioController.lbPeriodoEmissao.value = Vigencia de campaña editarConvenioController.lbPeriodoViagem.final = Final: -editarConvenioController.lbPeriodoViagem.inicial = Inicial: -editarConvenioController.lbPeriodoViagem.value = Período de Viaje +editarConvenioController.lbPeriodoViagem.inicial = Principio: +editarConvenioController.lbPeriodoViagem.value = Vigencia redención editarConvenioController.lbPorcdescuento.value = Porcentaje -editarConvenioController.lbQtdDigitosCupom.value = Qtd dígitos cupom aleatório +editarConvenioController.lbQtdDigitosCupom.value = Digitos cupon Aleatoro editarConvenioController.lbQuantidade.value = Cantidad editarConvenioController.lbSeguro.value = Seguro editarConvenioController.lbTarifa.value = Tarifa -editarConvenioController.lbTermoCondicao.value = Termos e condições +editarConvenioController.lbTermoCondicao.value = Terminos y condiciones editarConvenioController.lbTipoDesconto.value = Tipo de Descuento editarConvenioController.lbTxEmbarque.value = Tasa de abordaje editarConvenioController.lbValidaFolio.value = Validar Numero de Documento editarConvenioController.nomeCliente.value = Nombre del Cliente -editarConvenioController.rdCupomAleatorio.value = Cupom Aleatório +editarConvenioController.rdCupomAleatorio.value = Código cupon Aleatorio editarConvenioController.tab.label.agencias = Agencias editarConvenioController.tab.label.desconto = Descuento editarConvenioController.tab.label.empresas = Empresas @@ -7861,7 +7861,9 @@ expresosController.lbl.estadoSolicitado = Solicitado expresosController.lbl.idaVuelta = Ida expresosController.lbl.pagadoCredito = Pagado a Crédito expresosController.lbl.verDetalle = Ver Detalle - +expresosController.lh.contratoAdjunto = Contrato Adjunto +expresosController.lh.fuecAdjunto = FUEC Adjunto +expresosController.lh.listaPasajerosAdjunto = Lista Pasajeros Adjunto expresosPorCotizarCotizar.window.title = Cotización de Expreso expresosPorCotizarPagoCredito.window.title = Pago a Crédito @@ -8305,6 +8307,7 @@ indexController.mniExpressosInformeViajesOcasionales.label = Informe de Viajes O indexController.mniExpressosLog.label = Log indexController.mniExpressosPorCotizar.label = Expresos por cotizar indexController.mniExpressosProgramacionVehiculos.label = Programación de Vehículos +indexController.mniExpressosSeguimientoExpresos.label = Seguimiento Expresos indexController.mniExtrairBpeXmlController.label = Extrair BP-e XML indexController.mniFaturarVoucher.label = Facturación Bonos indexController.mniFechamentoParamgeral.label = Cierre cuenta diff --git a/web/WEB-INF/i3-label_fr_FR.label b/web/WEB-INF/i3-label_fr_FR.label index 7d0af9008..1fb66bad3 100644 --- a/web/WEB-INF/i3-label_fr_FR.label +++ b/web/WEB-INF/i3-label_fr_FR.label @@ -7855,7 +7855,9 @@ expresosController.lbl.estadoSolicitado = Requis expresosController.lbl.idaVuelta = En allant expresosController.lbl.pagadoCredito = Payé à crédit expresosController.lbl.verDetalle = Voir détail - +expresosController.lh.contratoAdjunto = Contrato Adjunto +expresosController.lh.fuecAdjunto = FUEC Adjunto +expresosController.lh.listaPasajerosAdjunto = Lista Pasajeros Adjunto expresosPorCotizarCotizar.window.title = Devis express expresosPorCotizarPagoCredito.window.title = Paiement à crédit @@ -8299,6 +8301,7 @@ indexController.mniExpressosInformeViajesOcasionales.label = Rapport de voyage o indexController.mniExpressosLog.label = Log indexController.mniExpressosPorCotizar.label = Express à devis indexController.mniExpressosProgramacionVehiculos.label = Programmation du véhicule +indexController.mniExpressosSeguimientoExpresos.label = Seguimiento Expresos indexController.mniExtrairBpeXmlController.label = Extraire BP-e XML indexController.mniFaturarVoucher.label = Facturation Bons indexController.mniFechamentoParamgeral.label = Configuration. Clôture du CtaCte et facture de l'entreprise diff --git a/web/WEB-INF/i3-label_pt_BR.label b/web/WEB-INF/i3-label_pt_BR.label index a6a1a1b04..64a476fd6 100644 --- a/web/WEB-INF/i3-label_pt_BR.label +++ b/web/WEB-INF/i3-label_pt_BR.label @@ -7838,7 +7838,9 @@ expresosController.lbl.cargarPlaca = Anexar Placa expresosController.lbl.idaVuelta = Ida expresosController.lbl.pagadoCredito = Pagado a Crédito expresosController.lbl.verDetalle = Ver detalhe - +expresosController.lh.contratoAdjunto = Contrato Adjunto +expresosController.lh.fuecAdjunto = FUEC Adjunto +expresosController.lh.listaPasajerosAdjunto = Lista Pasajeros Adjunto expresosPorCotizarCotizar.window.title = Cotação Expressa expresosPorCotizarPagoCredito.window.title = Pagamento de crédito @@ -8280,6 +8282,7 @@ indexController.mniExpressosInformeViajesOcasionales.label = Relatório de viage indexController.mniExpressosLog.label = Log indexController.mniExpressosPorCotizar.label = Expresso a ser cotado indexController.mniExpressosProgramacionVehiculos.label = Programação de veículos +indexController.mniExpressosSeguimientoExpresos.label = Seguimiento Expresos indexController.mniExtrairBpeXmlController.label = Extrair BP-e XML indexController.mniFaturarVoucher.label = Faturamento Voucher indexController.mniFechamentoParamgeral.label = Config. de Fechamento CtaCte e Boleto Empresa diff --git a/web/gui/expressos/informeViajesOcasionales.zul b/web/gui/expressos/informeViajesOcasionales.zul index 42be31dfd..0b784521c 100644 --- a/web/gui/expressos/informeViajesOcasionales.zul +++ b/web/gui/expressos/informeViajesOcasionales.zul @@ -38,8 +38,9 @@