diff --git a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/expressos/AsignarBusExpresosController.java b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/expressos/AsignarBusExpresosController.java index 117d57c8e..e272f8389 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/expressos/AsignarBusExpresosController.java +++ b/src/java/com/rjconsultores/ventaboletos/web/gui/controladores/expressos/AsignarBusExpresosController.java @@ -1,14 +1,24 @@ package com.rjconsultores.ventaboletos.web.gui.controladores.expressos; +import java.io.InputStream; + +import org.apache.commons.io.IOUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Scope; import org.springframework.stereotype.Controller; +import org.zkoss.util.media.Media; +import org.zkoss.util.resource.Labels; +import org.zkoss.zhtml.Fileupload; import org.zkoss.zk.ui.Component; import org.zkoss.zk.ui.Executions; +import org.zkoss.zk.ui.event.Event; +import org.zkoss.zk.ui.event.EventListener; +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.TrayectosExpresosService; import com.rjconsultores.ventaboletos.utilerias.DateUtil; import com.rjconsultores.ventaboletos.web.utilerias.MyGenericForwardComposer; import com.rjconsultores.ventaboletos.web.utilerias.MyListbox; @@ -40,6 +50,10 @@ public class AsignarBusExpresosController extends MyGenericForwardComposer{ private Paging pagingTrayectosExpresos; SolicitudExpreso expreso; + TrayectosExpresos trayecto; + + @Autowired + TrayectosExpresosService trayectoService; @Override public void doAfterCompose(Component comp) throws Exception { @@ -47,7 +61,30 @@ public class AsignarBusExpresosController extends MyGenericForwardComposer{ super.doAfterCompose(comp); - trayectosList.setItemRenderer(new RenderAsignarBusExpresos(this)); + trayectosList.setItemRenderer(new RenderAsignarBusExpresos(this, new EventListener() { + @Override + public void onEvent(Event arg0) throws Exception { + trayecto = (TrayectosExpresos)arg0.getTarget().getAttribute("data"); + + Media fluec = Fileupload.get(); + + if(fluec.getFormat().equalsIgnoreCase("pdf")) { + InputStream inputStream = fluec.getStreamData(); + byte[] bytesIs = IOUtils.toByteArray(inputStream); + + trayecto.setDocFluec(bytesIs); + + trayectoService.actualizacion(trayecto); + } else { + Messagebox.show( + Labels.getLabel("cargaContratoController.MSG.errorFormatoContrato") + " " + fluec, + Labels.getLabel("winExpressoCargaContrato.title"), + Messagebox.OK, Messagebox.ERROR); + } + + refreshLista(); + } + })); txtNumSolicitud.setValue(expreso.getSolicitudExpresoId().toString()); txtRuta.setValue(expreso.getCiudadOrigen().getNombciudad() + " - " + expreso.getCiudadDestino().getNombciudad()); diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderAsignarBusExpresos.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderAsignarBusExpresos.java index 7c35e7503..1dd61ea25 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderAsignarBusExpresos.java +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderAsignarBusExpresos.java @@ -1,18 +1,23 @@ package com.rjconsultores.ventaboletos.web.utilerias.render; +import java.io.InputStream; import java.util.HashMap; import java.util.Map; +import org.apache.commons.io.IOUtils; import org.springframework.beans.factory.annotation.Autowired; 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.event.Event; import org.zkoss.zk.ui.event.EventListener; import org.zkoss.zul.Button; import org.zkoss.zul.Listcell; import org.zkoss.zul.Listitem; import org.zkoss.zul.ListitemRenderer; +import org.zkoss.zul.Messagebox; import com.rjconsultores.ventaboletos.entidad.SolicitudExpreso; import com.rjconsultores.ventaboletos.entidad.TrayectosExpresos; @@ -23,13 +28,16 @@ import com.rjconsultores.ventaboletos.web.utilerias.PantallaUtileria; public class RenderAsignarBusExpresos implements ListitemRenderer { + EventListener listenerGenerico; + TrayectosExpresos trayecto; AsignarBusExpresosController winAsignarBus; - public RenderAsignarBusExpresos(AsignarBusExpresosController window) { + public RenderAsignarBusExpresos(AsignarBusExpresosController window, EventListener listenerGenerico) { super(); winAsignarBus = window; + this.listenerGenerico = listenerGenerico; } @Override @@ -68,40 +76,19 @@ public class RenderAsignarBusExpresos implements ListitemRenderer { lc = new Listcell(trayectos.getNumPlaca()); lc.setParent(item); } - - lc = new Listcell(); - lc.setParent(item); if(trayectos.getDocFluec() == null) { + lc = new Listcell(); + lc.setParent(item); + Button btnCargarFluec = new Button(Labels.getLabel("expresosController.lbl.cargarFluec")); - btnCargarFluec.addEventListener("onClick", new EventListener() { - @Override - public void onEvent(Event event) throws Exception { - Listitem listItem = (Listitem) event.getTarget().getParent().getParent(); - trayecto = (TrayectosExpresos)listItem.getAttribute("data"); - - Map args = new HashMap(); - args.put("trayecto", trayecto); - - winAsignarBus.openWindow("/gui/expressos/cargarFluecTrayectoExpreso.zul", Labels.getLabel("asignarBusExpreso.window.title"), args, PantallaUtileria.MODAL); - } - }); - lc.appendChild(btnCargarFluec); + btnCargarFluec.setAttribute("data", data); + btnCargarFluec.addEventListener("onClick", listenerGenerico); + + lc.appendChild(btnCargarFluec); }else { - Button btnVerFluec = new Button(Labels.getLabel("expresosController.lbl.verFluec")); - btnVerFluec.addEventListener("onClick", new EventListener() { - @Override - public void onEvent(Event event) throws Exception { - Listitem listItem = (Listitem) event.getTarget().getParent().getParent(); - trayecto = (TrayectosExpresos)listItem.getAttribute("data"); - - AMedia amedia = new AMedia("fluec.pdf", "pdf", null, trayecto.getDocFluec()); - - org.zkoss.util.media.Media pdf = amedia; - Filedownload.save(pdf); - } - }); - lc.appendChild(btnVerFluec); + lc = new Listcell(Labels.getLabel("expresosController.lbl.fluecCargado")); + lc.setParent(item); } item.setAttribute("data", trayectos); diff --git a/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderExpresosPorCotizar.java b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderExpresosPorCotizar.java index ac689efb6..444eb43bc 100644 --- a/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderExpresosPorCotizar.java +++ b/src/java/com/rjconsultores/ventaboletos/web/utilerias/render/RenderExpresosPorCotizar.java @@ -128,7 +128,7 @@ public class RenderExpresosPorCotizar implements ListitemRenderer { lc.appendChild(btnCotizar); break; case 2: - Button btnPagoCredito = new Button("Pago Crédito"); + Button btnPagoCredito = new Button(Labels.getLabel("expresosController.lbl.pagoCredito")); btnPagoCredito.setAttribute("data", data); btnPagoCredito.addEventListener("onClick", listenerGenerico); diff --git a/web/WEB-INF/i3-label_es_MX.label b/web/WEB-INF/i3-label_es_MX.label index 26f9557b8..de87a8a37 100644 --- a/web/WEB-INF/i3-label_es_MX.label +++ b/web/WEB-INF/i3-label_es_MX.label @@ -7457,6 +7457,8 @@ indexController.mniExpressosDocumentos.label = Documentos expresosController.lbl.verDetalle = Ver Detalle expresosController.lbl.asignarBus = Asignar Bus +expresosController.lbl.fluecCargado = FLUEC Cargado +expresosController.lbl.pagoCredito = Pago Crédito expresoController.MSG.errorArchivo = Archivo inválidoo o nulo cargaContratoController.MSG.errorExpresoNull = Seleccione Expreso a Asociar Contrato