Search in sources :

Example 1 with FormulairePresentation

use of fr.univlorraine.ecandidat.utils.bean.presentation.FormulairePresentation in project esup-ecandidat by EsupPortail.

the class CandidaturePieceController method getFormulaireCandidature.

/**
 * @param  candidature
 * @return             la liste des formulaires d'une candidature
 */
public List<FormulairePresentation> getFormulaireCandidature(final Candidature candidature) {
    final String numDossier = candidature.getCandidat().getCompteMinima().getNumDossierOpiCptMin();
    final List<FormulairePresentation> liste = new ArrayList<>();
    final TypeStatutPiece statutAT = tableRefController.getTypeStatutPieceAttente();
    final TypeStatutPiece statutNC = tableRefController.getTypeStatutPieceNonConcerne();
    final TypeStatutPiece statutTR = tableRefController.getTypeStatutPieceTransmis();
    final List<FormulaireCand> listeFormulaireCand = candidature.getFormulaireCands();
    final List<FormulaireCandidature> listeFormulaireCandidature = candidature.getFormulaireCandidatures();
    final List<FormulaireCandidat> listeFormulaireCandidat = candidature.getCandidat().getFormulaireCandidats();
    formulaireController.getFormulaireForCandidature(candidature).forEach(e -> {
        final String libForm = i18nController.getI18nTraduction(e.getI18nLibFormulaire());
        String urlForm = i18nController.getI18nTraduction(e.getI18nUrlFormulaire());
        /* Possibilité d'ajout du numdossier dans l'url sous la forme ${numDossier} */
        if (urlForm != null) {
            urlForm = urlForm.replaceAll(ConstanteUtils.VAR_REGEX_FORM_NUM_DOSSIER, numDossier);
            urlForm = urlForm.replaceAll(ConstanteUtils.VAR_REGEX_FORM_NUM_DOSSIER_OLD, numDossier);
            urlForm = urlForm.replaceAll(ConstanteUtils.VAR_REGEX_FORM_ID_CANDIDATURE, String.valueOf(candidature.getIdCand()));
        }
        String libStatut = null;
        String codStatut = null;
        String reponses = null;
        /* On recherche d'abord les réponses */
        final FormulaireCandidature formulaireCandidature = getFormulaireCandidatureFromList(e, listeFormulaireCandidature);
        final FormulaireCandidat formulaireCandidat = getFormulaireCandidatFromList(e, listeFormulaireCandidat);
        if (formulaireCandidature != null) {
            codStatut = statutTR.getCodTypStatutPiece();
            libStatut = i18nController.getI18nTraduction(statutTR.getI18nLibTypStatutPiece());
            reponses = formulaireCandidature.getReponsesFormulaireCand();
        } else if (formulaireCandidat != null) {
            codStatut = statutTR.getCodTypStatutPiece();
            libStatut = i18nController.getI18nTraduction(statutTR.getI18nLibTypStatutPiece());
            reponses = formulaireCandidat.getReponsesFormulaireCandidat();
        } else {
            /* Si pas de réponse on recherche une ligne dans formulaireCand pour vérifier
				 * qu'il est concerné */
            final FormulaireCand formulaireCand = getFormulaireCandFromList(e, listeFormulaireCand);
            if (formulaireCand != null) {
                codStatut = statutNC.getCodTypStatutPiece();
                libStatut = i18nController.getI18nTraduction(statutNC.getI18nLibTypStatutPiece());
            } else {
                /* Ni de réponse, ni non concerné --> en attente */
                codStatut = statutAT.getCodTypStatutPiece();
                libStatut = i18nController.getI18nTraduction(statutAT.getI18nLibTypStatutPiece());
            }
        }
        liste.add(new FormulairePresentation(e, libForm, urlForm, codStatut, libStatut, e.getTemConditionnelFormulaire(), reponses));
    });
    return liste;
}
Also used : TypeStatutPiece(fr.univlorraine.ecandidat.entities.ecandidat.TypeStatutPiece) FormulaireCand(fr.univlorraine.ecandidat.entities.ecandidat.FormulaireCand) FormulairePresentation(fr.univlorraine.ecandidat.utils.bean.presentation.FormulairePresentation) ArrayList(java.util.ArrayList) FormulaireCandidat(fr.univlorraine.ecandidat.entities.ecandidat.FormulaireCandidat) FormulaireCandidature(fr.univlorraine.ecandidat.entities.ecandidat.FormulaireCandidature)

Aggregations

FormulaireCand (fr.univlorraine.ecandidat.entities.ecandidat.FormulaireCand)1 FormulaireCandidat (fr.univlorraine.ecandidat.entities.ecandidat.FormulaireCandidat)1 FormulaireCandidature (fr.univlorraine.ecandidat.entities.ecandidat.FormulaireCandidature)1 TypeStatutPiece (fr.univlorraine.ecandidat.entities.ecandidat.TypeStatutPiece)1 FormulairePresentation (fr.univlorraine.ecandidat.utils.bean.presentation.FormulairePresentation)1 ArrayList (java.util.ArrayList)1