package com.titanic.ventapasajes.controller; /** * Created by josediaz on 12/26/15. */ import com.titanic.ventapasajes.jsf.FacesUtil; import com.titanic.ventapasajes.modelo.*; import com.titanic.ventapasajes.repositorio.BusRepositorio; import com.titanic.ventapasajes.service.RegistroProgramacionService; import org.primefaces.context.RequestContext; import org.primefaces.event.SelectEvent; import javax.faces.application.FacesMessage; import javax.faces.bean.ViewScoped; import javax.faces.context.FacesContext; import javax.inject.Inject; import javax.inject.Named; import java.io.Serializable; @Named @ViewScoped public class RegistroProgramacionBean implements Serializable { private static final long serialVersionUID = 1L; @Inject private RegistroProgramacionService programacionService; @Inject private BusRepositorio busRepositorio; private Programacion programacion; public void inicializar(){ if (this.programacion == null) { this.programacion = new Programacion(); programacion.setTipoProgramacion(TipoProgramacion.ABIERTO); } } public void registrarProgramacion(){ if(programacion.getRuta() ==null || programacion.getBus() == null){ FacesUtil.adicionarMensajeError("Ud. debe ingresar Ruta y Bus para este viaje"); return; } this.programacion = programacionService.registrarProgramacion(this.programacion); limpiarFormulario(); FacesUtil.adicionarMensajeInfo("La programaciĆ³n se registro correctamente"); } public Programacion getProgramacion() { return programacion; } public void setProgramacion(Programacion programacion) { this.programacion = programacion; } private void limpiarFormulario(){ programacion = new Programacion(); } public boolean isEditando(){ return this.programacion.getIdeProgramacion() !=null; } public void seleccionarBus() { RequestContext.getCurrentInstance().openDialog("seleccionarBus"); } public void seleccionarRuta() { RequestContext.getCurrentInstance().openDialog("seleccionarRuta"); } public TipoProgramacion[] getTipoProgramacion() { return TipoProgramacion.values(); } public void onRutaSeleccionada(SelectEvent event) { Recorrido recorrido = (Recorrido) event.getObject(); this.programacion.setRuta(recorrido); FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_INFO, "Ruta Seleccionada", "Id:" + recorrido.getRuta()); FacesContext.getCurrentInstance().addMessage(null, message); } public void onBusSeleccionado(SelectEvent event) { Bus busSeleccionado = (Bus) event.getObject(); this.programacion.setBus(busRepositorio.getFilasWithBusById(busSeleccionado.getIdeBus())); FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_INFO, "Bus Seleccionado", "Id:" + busSeleccionado.getDescripcionBus()); FacesContext.getCurrentInstance().addMessage(null, message); } }