Package com.evasion.client.controler.admin.booktravel

Source Code of com.evasion.client.controler.admin.booktravel.IndexAdminBookTravel

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package com.evasion.client.controler.admin.booktravel;

import com.evasion.common.Constante;
import com.evasion.ejb.local.BookTravelManagerLocal;
import com.evasion.ejb.local.ParametreManagerLocal;
import com.evasion.ejb.local.UserAuthServiceLocal;
import com.evasion.entity.booktravel.BookTravel;
import com.evasion.entity.booktravel.Itinerary;
import com.evasion.entity.booktravel.RoadMap;
import com.evasion.entity.booktravel.exception.BookTravelServiceException;
import com.evasion.entity.content.Contribution;
import javax.annotation.PostConstruct;
import javax.ejb.EJB;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
import javax.faces.context.FacesContext;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

/**
*
* @author sebastien
*/
@ManagedBean()
@RequestScoped
public class IndexAdminBookTravel {

    /** Logger **/
    private static final Logger LOGGER = LoggerFactory.getLogger(IndexAdminBookTravel.class);
    @EJB
    BookTravelManagerLocal bookTravelEJB;
    @EJB
    ParametreManagerLocal paramEJB;
    private RoadMap roadMap;

    @PostConstruct
    public void init() {
        LOGGER.debug("Initialisation du Bean Manager IndexAdminBookTravel");
        FacesContext ctx = FacesContext.getCurrentInstance();
        roadMap = (RoadMap) ctx.getExternalContext().getSessionMap().
                get("currentRoadMap");
        if (roadMap == null) {
            LOGGER.debug("Initialisation de la roadMap");
            BookTravel bookTravel = null;
            try {
                bookTravel = bookTravelEJB.findBooktravelWithoutRoadMap(
                        Long.valueOf(paramEJB.getProperty(Constante.DEFAULT_BOOK_TRAVEL_ID)));
            }
            catch (BookTravelServiceException ex) {
                LOGGER.error("Erreur de récupération du carnet de voyage", ex);
            }
            final Contribution contrib = new Contribution("", "", null);
            final Itinerary itin = new Itinerary();
            // @TODO terminer d'implémenter la création des itinéraire.
            roadMap = new RoadMap(contrib, itin, bookTravel);
        }
    }

    public String annulContribution() {
        FacesContext ctx = FacesContext.getCurrentInstance();
        ctx.getExternalContext().getSessionMap().remove("currentRoadMap");
        return "booktravel/index.xhtml";
    }

    /**
     * Action de validation du formulaire.
     * @return <code>Constante.FAIL_ACTION</code> si erreur de lavalidation;
     * <br> sinon renvoi la page de destination.
     */
    public String validContribution() {
        LOGGER.debug("Demande de calidation d'une contribution au sein d'une roadMap");
        String result;
        try {
            bookTravelEJB.createRoadMap(roadMap.getBookTravel().getId(),
                    roadMap.getContribution(), roadMap.getItinerary());
        }
        catch (BookTravelServiceException ex) {
            FacesContext ctx = FacesContext.getCurrentInstance();
            ctx.getExternalContext().getSessionMap().remove("currentRoadMap");
            FacesContext.getCurrentInstance().addMessage(null,
                    new FacesMessage(FacesMessage.SEVERITY_ERROR,
                    "Erreur dans la création/modification de la feuille de route", ""));
            result = Constante.FAIL_ACTION;
        }
        FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO,
                "Les données ont été correctement sauvegardé", ""));
       
        // @TODO Détermier la page de destination.
        result = Constante.SUCCESS_ACTION;
        return result;

    }

    public RoadMap getRoadMap() {
        return roadMap;
    }

    public void setRoadMap(RoadMap roadMap) {
        this.roadMap = roadMap;
    }

    public void setBookTravelEJB(BookTravelManagerLocal bookTravelEJB) {
        this.bookTravelEJB = bookTravelEJB;
    }

    public ParametreManagerLocal getParamEJB() {
        return paramEJB;
    }

    public void setParamEJB(ParametreManagerLocal paramEJB) {
        this.paramEJB = paramEJB;
    }
}
TOP

Related Classes of com.evasion.client.controler.admin.booktravel.IndexAdminBookTravel

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.