Controller Web

Creamos la clase controller con todos los métodos para todas las operaciones de los documentos

/*
 * 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.avbravo.myappweb.controller;

public class PlanetasController implements Serializable, IController {

    private static final long serialVersionUID = 1L;

    @Inject
    PlanetasRepository planetasRepository;
    List<Planetas> planetasList;
    List<Planetas> planetasFiltered;
    Planetas planetas = new Planetas();
    Planetas selectedPlanetas = new Planetas();

    @Inject
    Printer printer;

    public List<Planetas> getPlanetasList() {
        planetasList=planetasRepository.findAll();
        return planetasList;
    }

    public void setPlanetasList(List<Planetas> planetasList) {
        this.planetasList = planetasList;
    }

    public List<Planetas> getPlanetasFiltered() {
        return planetasFiltered;
    }

    public void setPlanetasFiltered(List<Planetas> planetasFiltered) {
        this.planetasFiltered = planetasFiltered;
    }

    public Planetas getPlanetas() {
        return planetas;
    }

    public void setPlanetas(Planetas planetas) {
        this.planetas = planetas;
    }

    public Planetas getSelectedPlanetas() {
        return selectedPlanetas;
    }

    public void setSelectedPlanetas(Planetas selectedPlanetas) {
        this.selectedPlanetas = selectedPlanetas;
    }

    /**
     * Creates a new instance of PlanetasController
     */
    @PostConstruct
    public void init() {
        try {

            String id = FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get("id");

            if (id != null) {
                planetas = planetasRepository.find("idplaneta", id);

            }
            planetasList = new ArrayList<>();
            planetasFiltered = new ArrayList<>();
            planetasList = planetasRepository.findAll();
            planetasFiltered =planetasList;

        } catch (Exception e) {
            JsfUtil.errorMessage("init() " + e.getLocalizedMessage());
        }

    }

    public PlanetasController() {
    }

    @Override
    public String prepareNew() {
        planetas = new Planetas();
        return "";
    }

    @Override
    public void reset() {

        RequestContext.getCurrentInstance().reset(":form:content");
        prepareNew();
    }

    @Override
    public String save() {
        try {

            System.out.println("pĺanetas: "+planetas.toString());  
            System.out.println("invocare el find()");
            Optional<Planetas> p = planetasRepository.find("idplaneta", planetas.getIdplaneta());

            if (!p.isPresent()) {

                if (planetasFacade.save(planetas)) {
                   JsfUtil.successMessage("Guardado");
                   } else {
                  JsfUtil.successMessage("No se pudo guardar " + planetasFacade.getException().toString());
                }
            } else {

               JsfUtil.successMessage("Ya existe un planeta con ese idplaneta");

            }

        } catch (Exception e) {
            JsfUtil.errorMessage("save()" + e.getLocalizedMessage());
        }
        return "";
    }

    @Override
    public String edit() {
        try {
            planetasRepository.update(planetas);

            JsfUtil.successMessage("Se actualizo el planeta");

        } catch (Exception e) {
            JsfUtil.errorMessage(e.getLocalizedMessage());
        }
        return "";
    }

    @Override
    public String delete() {
        if (planetasRepository.delete("idplanetas", planetas.getIdplaneta())) {
            JsfUtil.successMessage("Eliminado");
            planetas = new Planetas();
        }
        return "/pages/planetas/list.xhtml";
    }

    @Override
    public String remove() {

        if (planetasRepository.delete("idplanetas", planetas.getIdplaneta())) {
            JsfUtil.successMessage("Eliminado");
        }
        return "";
    }

    @Override
    public String deleteAll() {
        if (planetasRepository.deleteAll() != 0) {
            JsfUtil.successMessage("Se eliminaron todos los registros");

        }
        return "";
    }

    @Override
    public String print() {
        try {
            List<Planetas> list = new ArrayList<>();
            list.add(planetas);
            String ruta = "/resources/reportes/planetas/planetas.jasper";
            HashMap parameters = new HashMap();

            printer.imprimir(list, ruta, parameters);
        } catch (Exception ex) {
            JsfUtil.errorMessage("imprimir() " + ex.getLocalizedMessage());
        }
        return null;
    }

    @Override
    public String printAll() {
        try {
            List<Planetas> list = new ArrayList<>();
            if (planetasFiltered.isEmpty()) {
                list = planetasList;
            } else {
                list = planetasFiltered;
            }

            String ruta = "/resources/reportes/planetas/planetas.jasper";
            HashMap parameters = new HashMap();

            printer.imprimir(list, ruta, parameters);
        } catch (Exception ex) {
            JsfUtil.errorMessage("imprimir() " + ex.getLocalizedMessage());
        }
        return null;
    }

    @Override
    public String prepareEdit() {
        return "/pages/planetas/view.xhtml";

    }

}

Last updated