use of fr.univlorraine.ecandidat.entities.ecandidat.SiScolBacOuxEqu in project esup-ecandidat by EsupPortail.
the class SiScolApogeeWSServiceImpl method checkBacSpecialiteOption.
@Override
public String checkBacSpecialiteOption(final CandidatBacOuEqu bac) {
if (bac == null) {
return null;
}
final EntityManagerFactory emf = Persistence.createEntityManagerFactory("pun-jpa-siscol");
final EntityManager em = emf.createEntityManager();
final String queryString = "select PKB_BAC.VERIFIER_SPECIALITES_ET_OPTIONS_BAC(?,?,?,?,?,?,?,?,?) from dual";
final Query query = em.createNativeQuery(queryString);
query.setParameter(1, bac.getAnneeObtBac());
query.setParameter(2, Optional.ofNullable(bac.getSiScolBacOuxEqu()).map(SiScolBacOuxEqu::getCodBac).orElse(null));
query.setParameter(3, Optional.ofNullable(bac.getSiScolSpe1BacTer()).map(SiScolSpecialiteBac::getCodSpeBac).orElse(null));
query.setParameter(4, Optional.ofNullable(bac.getSiScolSpe2BacTer()).map(SiScolSpecialiteBac::getCodSpeBac).orElse(null));
query.setParameter(5, Optional.ofNullable(bac.getSiScolSpeBacPre()).map(SiScolSpecialiteBac::getCodSpeBac).orElse(null));
query.setParameter(6, Optional.ofNullable(bac.getSiScolOpt1Bac()).map(SiScolOptionBac::getCodOptBac).orElse(null));
query.setParameter(7, Optional.ofNullable(bac.getSiScolOpt2Bac()).map(SiScolOptionBac::getCodOptBac).orElse(null));
query.setParameter(8, Optional.ofNullable(bac.getSiScolOpt3Bac()).map(SiScolOptionBac::getCodOptBac).orElse(null));
query.setParameter(9, Optional.ofNullable(bac.getSiScolOpt4Bac()).map(SiScolOptionBac::getCodOptBac).orElse(null));
final Object res = query.getSingleResult();
return (ConstanteUtils.APO_CHECK_BAC_VALIDE.equals(res) || ConstanteUtils.APO_CHECK_BAC_NO_VERIF.equals(res)) ? null : (String) res;
}
use of fr.univlorraine.ecandidat.entities.ecandidat.SiScolBacOuxEqu in project esup-ecandidat by EsupPortail.
the class SiScolApogeeWSServiceImpl method getListSiScolBacOuxEqu.
/**
* @see fr.univlorraine.ecandidat.services.siscol.SiScolGenericService#getListSiScolBacOuxEqu()
*/
@Override
public List<SiScolBacOuxEqu> getListSiScolBacOuxEqu() throws SiScolException {
try {
final List<SiScolBacOuxEqu> liste = new ArrayList<>();
executeQueryListEntity(BacOuxEqu.class).forEach(bac -> {
liste.add(new SiScolBacOuxEqu(bac.getCodBac(), bac.getLibBac(), bac.getLicBac(), MethodUtils.getBooleanFromTemoin(bac.getTemEnSveBac()), MethodUtils.getBooleanFromTemoin(bac.getTemNatBac()), bac.getDaaDebVldBac(), bac.getDaaFinVldBac(), MethodUtils.getBooleanFromTemoin(bac.getTemCtrlIne()), bac.getAnnCtrlIne()));
});
return liste;
} catch (final Exception e) {
throw new SiScolException("SiScol database error on getListSiScolBacOuxEqu", e.getCause());
}
}
use of fr.univlorraine.ecandidat.entities.ecandidat.SiScolBacOuxEqu in project esup-ecandidat by EsupPortail.
the class CandidatParcoursController method getBacByApogeeData.
/**
* Renvoie un bac grace aux données apogee
* @param bacApogee
* @param candidat
* @param needToDeleteDataApogee
* @return le bac provenant d'apogee
*/
public CandidatBacOuEqu getBacByApogeeData(final WSBac bacApogee, final Candidat candidat, final Boolean needToDeleteDataApogee) {
if (bacApogee != null) {
if (candidat.getCandidatBacOuEqu() != null) {
candidatBacOuEquRepository.delete(candidat.getCandidatBacOuEqu());
candidat.setCandidatBacOuEqu(null);
}
SiScolPays pays = null;
final SiScolDepartement dpt = tableRefController.getDepartementByCode(bacApogee.getCodDep());
if (dpt != null) {
pays = cacheController.getPaysFrance();
}
Integer anneeObt = null;
try {
anneeObt = Integer.valueOf(bacApogee.getDaaObtBacIba());
} catch (final Exception e) {
}
final SiScolCommune commune = null;
final SiScolEtablissement etab = tableRefController.getEtablissementByCode(bacApogee.getCodEtb());
final SiScolMentionNivBac mention = tableRefController.getMentionNivBacByCode(bacApogee.getCodMnb());
final SiScolBacOuxEqu bacOuEqu = tableRefController.getBacOuEquByCode(bacApogee.getCodBac());
if (bacOuEqu == null) {
return null;
}
/* Spécialités */
final SiScolSpecialiteBac speBacPre = tableRefController.getSpecialiteBacByCode(bacApogee.getCodSpeBacPre());
final SiScolSpecialiteBac spe1Bac = tableRefController.getSpecialiteBacByCode(bacApogee.getCodSpe1Bac());
final SiScolSpecialiteBac spe2Bac = tableRefController.getSpecialiteBacByCode(bacApogee.getCodSpe2Bac());
/* Options */
final SiScolOptionBac opt1Bac = tableRefController.getOptionBacByCode(bacApogee.getCodOpt1Bac());
final SiScolOptionBac opt2Bac = tableRefController.getOptionBacByCode(bacApogee.getCodOpt2Bac());
final SiScolOptionBac opt3Bac = tableRefController.getOptionBacByCode(bacApogee.getCodOpt3Bac());
final SiScolOptionBac opt4Bac = tableRefController.getOptionBacByCode(bacApogee.getCodOpt4Bac());
final CandidatBacOuEqu candidatBacOuEqu = new CandidatBacOuEqu(candidat.getIdCandidat(), anneeObt, bacOuEqu, commune, dpt, etab, mention, pays, candidat, false, speBacPre, spe1Bac, spe2Bac, opt1Bac, opt2Bac, opt3Bac, opt4Bac);
if (MethodUtils.validateBean(candidatBacOuEqu, logger)) {
return candidatBacOuEquRepository.save(candidatBacOuEqu);
}
return null;
} else {
/* if (candidat.getTemUpdatableCandidat() && candidat.getCandidatBacOuEqu()!=null && !candidat.getCandidatBacOuEqu().getTemUpdatableBac()){
* candidat.getCandidatBacOuEqu().setTemUpdatableBac(true);
* return candidatBacOuEquRepository.save(candidat.getCandidatBacOuEqu());
* } */
if (needToDeleteDataApogee && candidat.getCandidatBacOuEqu() != null) {
candidatBacOuEquRepository.delete(candidat.getCandidatBacOuEqu());
candidat.setCandidatBacOuEqu(null);
}
return candidat.getCandidatBacOuEqu();
}
}
use of fr.univlorraine.ecandidat.entities.ecandidat.SiScolBacOuxEqu in project esup-ecandidat by EsupPortail.
the class CustomFieldGroupFieldFactoryCandidat method createField.
@SuppressWarnings("rawtypes")
@Override
public <T extends Field> T createField(final Class<?> dataType, final Class<T> fieldType) {
/* Le type du champs est un TextArea */
if (fieldType == RequiredTextArea.class) {
return fieldType.cast(new RequiredTextArea());
} else /* Le type du champs est un ComboBoxPresentation */
if (fieldType == ComboBoxPresentation.class) {
return fieldType.cast(new ComboBoxPresentation());
} else /* La valeur du champs est un LocalDate */
if (dataType == LocalDate.class) {
final RequiredDateField field = new RequiredDateField();
field.setImmediate(true);
field.setConverter(new LocalDateToDateConverter());
return fieldType.cast(field);
} else /* La valeur est siScolPays */
if (dataType == SiScolPays.class) {
return fieldType.cast(new ComboBoxPays(cacheController.getListePays().stream().filter(e -> e.getTemEnSvePay()).collect(Collectors.toList()), applicationContext.getMessage("infoperso.table.siScolPaysNaiss.suggest", null, UI.getCurrent().getLocale())));
} else /* La valeur est siScolDepartement */
if (dataType == SiScolDepartement.class) {
return fieldType.cast(new ComboBoxDepartement(cacheController.getListDepartement().stream().filter(e -> e.getTemEnSveDep()).collect(Collectors.toList()), applicationContext.getMessage("infoperso.table.siScolDepartement.suggest", null, UI.getCurrent().getLocale())));
} else /* La valeur est SiScolCommune */
if (dataType == SiScolCommune.class) {
return fieldType.cast(new ComboBoxCommune(applicationContext.getMessage("adresse.commune.suggest", null, UI.getCurrent().getLocale())));
} else /* La valeur est SiScolCommune */
if (dataType == SiScolEtablissement.class) {
return fieldType.cast(new ComboBoxEtablissement(applicationContext.getMessage("infobac.siScolEtablissement.suggest", null, UI.getCurrent().getLocale())));
} else /* La valeur est un SiScolBacOuxEqu */
if (dataType == SiScolBacOuxEqu.class) {
return fieldType.cast(new ComboBoxBacOuEqu(cacheController.getListeBacOuxEqu().stream().filter(e -> e.getTemEnSveBac()).collect(Collectors.toList())));
} else /* La valeur est un SiScolDipAutCur */
if (dataType == SiScolDipAutCur.class) {
return fieldType.cast(new RequiredComboBox<>(cacheController.getListeDipAutCur().stream().filter(e -> e.getTemEnSveDac()).collect(Collectors.toList()), SiScolDipAutCur.class));
} else /* La valeur est un SiScolMention */
if (dataType == SiScolMention.class) {
return fieldType.cast(new RequiredComboBox<>(cacheController.getListeMention().stream().filter(e -> e.getTemEnSveMen()).collect(Collectors.toList()), SiScolMention.class));
} else /* La valeur est un SiScolMentionNivBac */
if (dataType == SiScolMentionNivBac.class) {
return fieldType.cast(new RequiredComboBox<>(cacheController.getListeMentionNivBac().stream().filter(e -> e.getTemEnSveMnb()).collect(Collectors.toList()), SiScolMentionNivBac.class));
} else /* La valeur est un SiScolSpecialiteBac */
if (dataType == SiScolSpecialiteBac.class) {
return fieldType.cast(new ComboBoxSpecialiteBac(cacheController.getListeSpecialiteBac(), cacheController.getListeBacSpeBac()));
} else /* La valeur est un SiScolOptionBac */
if (dataType == SiScolOptionBac.class) {
return fieldType.cast(new ComboBoxOptionBac(cacheController.getListeOptionBac(), cacheController.getListeBacOptBac()));
} else /* La valeur est un type d'avis */
if (dataType == Civilite.class) {
return fieldType.cast(new RequiredComboBox<>(cacheController.getListeCivilte(), Civilite.class));
} else /* La valeur est une langue */
if (dataType == Langue.class) {
final List<Langue> listeLangue = new ArrayList<>();
listeLangue.add(cacheController.getLangueDefault());
listeLangue.addAll(cacheController.getLangueEnServiceWithoutDefault());
return fieldType.cast(new ComboBoxLangue(listeLangue, true));
} else /* La valeur du champs est un LocalTime */
if (dataType == LocalTime.class) {
return fieldType.cast(new LocalTimeField());
} else /* La valeur du champs est un Integer */
if (dataType == Integer.class) {
return fieldType.cast(new RequiredIntegerField());
} else /* La valeur du champs est une date */
if (dataType == Date.class) {
return fieldType.cast(new RequiredDateField());
} else /* La valeur du champs est un Boolean */
if (dataType == Boolean.class) {
return fieldType.cast(new RequiredCheckBox());
} else /* Sinon, le champs est un simple TextField */
{
return fieldType.cast(new RequiredTextField());
}
}
use of fr.univlorraine.ecandidat.entities.ecandidat.SiScolBacOuxEqu 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);
}
}
Aggregations