use of fr.univlorraine.ecandidat.entities.ecandidat.TypeTraitement in project esup-ecandidat by EsupPortail.
the class NomenclatureController method majTypeTraitement.
/**
* Met a jour un type de traitement
* @param typeStatut
*/
private void majTypeTraitement(final TypeTraitement typeTraitement) {
final TypeTraitement typeTraitementLoad = typeTraitementRepository.findByCodTypTrait(typeTraitement.getCodTypTrait());
if (typeTraitementLoad == null) {
final TypeTraduction typeTrad = typeTraductionRepository.findOne(NomenclatureUtils.TYP_TRAD_TYP_TRAIT_LIB);
final I18n i18n = i18nRepository.saveAndFlush(new I18n(typeTrad));
final I18nTraduction trad = new I18nTraduction(typeTraitement.getLibTypTrait(), i18n, cacheController.getLangueDefault());
i18nTraductionRepository.saveAndFlush(trad);
typeTraitement.setI18nLibTypTrait(i18n);
typeTraitementRepository.saveAndFlush(typeTraitement);
}
}
use of fr.univlorraine.ecandidat.entities.ecandidat.TypeTraitement in project esup-ecandidat by EsupPortail.
the class ScolTypeTraitementView method init.
/**
* Initialise la vue
*/
@PostConstruct
public void init() {
/* Style */
setSizeFull();
setMargin(true);
setSpacing(true);
/* Titre */
Label titleParam = new Label(applicationContext.getMessage("typeTraitement.title", null, UI.getCurrent().getLocale()));
titleParam.addStyleName(StyleConstants.VIEW_TITLE);
addComponent(titleParam);
/* Boutons */
HorizontalLayout buttonsLayout = new HorizontalLayout();
buttonsLayout.setWidth(100, Unit.PERCENTAGE);
buttonsLayout.setSpacing(true);
addComponent(buttonsLayout);
OneClickButton btnEdit = new OneClickButton(applicationContext.getMessage("btnEdit", null, UI.getCurrent().getLocale()), FontAwesome.PENCIL);
btnEdit.setEnabled(false);
btnEdit.addClickListener(e -> {
if (typeTraitementTable.getValue() instanceof TypeTraitement) {
nomenclatureTypeController.editTypeTraitement((TypeTraitement) typeTraitementTable.getValue());
}
});
buttonsLayout.addComponent(btnEdit);
buttonsLayout.setComponentAlignment(btnEdit, Alignment.MIDDLE_LEFT);
/* Table des typeTraitements */
typeTraitementTable.setContainerDataSource(new BeanItemContainer<TypeTraitement>(TypeTraitement.class, nomenclatureTypeController.getTypeTraitements()));
typeTraitementTable.addGeneratedColumn(TypeTraitement_.i18nLibTypTrait.getName(), new ColumnGenerator() {
/**
* serialVersionUID
*/
private static final long serialVersionUID = 2101119091378513475L;
@Override
public Object generateCell(Table source, Object itemId, Object columnId) {
final TypeTraitement typeTraitement = (TypeTraitement) itemId;
return i18nController.getI18nTraductionLibelle(typeTraitement.getI18nLibTypTrait());
}
});
typeTraitementTable.setSizeFull();
typeTraitementTable.setVisibleColumns((Object[]) FIELDS_ORDER);
for (String fieldName : FIELDS_ORDER) {
typeTraitementTable.setColumnHeader(fieldName, applicationContext.getMessage("typeTraitement.table." + fieldName, null, UI.getCurrent().getLocale()));
}
typeTraitementTable.setSortContainerPropertyId(TypeTraitement_.codTypTrait.getName());
typeTraitementTable.setColumnCollapsingAllowed(true);
typeTraitementTable.setColumnReorderingAllowed(true);
typeTraitementTable.setSelectable(true);
typeTraitementTable.setImmediate(true);
typeTraitementTable.addItemSetChangeListener(e -> typeTraitementTable.sanitizeSelection());
typeTraitementTable.addValueChangeListener(e -> {
/* Les boutons d'édition et de suppression de typeTraitement sont actifs seulement si une typeTraitement est sélectionnée. */
boolean typeTraitementIsSelected = typeTraitementTable.getValue() instanceof TypeTraitement;
btnEdit.setEnabled(typeTraitementIsSelected);
});
typeTraitementTable.addItemClickListener(e -> {
if (e.isDoubleClick()) {
typeTraitementTable.select(e.getItemId());
btnEdit.click();
}
});
addComponent(typeTraitementTable);
setExpandRatio(typeTraitementTable, 1);
/* Inscrit la vue aux mises à jour de typeTraitement */
typeTraitementEntityPusher.registerEntityPushListener(this);
}
use of fr.univlorraine.ecandidat.entities.ecandidat.TypeTraitement in project esup-ecandidat by EsupPortail.
the class CandidatureController method candidatToFormation.
/**
* Candidate à une formation
* @param idForm
* @param listener
*/
public void candidatToFormation(final Integer idForm, final OdfListener listener, final Boolean isTest) {
/* On recupere l'authentification */
final Authentication auth = userController.getCurrentAuthentication();
if (userController.isAnonymous(auth)) {
return;
}
if (!userController.isCandidat(auth) && userController.getNoDossierCandidat(auth) == null) {
Notification.show(applicationContext.getMessage("odf.choose.candidat", null, UI.getCurrent().getLocale()), Type.WARNING_MESSAGE);
return;
}
/* Vérification du compte à minima */
final CompteMinima cptMin = candidatController.getCompteMinima();
if (cptMin == null) {
Notification.show(applicationContext.getMessage("cptmin.load.error", null, UI.getCurrent().getLocale()), Type.WARNING_MESSAGE);
return;
}
final Candidat candidat = cptMin.getCandidat();
/* Vérification du candidat-->info perso */
if (candidat == null) {
Notification.show(applicationContext.getMessage("candidat.load.error", null, UI.getCurrent().getLocale()), Type.WARNING_MESSAGE);
return;
}
/* Vérification du candidat-->adresse */
if (candidat.getAdresse() == null) {
Notification.show(applicationContext.getMessage("candidat.load.adresse.error", null, UI.getCurrent().getLocale()), Type.WARNING_MESSAGE);
return;
}
/* Vérification du candidat-->bac */
final CandidatBacOuEqu bacOuEqu = candidat.getCandidatBacOuEqu();
if (bacOuEqu == null) {
Notification.show(applicationContext.getMessage("candidat.load.bac.error", null, UI.getCurrent().getLocale()), Type.WARNING_MESSAGE);
return;
}
/* Vérification année du bac et INE obligatoire */
final SiScolBacOuxEqu siScolBacOuxEqu = bacOuEqu.getSiScolBacOuxEqu();
if (bacOuEqu.getAnneeObtBac() != null && siScolBacOuxEqu.getTemCtrlIneBac() && siScolBacOuxEqu.getAnnCtrlIneBac() != null && bacOuEqu.getAnneeObtBac().compareTo(Integer.valueOf(siScolBacOuxEqu.getAnnCtrlIneBac())) >= 0 && candidatController.getINEObligatoire(candidat.getSiScolPaysNat()) && (candidat.getIneCandidat() == null || candidat.getCleIneCandidat() == null || candidat.getIneCandidat().equals("") || candidat.getCleIneCandidat().equals(""))) {
Notification.show(applicationContext.getMessage("candidat.load.bac.ine.error", null, UI.getCurrent().getLocale()), Type.WARNING_MESSAGE);
return;
}
final Formation formation = formationRepository.findOne(idForm);
if (formation == null || !formation.getTesForm()) {
Notification.show(applicationContext.getMessage("candidature.formation.error", null, UI.getCurrent().getLocale()), Type.WARNING_MESSAGE);
if (listener != null) {
listener.updateOdf();
}
return;
}
if (!isTest) {
if (candidat.getCandidatures().stream().filter(candidature -> candidature.getDatAnnulCand() == null && candidature.getFormation().getIdForm().equals(idForm)).findAny().isPresent()) {
Notification.show(applicationContext.getMessage("candidature.formation.allready", null, UI.getCurrent().getLocale()), Type.WARNING_MESSAGE);
return;
}
}
/* On défini les variables */
final String user = userController.getCurrentNoDossierCptMinOrLogin(auth);
TypeTraitement typTraitForm = formation.getTypeTraitement();
if (typTraitForm.equals(tableRefController.getTypeTraitementAccesDirect())) {
typTraitForm = tableRefController.getTypeTraitementEnAttente();
}
if (userController.isGestionnaireCandidat(auth)) {
candidatToFormationGestionnaire(candidat, formation, user, typTraitForm);
} else {
/* Verif que les dates sont bien dans l'interval */
if (!MethodUtils.isDateIncludeInInterval(LocalDate.now(), formation.getDatDebDepotForm(), formation.getDatFinDepotForm())) {
Notification.show(applicationContext.getMessage("candidature.date.error", null, UI.getCurrent().getLocale()), Type.WARNING_MESSAGE);
return;
}
/* Verif que le nb de candidatures du candidat sur ce centre ne depassent pas le
* nb parametre */
final CentreCandidature ctrCand = formation.getCommission().getCentreCandidature();
Integer nbMax;
Long nbCand;
String message;
if (parametreController.getNbVoeuxMaxIsEtab()) {
nbMax = parametreController.getNbVoeuxMax();
nbCand = candidatureRepository.getNbCandByEtab(candidat.getIdCandidat());
message = applicationContext.getMessage("candidature.etab.error", null, UI.getCurrent().getLocale());
} else {
nbMax = ctrCand.getNbMaxVoeuxCtrCand();
nbCand = candidatureRepository.getNbCandByCtrCand(ctrCand.getIdCtrCand(), candidat.getIdCandidat());
message = applicationContext.getMessage("candidature.ctrCand.error", null, UI.getCurrent().getLocale());
}
if (nbCand >= nbMax) {
Notification.show(message, Type.WARNING_MESSAGE);
return;
}
candidatToFormationCandidat(candidat, formation, user, typTraitForm, isTest);
}
}
use of fr.univlorraine.ecandidat.entities.ecandidat.TypeTraitement in project esup-ecandidat by EsupPortail.
the class CandidatureCtrCandController method validTypTrait.
/**
* Valide les types de traitement de candidatures
* @param listeCandidature
*/
public Boolean validTypTrait(final List<Candidature> listeCandidature) {
if (checkLockListCandidature(listeCandidature)) {
return false;
}
final String user = userController.getCurrentUserLogin();
for (final Candidature candidature : listeCandidature) {
Assert.notNull(candidature, applicationContext.getMessage("assert.notNull", null, UI.getCurrent().getLocale()));
/* Verrou */
if (!lockCandidatController.getLockOrNotifyCandidature(candidature)) {
continue;
}
if (!candidature.getTemValidTypTraitCand()) {
candidature.setTemValidTypTraitCand(true);
candidature.setUserModCand(user);
candidature.setDatModCand(LocalDateTime.now());
final TypeTraitement typeTraitement = candidature.getTypeTraitement();
String typeMail = "";
if (typeTraitement.equals(tableRefController.getTypeTraitementAccesDirect())) {
typeMail = NomenclatureUtils.MAIL_TYPE_TRAIT_AD;
final TypeDecisionCandidature tdc = saveTypeDecisionCandidature(candidature, candidature.getFormation().getTypeDecisionFav(), true, user, ConstanteUtils.TYP_DEC_CAND_ACTION_AD);
candidature.getTypeDecisionCandidatures().add(tdc);
candidature.setLastTypeDecision(tdc);
} else if (typeTraitement.equals(tableRefController.getTypeTraitementAccesControle())) {
typeMail = NomenclatureUtils.MAIL_TYPE_TRAIT_AC;
} else {
typeMail = NomenclatureUtils.MAIL_TYPE_TRAIT_ATT;
}
candidatureRepository.save(candidature);
mailController.sendMailByCod(candidature.getCandidat().getCompteMinima().getMailPersoCptMin(), typeMail, null, candidature, candidature.getCandidat().getLangue().getCodLangue());
}
}
Notification.show(applicationContext.getMessage("candidature.validTypTrait.success", null, UI.getCurrent().getLocale()), Type.TRAY_NOTIFICATION);
return true;
}
use of fr.univlorraine.ecandidat.entities.ecandidat.TypeTraitement in project esup-ecandidat by EsupPortail.
the class NomenclatureController method nomenclatureTypes.
/**
* Met à jours tous les types (Type d'avis, Type de traitement, Type de statut de dossier, Type de statut de piece)
*/
private void nomenclatureTypes(final Locale locale) {
/* TypeAvis */
typeAvisRepository.saveAndFlush(new TypeAvis(NomenclatureUtils.TYP_AVIS_FAV, applicationContext.getMessage("nomenclature.typavis.fa", null, locale)));
typeAvisRepository.saveAndFlush(new TypeAvis(NomenclatureUtils.TYP_AVIS_DEF, applicationContext.getMessage("nomenclature.typavis.de", null, locale)));
typeAvisRepository.saveAndFlush(new TypeAvis(NomenclatureUtils.TYP_AVIS_LISTE_COMP, applicationContext.getMessage("nomenclature.typavis.lc", null, locale)));
typeAvisRepository.saveAndFlush(new TypeAvis(NomenclatureUtils.TYP_AVIS_LISTE_ATTENTE, applicationContext.getMessage("nomenclature.typavis.la", null, locale)));
typeAvisRepository.saveAndFlush(new TypeAvis(NomenclatureUtils.TYP_AVIS_PRESELECTION, applicationContext.getMessage("nomenclature.typavis.pr", null, locale)));
/* Type de traitement */
majTypeTraitement(new TypeTraitement(NomenclatureUtils.TYP_TRAIT_AC, applicationContext.getMessage("nomenclature.typtrait.ac", null, locale), true));
majTypeTraitement(new TypeTraitement(NomenclatureUtils.TYP_TRAIT_AD, applicationContext.getMessage("nomenclature.typtrait.ad", null, locale), true));
majTypeTraitement(new TypeTraitement(NomenclatureUtils.TYP_TRAIT_AT, applicationContext.getMessage("nomenclature.typtrait.at", null, locale), false));
/* Type de statut de dossier */
majTypeStatut(new TypeStatut(NomenclatureUtils.TYPE_STATUT_ATT, applicationContext.getMessage("nomenclature.typeStatut.attente", null, locale)));
majTypeStatut(new TypeStatut(NomenclatureUtils.TYPE_STATUT_REC, applicationContext.getMessage("nomenclature.typeStatut.recept", null, locale)));
majTypeStatut(new TypeStatut(NomenclatureUtils.TYPE_STATUT_INC, applicationContext.getMessage("nomenclature.typeStatut.incomplet", null, locale)));
majTypeStatut(new TypeStatut(NomenclatureUtils.TYPE_STATUT_COM, applicationContext.getMessage("nomenclature.typeStatut.complet", null, locale)));
/* Type de statut de piece */
majTypeStatutPiece(new TypeStatutPiece(NomenclatureUtils.TYP_STATUT_PIECE_REFUSE, applicationContext.getMessage("nomenclature.typstatutpiece.ref", null, locale)));
majTypeStatutPiece(new TypeStatutPiece(NomenclatureUtils.TYP_STATUT_PIECE_TRANSMIS, applicationContext.getMessage("nomenclature.typstatutpiece.tra", null, locale)));
majTypeStatutPiece(new TypeStatutPiece(NomenclatureUtils.TYP_STATUT_PIECE_VALIDE, applicationContext.getMessage("nomenclature.typstatutpiece.val", null, locale)));
majTypeStatutPiece(new TypeStatutPiece(NomenclatureUtils.TYP_STATUT_PIECE_ATTENTE, applicationContext.getMessage("nomenclature.typstatutpiece.ate", null, locale)));
majTypeStatutPiece(new TypeStatutPiece(NomenclatureUtils.TYP_STATUT_PIECE_NON_CONCERNE, applicationContext.getMessage("nomenclature.typstatutpiece.nonconc", null, locale)));
}
Aggregations