com.sisrni.managedbean.ProgramaMovilidadMB.java Source code

Java tutorial

Introduction

Here is the source code for com.sisrni.managedbean.ProgramaMovilidadMB.java

Source

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package com.sisrni.managedbean;

import com.sisrni.managedbean.generic.GenericManagedBean;
import com.sisrni.managedbean.lazymodel.ProgramaMovilidadLazyModel;
import com.sisrni.model.ProgramaMovilidad;
import com.sisrni.service.ProgramaMovilidadService;
import com.sisrni.service.generic.GenericService;
import com.sisrni.utils.JsfUtil;
import java.util.ArrayList;
import java.util.List;
import javax.annotation.PostConstruct;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ViewScoped;
import javax.faces.context.FacesContext;
import javax.inject.Named;
import org.primefaces.model.LazyDataModel;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.primefaces.context.RequestContext;

/**
 *
 * @author Luis
 */
@Named("programaMovilidadMB")
@ViewScoped
public class ProgramaMovilidadMB extends GenericManagedBean<ProgramaMovilidad, Integer> {

    /**para errores*/

    private final static Log log = LogFactory.getLog(ProgramaMovilidadMB.class);

    /*dependecias  tabla a la cual se le esta haciendo crud*/
    @Autowired
    @Qualifier(value = "programaMovilidadService")
    private ProgramaMovilidadService programaMovilidadService;

    /**listas a utulizar*/

    private ProgramaMovilidad programaMovilidad;
    private ProgramaMovilidad delProgramaMovilidad;
    private List<ProgramaMovilidad> listadoProgramaMovilidad;
    private boolean actualizar;

    /**implementacion de GenericManagedBen
     * 
     */
    @Override
    public GenericService<ProgramaMovilidad, Integer> getService() {
        return programaMovilidadService;
    }

    @Override
    public LazyDataModel<ProgramaMovilidad> getNewLazyModel() {
        return new ProgramaMovilidadLazyModel(programaMovilidadService);
    }

    @PostConstruct
    public void init() {
        //inicializacion de loadLazyModels
        loadLazyModels();
        cargarProgramaMovilidad();
    }

    private void cargarProgramaMovilidad() {
        try {
            actualizar = false;
            programaMovilidad = new ProgramaMovilidad();
            listadoProgramaMovilidad = programaMovilidadService.getAllByIdDesc();
        } catch (Exception e) {
            log.debug("Error al tratar de cargar las solicitudes listar para realizar un analisis..."
                    + e.getStackTrace());

        }
    }

    /**
     * Metodo para almacenar registro en Tipo Persona
     * 
     */
    public void guardarProgramaMovilidad() {
        String msg = "Programa de Movilidad Almacenado Exitosamente!";
        try {
            programaMovilidadService.save(programaMovilidad);
            cargarProgramaMovilidad();
            RequestContext.getCurrentInstance().update(":formPrincipal");

            FacesContext.getCurrentInstance().addMessage(null,
                    new FacesMessage(FacesMessage.SEVERITY_INFO, "Guardado", msg));

        } catch (Exception e) {
            JsfUtil.addErrorMessage("Error al guardar Programa de Movilidad");
            e.printStackTrace();
        }
        cargarProgramaMovilidad();
    }

    /**
     * Metodo para Actualizar registro en Tipo Persona
     * 
     */
    public void updateProgramaMovilidad() {
        String msg = "Programa de Movilidad Actualizado Exitosamente!";
        try {
            programaMovilidadService.merge(programaMovilidad);
            if (!isValidationFailed()) {
                items = null;
            }
            actualizar = false;
            cancelarProgramaMovilidad();
            cargarProgramaMovilidad();
            FacesContext.getCurrentInstance().addMessage(null,
                    new FacesMessage(FacesMessage.SEVERITY_INFO, "Actualizacion!!!", msg));
        } catch (Exception e) {
            JsfUtil.addErrorMessage("Error al actualziar Programa de Movilidad");
        }
        cargarProgramaMovilidad();
    }

