Search in sources :

Example 1 with ExportLettreCandidat

use of fr.univlorraine.ecandidat.utils.bean.export.ExportLettreCandidat in project esup-ecandidat by EsupPortail.

the class CandidatureController method downloadLettre.

/**
 * @param  candidature
 * @return             l'inputstream pour le telechargement de la lettre
 */
public InputStream downloadLettre(final Candidature candidature, final String mode, final String locale, final Boolean sendNotification) {
    final String templateLettre = getTypeLettre(candidature, mode);
    if (templateLettre == null) {
        return null;
    }
    final Candidat candidat = candidature.getCandidat();
    final CompteMinima cptMin = candidat.getCompteMinima();
    final Formation formation = candidature.getFormation();
    final Commission commission = formation.getCommission();
    final String adresseCandidat = adresseController.getLibelleAdresse(candidat.getAdresse(), "\n");
    final String adresseCommission = adresseController.getLibelleAdresse(commission.getAdresse(), "\n");
    /* Les dates utiles */
    final String dateConfirm = MethodUtils.formatDate(getDateConfirmCandidat(candidature), formatterDate);
    final String dateJury = MethodUtils.formatDate(formation.getDatJuryForm(), formatterDate);
    String libAvis = "";
    String commentaire = null;
    String motif = "";
    String dateValidAvis = "";
    Boolean isAppel = false;
    final TypeDecisionCandidature typeDecisionCand = candidature.getLastTypeDecision();
    if (typeDecisionCand != null && typeDecisionCand.getTypeDecision() != null) {
        // date de validation de l'avis
        dateValidAvis = MethodUtils.formatDate(typeDecisionCand.getDatValidTypeDecCand(), formatterDate);
        // appel
        isAppel = typeDecisionCand.getTemAppelTypeDecCand();
        // libellé de l'avis
        libAvis = i18nController.getI18nTraduction(typeDecisionCand.getTypeDecision().getI18nLibTypDec(), locale);
        // motif pour un avis défavorable
        if (typeDecisionCand.getMotivationAvis() != null && templateLettre.equals(ConstanteUtils.TEMPLATE_LETTRE_REFUS)) {
            motif = i18nController.getI18nTraduction(typeDecisionCand.getMotivationAvis().getI18nLibMotiv(), locale);
        }
        // commentaire
        if (typeDecisionCand.getCommentTypeDecCand() != null && !typeDecisionCand.getCommentTypeDecCand().equals("") && typeDecisionCand.getTypeDecision().getTemAffCommentTypDec()) {
            commentaire = typeDecisionCand.getCommentTypeDecCand();
        }
    }
    final ExportLettreCandidat data = new ExportLettreCandidat(cptMin.getNumDossierOpiCptMin(), candidat.getCivilite().getLibCiv(), candidat.getNomPatCandidat(), candidat.getNomUsuCandidat(), candidat.getPrenomCandidat(), formatterDate.format(candidat.getDatNaissCandidat()), adresseCandidat, campagneController.getLibelleCampagne(cptMin.getCampagne()), commission.getLibComm(), adresseCommission, formation.getCodForm(), formation.getLibForm(), commission.getSignataireComm(), libAvis, commentaire, motif, dateConfirm, dateJury, dateValidAvis, isAppel, candidature.getMntChargeCand(), candidature.getCompExoExtCand());
    InputStream fichierSignature = null;
    if (commission.getFichier() != null) {
        fichierSignature = fileController.getInputStreamFromFichier(commission.getFichier());
    }
    /* Définition du template */
    InputStream template;
    if (templateLettre.equals(ConstanteUtils.TEMPLATE_LETTRE_ADM)) {
        template = MethodUtils.getXDocReportTemplate(templateLettre, locale, cacheController.getLangueDefault().getCodLangue());
    } else {
        /* Récupération de la lettre associée au type de diplome */
        template = MethodUtils.getXDocReportTemplate(templateLettre, locale, cacheController.getLangueDefault().getCodLangue(), ConstanteUtils.TEMPLATE_LETTRE_REFUS_SPEC_DIP_PATH, formation.getSiScolTypDiplome().getCodTpdEtb());
    }
    return generateLettre(template, data, fichierSignature, locale, sendNotification);
}
Also used : ExportDossierCandidat(fr.univlorraine.ecandidat.utils.bean.export.ExportDossierCandidat) Candidat(fr.univlorraine.ecandidat.entities.ecandidat.Candidat) ExportLettreCandidat(fr.univlorraine.ecandidat.utils.bean.export.ExportLettreCandidat) CompteMinima(fr.univlorraine.ecandidat.entities.ecandidat.CompteMinima) ExportLettreCandidat(fr.univlorraine.ecandidat.utils.bean.export.ExportLettreCandidat) BufferedInputStream(java.io.BufferedInputStream) ByteArrayInputStream(java.io.ByteArrayInputStream) InputStream(java.io.InputStream) Commission(fr.univlorraine.ecandidat.entities.ecandidat.Commission) SecurityCommission(fr.univlorraine.ecandidat.services.security.SecurityCommission) Formation(fr.univlorraine.ecandidat.entities.ecandidat.Formation) TypeDecisionCandidature(fr.univlorraine.ecandidat.entities.ecandidat.TypeDecisionCandidature)

