Merge pull request 'Se agrega funcionalidad básica de generación de Lista de Pasajeros#AL-4552' (!770) from AL-4552 into master
Reviewed-on: adm/VentaBoletosAdm#770 Reviewed-by: fabio <fabio.faria@rjconsultores.com.br>master 1.152.10
commit
2ca889c53c
2
pom.xml
2
pom.xml
|
@ -4,7 +4,7 @@
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
<groupId>br.com.rjconsultores</groupId>
|
<groupId>br.com.rjconsultores</groupId>
|
||||||
<artifactId>ventaboletosadm</artifactId>
|
<artifactId>ventaboletosadm</artifactId>
|
||||||
<version>1.152.9</version>
|
<version>1.152.10</version>
|
||||||
<packaging>war</packaging>
|
<packaging>war</packaging>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
|
|
|
@ -1,18 +1,38 @@
|
||||||
package com.rjconsultores.ventaboletos.web.gui.controladores.expressos;
|
package com.rjconsultores.ventaboletos.web.gui.controladores.expressos;
|
||||||
|
|
||||||
|
import java.io.ByteArrayOutputStream;
|
||||||
|
import java.io.FileInputStream;
|
||||||
|
import java.io.InputStream;
|
||||||
|
import java.sql.Connection;
|
||||||
|
import java.sql.PreparedStatement;
|
||||||
|
import java.sql.ResultSet;
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
import javax.sql.DataSource;
|
||||||
|
|
||||||
|
import org.apache.commons.io.IOUtils;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.context.annotation.Scope;
|
import org.springframework.context.annotation.Scope;
|
||||||
import org.springframework.stereotype.Controller;
|
import org.springframework.stereotype.Controller;
|
||||||
|
import org.zkoss.util.media.AMedia;
|
||||||
|
import org.zkoss.util.media.Media;
|
||||||
|
import org.zkoss.util.resource.Labels;
|
||||||
|
import org.zkoss.zhtml.Filedownload;
|
||||||
|
import org.zkoss.zhtml.Fileupload;
|
||||||
import org.zkoss.zk.ui.Component;
|
import org.zkoss.zk.ui.Component;
|
||||||
import org.zkoss.zk.ui.event.Event;
|
import org.zkoss.zk.ui.event.Event;
|
||||||
import org.zkoss.zk.ui.event.EventListener;
|
import org.zkoss.zk.ui.event.EventListener;
|
||||||
import org.zkoss.zul.Checkbox;
|
import org.zkoss.zul.Checkbox;
|
||||||
import org.zkoss.zul.Combobox;
|
import org.zkoss.zul.Combobox;
|
||||||
|
import org.zkoss.zul.Messagebox;
|
||||||
import org.zkoss.zul.Paging;
|
import org.zkoss.zul.Paging;
|
||||||
|
|
||||||
|
import com.rjconsultores.ventaboletos.dao.InformeVentasPuntoVentaDAO;
|
||||||
|
import com.rjconsultores.ventaboletos.dao.SolicitudExpresosDAO;
|
||||||
import com.rjconsultores.ventaboletos.entidad.Empresa;
|
import com.rjconsultores.ventaboletos.entidad.Empresa;
|
||||||
import com.rjconsultores.ventaboletos.entidad.SolicitudExpreso;
|
import com.rjconsultores.ventaboletos.entidad.SolicitudExpreso;
|
||||||
import com.rjconsultores.ventaboletos.service.EmpresaService;
|
import com.rjconsultores.ventaboletos.service.EmpresaService;
|
||||||
|
@ -24,6 +44,18 @@ import com.rjconsultores.ventaboletos.web.utilerias.paginacion.PagedListWrapper;
|
||||||
import com.rjconsultores.ventaboletos.web.utilerias.render.RenderDocumentosExpresos;
|
import com.rjconsultores.ventaboletos.web.utilerias.render.RenderDocumentosExpresos;
|
||||||
import com.rjconsultores.ventaboletos.web.utilerias.render.RenderExpresosPorCotizar;
|
import com.rjconsultores.ventaboletos.web.utilerias.render.RenderExpresosPorCotizar;
|
||||||
|
|
||||||
|
import net.sf.jasperreports.engine.JRDataSource;
|
||||||
|
import net.sf.jasperreports.engine.JRExporterParameter;
|
||||||
|
import net.sf.jasperreports.engine.JRResultSetDataSource;
|
||||||
|
import net.sf.jasperreports.engine.JasperCompileManager;
|
||||||
|
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.export.HtmlExporter;
|
||||||
|
import net.sf.jasperreports.engine.export.JRPdfExporter;
|
||||||
|
import net.sf.jasperreports.export.SimpleExporterInput;
|
||||||
|
|
||||||
@Controller("documentosExpresosController")
|
@Controller("documentosExpresosController")
|
||||||
@Scope("prototype")
|
@Scope("prototype")
|
||||||
public class DocumentosExpresosController extends MyGenericForwardComposer{
|
public class DocumentosExpresosController extends MyGenericForwardComposer{
|
||||||
|
@ -35,6 +67,12 @@ public class DocumentosExpresosController extends MyGenericForwardComposer{
|
||||||
@Autowired
|
@Autowired
|
||||||
private EmpresaService empresaService;
|
private EmpresaService empresaService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private DataSource dataSource;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private SolicitudExpresosDAO solicitudExpresosDAO;
|
||||||
|
|
||||||
private List<Empresa> lsEmpresa;
|
private List<Empresa> lsEmpresa;
|
||||||
private Combobox cmbEmpresa;
|
private Combobox cmbEmpresa;
|
||||||
private MyListbox expresosList;
|
private MyListbox expresosList;
|
||||||
|
@ -51,7 +89,47 @@ public class DocumentosExpresosController extends MyGenericForwardComposer{
|
||||||
lsEmpresa = empresaService.obtenerTodos();
|
lsEmpresa = empresaService.obtenerTodos();
|
||||||
super.doAfterCompose(comp);
|
super.doAfterCompose(comp);
|
||||||
|
|
||||||
expresosList.setItemRenderer(new RenderDocumentosExpresos(this));
|
expresosList.setItemRenderer(new RenderDocumentosExpresos(this, new EventListener() {
|
||||||
|
@Override
|
||||||
|
public void onEvent(Event arg0) throws Exception {
|
||||||
|
expreso = (SolicitudExpreso)arg0.getTarget().getAttribute("data");
|
||||||
|
|
||||||
|
byte[] response = null;
|
||||||
|
List<JasperPrint> jasperPrintList = new ArrayList<JasperPrint>();
|
||||||
|
|
||||||
|
Connection conn = dataSource.getConnection();
|
||||||
|
|
||||||
|
String sql = "select * from expreso_pasajero where solicitudexpreso_id = ?";
|
||||||
|
|
||||||
|
PreparedStatement stmt = conn.prepareStatement(sql);
|
||||||
|
stmt.setInt(1, expreso.getSolicitudExpresoId().intValue());
|
||||||
|
|
||||||
|
ResultSet rset = stmt.executeQuery();
|
||||||
|
|
||||||
|
JRDataSource jrDataSource = new JRResultSetDataSource(rset);
|
||||||
|
|
||||||
|
HashMap<String, Object> parametros = new HashMap<String, Object>();
|
||||||
|
parametros.put("usuario", "FAAU");
|
||||||
|
|
||||||
|
InputStream is = desktop.getWebApp().getResourceAsStream(
|
||||||
|
"/gui/expressos/listaPasajerosExpreso.jrxml");
|
||||||
|
JasperReport jr = JasperCompileManager.compileReport(is);
|
||||||
|
JasperPrint jasperPrint = JasperFillManager.fillReport(jr, parametros, jrDataSource);
|
||||||
|
|
||||||
|
jasperPrintList.add(jasperPrint);
|
||||||
|
|
||||||
|
JRPdfExporter exporter = new JRPdfExporter();
|
||||||
|
ByteArrayOutputStream out = new ByteArrayOutputStream();
|
||||||
|
exporter.setParameter(JRExporterParameter.JASPER_PRINT_LIST, jasperPrintList);
|
||||||
|
exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, out);
|
||||||
|
exporter.exportReport();
|
||||||
|
response = out.toByteArray();
|
||||||
|
|
||||||
|
AMedia amedia = new AMedia("LISTA DE PASAJEROS - EXPRESO " + expreso.getStatusSolicitudExpresoId() + ".pdf", "pdf", null, response);
|
||||||
|
org.zkoss.util.media.Media pdf = amedia;
|
||||||
|
Filedownload.save(pdf);
|
||||||
|
}
|
||||||
|
}));
|
||||||
|
|
||||||
refreshLista();
|
refreshLista();
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,36 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="listaPasajerosExpreso" pageWidth="842" pageHeight="595" orientation="Landscape" columnWidth="802" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="8fcc3fc4-85f9-42a6-b331-6d1a55d24c2d">
|
||||||
|
<property name="ireport.zoom" value="1.0"/>
|
||||||
|
<property name="ireport.x" value="0"/>
|
||||||
|
<property name="ireport.y" value="0"/>
|
||||||
|
<queryString>
|
||||||
|
<![CDATA[]]>
|
||||||
|
</queryString>
|
||||||
|
<field name="DESCNOMBRE" class="java.lang.String"/>
|
||||||
|
<field name="DESCAPELLIDOS" class="java.lang.String"/>
|
||||||
|
<title>
|
||||||
|
<band height="43" splitType="Stretch">
|
||||||
|
<staticText>
|
||||||
|
<reportElement x="0" y="0" width="802" height="20"/>
|
||||||
|
<textElement textAlignment="Center">
|
||||||
|
<font size="14" isBold="true"/>
|
||||||
|
</textElement>
|
||||||
|
<text><![CDATA[LISTA DE PASAJEROS]]></text>
|
||||||
|
</staticText>
|
||||||
|
</band>
|
||||||
|
</title>
|
||||||
|
<detail>
|
||||||
|
<band height="21" splitType="Stretch">
|
||||||
|
<textField>
|
||||||
|
<reportElement uuid="297f8125-1310-46fd-beba-fd8ea22af291" x="0" y="0" width="48" height="20"/>
|
||||||
|
<textElement/>
|
||||||
|
<textFieldExpression><![CDATA[$F{DESCNOMBRE}]]></textFieldExpression>
|
||||||
|
</textField>
|
||||||
|
<textField>
|
||||||
|
<reportElement uuid="0474c8e5-db4d-474c-9546-22ace8e02666" x="61" y="0" width="168" height="20"/>
|
||||||
|
<textElement/>
|
||||||
|
<textFieldExpression><![CDATA[$F{DESCAPELLIDOS}]]></textFieldExpression>
|
||||||
|
</textField>
|
||||||
|
</band>
|
||||||
|
</detail>
|
||||||
|
</jasperReport>
|
Loading…
Reference in New Issue