    /**
     * metodo para precarga registro a actualizar
     * @param programaMovilidad 
     */
    public void preUpdate(ProgramaMovilidad programaMovilidad) {
        try {
            this.programaMovilidad = programaMovilidad;
            actualizar = true;
        } catch (Exception e) {
            JsfUtil.addErrorMessage("Error al precargar registro para ser actualizado");
        }
    }

    /**
    * Metodo para eliminar registro en Tipo Persona
    * 
    */
    public void deleteProgramaMovilidad() {
        String msg = "Programa de Movilidad Eliminado Exitosamente!";
        try {
            programaMovilidadService.delete(this.delProgramaMovilidad);
            listadoProgramaMovilidad = programaMovilidadService.getAllByIdDesc();
            RequestContext.getCurrentInstance().update(":formPrincipal");
            RequestContext context = RequestContext.getCurrentInstance();
            context.execute("PF('dataChangeDlg').hide();");
            JsfUtil.addSuccessMessage(msg);
        } catch (Exception e) {
            FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_FATAL,
                    "ERROR!!",
                    "Error al Eliminar, verifique que no existan otros elementos vinculados a este registro de Programa de Movilidad"));
        } finally {
            actualizar = false;
            delProgramaMovilidad = new ProgramaMovilidad();
        }

    }

    /**
     * Metodo para precargar eliminacion de registro tipo persona
    * @param programaMovilidad
     */
    public void preDeleteProgramaMovilidad(ProgramaMovilidad programaMovilidad) {
        try {
            this.delProgramaMovilidad = programaMovilidad;
            RequestContext context = RequestContext.getCurrentInstance();
            context.execute("PF('dataChangeDlg').show();");
        } catch (Exception e) {
        }
    }

    /**
    * Metodo para eliminar registro en Tipo Persona
    * 
    */
    public void cancelarProgramaMovilidad() {
        String msg = "Programa de Movilidad cancelado!";
        try {
            programaMovilidad = null;
            programaMovilidad = new ProgramaMovilidad();
            RequestContext.getCurrentInstance().reset(":formAdmin");
            if (actualizar)
                JsfUtil.addSuccessMessage(msg);
        } catch (Exception e) {
            JsfUtil.addErrorMessage("Error al cancelar registro Programa de Movilidad");
        }
        cargarProgramaMovilidad();
    }

    public List<ProgramaMovilidad> listarProgramasMovilidad() {
        listadoProgramaMovilidad = programaMovilidadService.geyAllProgramaMovilidadByNameAsc();
        ProgramaMovilidad programaMovilidadNuevo = new ProgramaMovilidad();
        List<ProgramaMovilidad> listProgramaMovilidadCopy = new ArrayList<ProgramaMovilidad>();
        for (ProgramaMovilidad prog : listadoProgramaMovilidad) {
            if (!prog.getNombreProgramaMovilidad().equalsIgnoreCase("Agregar Nuevo")) {
                listProgramaMovilidadCopy.add(prog);
            } else {
                programaMovilidadNuevo = prog;
            }
        }
        listProgramaMovilidadCopy.add(programaMovilidadNuevo);
        listadoProgramaMovilidad.clear();
        return listadoProgramaMovilidad = listProgramaMovilidadCopy;
    }

    public ProgramaMovilidad getProgramaMovilidad() {
        return programaMovilidad;
    }

    public void setProgramaMovilidad(ProgramaMovilidad programaMovilidad) {
        this.programaMovilidad = programaMovilidad;
    }

    public List<ProgramaMovilidad> getListadoProgramaMovilidad() {
        return listadoProgramaMovilidad;
    }

    public void setListadoProgramaMovilidad(List<ProgramaMovilidad> listadoProgramaMovilidad) {
        this.listadoProgramaMovilidad = listadoProgramaMovilidad;
    }

    public boolean isActualizar() {
        return actualizar;
    }

    public void setActualizar(boolean actualizar) {
        this.actualizar = actualizar;
    }

    public ProgramaMovilidad getDelProgramaMovilidad() {
        return delProgramaMovilidad;
    }

    public void setDelProgramaMovilidad(ProgramaMovilidad delProgramaMovilidad) {
        this.delProgramaMovilidad = delProgramaMovilidad;
    }
}