Example 2 with ExportLettreCandidat

use of fr.univlorraine.ecandidat.utils.bean.export.ExportLettreCandidat in project esup-ecandidat by EsupPortail.

the class CommissionController method testLettreAdm.

/**
 * @param  commission
 * @param  templateLettreAdm
 * @return                   l'inputStream de la lettre
 */
public OnDemandFile testLettreAdm(final Commission commission, final String templateLettreAdm, final String fileName) {
    final Adresse adrComm = commission.getAdresse();
    final Adresse adrTest = new Adresse("15 rue des plantes", null, null, adrComm.getCodBdiAdr(), null, adrComm.getSiScolCommune(), adrComm.getSiScolPays());
    final String adresseCandidat = adresseController.getLibelleAdresse(adrTest, "\n");
    final String adresseCommission = adresseController.getLibelleAdresse(commission.getAdresse(), "\n");
    final ExportLettreCandidat data = new ExportLettreCandidat("AXQDF1P8", "Monsieur", "Martin", "Martinpat", "Jean", "10/10/1985", adresseCandidat, "Campagne 2015", commission.getLibComm(), adresseCommission, "AX-BJ156", "L1 informatique", commission.getSignataireComm(), "Libellé de la décision", "Commentaire de la décision", "Diplome requis manquant", "16/08/2016", "10/06/2016", "17/08/2016", false, new BigDecimal("1200.21"), "Commentaire d'exo");
    InputStream fichierSignature = null;
    if (commission.getFichier() != null) {
        fichierSignature = fileController.getInputStreamFromFichier(commission.getFichier());
    }
    /* Template */
    final InputStream template = MethodUtils.getXDocReportTemplate(templateLettreAdm, i18nController.getLangueUI(), cacheController.getLangueDefault().getCodLangue());
    /* Generation du fichier */
    return new OnDemandFile(fileName, candidatureController.generateLettre(template, data, fichierSignature, i18nController.getLangueUI(), true));
}
Also used : Adresse(fr.univlorraine.ecandidat.entities.ecandidat.Adresse) ExportLettreCandidat(fr.univlorraine.ecandidat.utils.bean.export.ExportLettreCandidat) InputStream(java.io.InputStream) OnDemandFile(fr.univlorraine.ecandidat.vaadin.components.OnDemandFile) BigDecimal(java.math.BigDecimal)

Aggregations

ExportLettreCandidat (fr.univlorraine.ecandidat.utils.bean.export.ExportLettreCandidat)2 InputStream (java.io.InputStream)2 Adresse (fr.univlorraine.ecandidat.entities.ecandidat.Adresse)1 Candidat (fr.univlorraine.ecandidat.entities.ecandidat.Candidat)1 Commission (fr.univlorraine.ecandidat.entities.ecandidat.Commission)1 CompteMinima (fr.univlorraine.ecandidat.entities.ecandidat.CompteMinima)1 Formation (fr.univlorraine.ecandidat.entities.ecandidat.Formation)1 TypeDecisionCandidature (fr.univlorraine.ecandidat.entities.ecandidat.TypeDecisionCandidature)1 SecurityCommission (fr.univlorraine.ecandidat.services.security.SecurityCommission)1 ExportDossierCandidat (fr.univlorraine.ecandidat.utils.bean.export.ExportDossierCandidat)1 OnDemandFile (fr.univlorraine.ecandidat.vaadin.components.OnDemandFile)1 BufferedInputStream (java.io.BufferedInputStream)1 ByteArrayInputStream (java.io.ByteArrayInputStream)1 BigDecimal (java.math.BigDecimal)1