use of fr.univlorraine.ecandidat.services.siscol.SiScolException in project esup-ecandidat by EsupPortail.
the class SiScolController method syncUtilisateurs.
/**
* Synchronise les utilisateurs
* @throws SiScolException
*/
private void syncUtilisateurs() throws SiScolException {
final List<SiScolUtilisateur> listeSiScol = siScolService.getListSiScolUtilisateur();
if (listeSiScol == null) {
return;
}
siScolUtilisateurRepository.deleteAllInBatch();
/* Erreur de duplicate entry a toulouse et rennes */
Exception ex = null;
Integer i = 1;
for (final SiScolUtilisateur utilisateur : listeSiScol) {
utilisateur.setIdUti(i);
try {
siScolUtilisateurRepository.saveAndFlush(utilisateur);
i++;
} catch (final Exception e) {
ex = e;
}
}
if (ex != null) {
logger.error("Erreur a l'insertion des utilisateurs", ex);
}
}
use of fr.univlorraine.ecandidat.services.siscol.SiScolException in project esup-ecandidat by EsupPortail.
the class OpiController method launchBatchAsyncOPIPj.
/**
* Lance le batch de creation de PJ OPI asynchrone
* @param batchHisto
*/
public void launchBatchAsyncOPIPj(final BatchHisto batchHisto) {
final Campagne campagne = campagneController.getCampagneActive();
if (campagne == null) {
return;
}
final List<PjOpi> listePjOpi = pjOpiRepository.findByCandidatCompteMinimaCampagneIdCampAndDatDeversementIsNull(campagne.getIdCamp());
batchController.addDescription(batchHisto, "Lancement batch, deversement de " + listePjOpi.size() + " PJOPI");
Integer i = 0;
Integer cpt = 0;
Integer nbError = 0;
for (final PjOpi pjOpi : listePjOpi) {
try {
deversePjOpi(pjOpi);
} catch (final SiScolException e) {
nbError++;
}
i++;
cpt++;
if (i.equals(ConstanteUtils.BATCH_LOG_NB_SHORT)) {
batchController.addDescription(batchHisto, "Deversement de " + cpt + " PJOPI, dont " + nbError + " erreur(s)");
i = 0;
}
}
batchController.addDescription(batchHisto, "Fin batch, deversement de " + cpt + " PJOPI, dont " + nbError + " erreur(s)");
}
use of fr.univlorraine.ecandidat.services.siscol.SiScolException in project esup-ecandidat by EsupPortail.
the class CandidatInfoPersoWindow method initForm.
/**
* Initialise le formulaire
*/
@SuppressWarnings("unchecked")
private void initForm() {
final Candidat candidat = fieldGroup.getItemDataSource().getBean();
/* Initialisation des champs */
paysField = (ComboBoxPays) fieldGroup.getField(Candidat_.siScolPaysNaiss.getName());
dptField = (ComboBoxDepartement) fieldGroup.getField(Candidat_.siScolDepartement.getName());
nomPatCandidatField = (RequiredTextField) fieldGroup.getField(Candidat_.nomPatCandidat.getName());
nomUsuCandidatField = (RequiredTextField) fieldGroup.getField(Candidat_.nomUsuCandidat.getName());
prenomCandidatField = (RequiredTextField) fieldGroup.getField(Candidat_.prenomCandidat.getName());
autrePrenCandidatField = (RequiredTextField) fieldGroup.getField(Candidat_.autrePrenCandidat.getName());
libVilleNaissCandidatField = (RequiredTextField) fieldGroup.getField(Candidat_.libVilleNaissCandidat.getName());
telCandidatField = (RequiredTextField) fieldGroup.getField(Candidat_.telCandidat.getName());
telPortCandidatField = (RequiredTextField) fieldGroup.getField(Candidat_.telPortCandidat.getName());
civiliteField = (RequiredComboBox<Civilite>) fieldGroup.getField(Candidat_.civilite.getName());
datNaissCandidatField = (RequiredDateField) fieldGroup.getField(Candidat_.datNaissCandidat.getName());
ineAndKeyField = (RequiredTextField) fieldGroup.getField(CHAMPS_INE_AND_FIELD);
if (candidat.getIneCandidat() != null && candidat.getCleIneCandidat() != null) {
ineAndKeyField.setValue(candidat.getIneCandidat() + candidat.getCleIneCandidat());
}
ineAndKeyField.setMaxLength(11);
// cleIneField.setWidthUndefined();
// ineField.setValue("1204014627");
natField = (ComboBoxPays) fieldGroup.getField(Candidat_.siScolPaysNat.getName());
/* No tel expression reguliere */
final RegexpValidator telValidator = new RegexpValidator(ConstanteUtils.regExNoTel, applicationContext.getMessage("validation.error.tel", null, UI.getCurrent().getLocale()));
telCandidatField.addValidator(telValidator);
telPortCandidatField.addValidator(telValidator);
// si le candidat à un INE null mais un supannEtuId, on va charger le candidat depuis apogee. Si on le trouve, on value l'INE et on bloque la saisie de l'INE
if (candidat.getIneCandidat() == null && candidat.getCompteMinima().getSupannEtuIdCptMin() != null && !candidat.getCompteMinima().getSupannEtuIdCptMin().equals("")) {
try {
individuApogee = candidatController.recupInfoCandidat(candidat.getCompteMinima().getSupannEtuIdCptMin(), null, null);
if (individuApogee != null && individuApogee.getCodNneInd() != null && individuApogee.getCodCleNneInd() != null) {
ineAndKeyField.setValue(individuApogee.getCodNneInd() + individuApogee.getCodCleNneInd());
ineAndKeyField.setEnabled(false);
}
} catch (final SiScolException e1) {
Notification.show(applicationContext.getMessage("siscol.connect.error", null, UI.getCurrent().getLocale()), Type.WARNING_MESSAGE);
close();
}
// si le candidat à un INE et supannEtuId valué, on bloque la saisie de l'INE
} else if (candidat.getIneCandidat() != null && !candidat.getIneCandidat().equals("") && candidat.getCompteMinima().getSupannEtuIdCptMin() != null && !candidat.getCompteMinima().getSupannEtuIdCptMin().equals("")) {
ineAndKeyField.setEnabled(false);
}
/* ajout des listeners */
/* Champs nationalité */
natField.setToNationalite(applicationContext.getMessage("infoperso.table.siScolPaysNat.suggest", null, UI.getCurrent().getLocale()));
/* natField.addValueChangeListener(e->{
* if (e.getProperty().getValue() instanceof SiScolPays){
* SiScolPays nationaliteSelected = (SiScolPays)e.getProperty().getValue() ;
* initNationalite(nationaliteSelected);
* }
* }); */
/* Champs pays */
paysField.addValueChangeListener(e -> {
if (e.getProperty().getValue() instanceof SiScolPays) {
final SiScolPays paysSelected = (SiScolPays) e.getProperty().getValue();
initPays(paysSelected, dptField, null);
}
});
/* Champs nationalité */
if (candidat.getSiScolPaysNat() == null) {
natField.setValue(cacheController.getPaysFrance());
} else {
natField.setValue(candidat.getSiScolPaysNat());
// initNationalite(candidat.getSiScolPaysNat());
}
/* Champs pays */
if (candidat.getSiScolPaysNaiss() == null) {
paysField.setValue(cacheController.getPaysFrance());
} else {
paysField.setValue(candidat.getSiScolPaysNaiss());
initPays(candidat.getSiScolPaysNaiss(), dptField, candidat.getSiScolDepartement());
}
}
use of fr.univlorraine.ecandidat.services.siscol.SiScolException in project esup-ecandidat by EsupPortail.
the class CandidatPieceController method recordPjFromApo.
/**
* Insere les nouvelles pièces
* @param candidat
* @throws SiScolException
*/
@Transactional(rollbackFor = SiScolException.class)
private void recordPjFromApo(final Candidat candidat) throws SiScolException {
if (candidat == null || candidat.getCompteMinima().getSupannEtuIdCptMin() == null || !isWsPJEnable()) {
return;
}
// on collecte les code Apogee de pieces et on constitue une liste de codeApogee distinct
List<String> listeCodeApo = pieceJustifController.getAllPieceJustifs().stream().filter(piece -> piece.getCodApoPj() != null && !piece.getCodApoPj().equals("")).map(PieceJustif::getCodApoPj).distinct().collect(Collectors.toList());
List<PjCandidat> liste = new ArrayList<>();
// on ajoute ses nouvelles pieces
for (String codeTpj : listeCodeApo) {
WSPjInfo info = siScolService.getPjInfoFromApogee(null, candidat.getCompteMinima().getSupannEtuIdCptMin(), codeTpj);
if (info != null) {
PjCandidatPK pk = new PjCandidatPK(candidat.getIdCandidat(), info.getCodAnu(), info.getCodTpj());
PjCandidat pjCandidat = new PjCandidat();
pjCandidat.setId(pk);
pjCandidat.setNomFicPjCandidat(info.getNomFic());
pjCandidat.setCandidat(candidat);
if (info.getDatExp() != null) {
pjCandidat.setDatExpPjCandidat(LocalDateTime.parse(info.getDatExp(), formatterDateTimeApoWsPj));
}
if (MethodUtils.validateBean(pjCandidat, logger)) {
liste.add(pjCandidatRepository.save(pjCandidat));
} else {
throw new SiScolException("Erreur de validation");
}
}
}
candidat.setPjCandidats(liste);
}
use of fr.univlorraine.ecandidat.services.siscol.SiScolException in project esup-ecandidat by EsupPortail.
the class CandidatController method synchronizeCandidat.
/**
* Synchronise un compte candidat avec apogée
* @param cptMin
*/
public void synchronizeCandidat(final CompteMinima cptMin, final CandidatAdminListener listener) {
if (!parametreController.getSiScolMode().equals(ConstanteUtils.SI_SCOL_APOGEE)) {
return;
}
final String lockError = getLockErrorFull(cptMin);
if (lockError != null) {
Notification.show(lockError, Type.WARNING_MESSAGE);
return;
}
final ConfirmWindow win = new ConfirmWindow(applicationContext.getMessage("candidat.sync.apo.window", null, UI.getCurrent().getLocale()));
win.addBtnOuiListener(e -> {
Candidat candidat = cptMin.getCandidat();
if (candidat == null) {
candidat = new Candidat(cptMin, cacheController.getLangueDefault());
}
try {
WSIndividu individu = null;
if (cptMin != null && cptMin.getSupannEtuIdCptMin() != null && !cptMin.getSupannEtuIdCptMin().equals("")) {
individu = recupInfoCandidat(cptMin.getSupannEtuIdCptMin(), null, null);
if (individu != null && isINEPresent(individu.getCodNneInd(), individu.getCodCleNneInd(), candidat)) {
Notification.show(applicationContext.getMessage("infoperso.ine.allready.present", null, UI.getCurrent().getLocale()), Type.WARNING_MESSAGE);
return;
}
} else if (candidat != null && candidat.getIneCandidat() != null && !candidat.getIneCandidat().equals("") && candidat.getCleIneCandidat() != null && !candidat.getCleIneCandidat().equals("")) {
final String ine = candidat.getIneCandidat();
final String cleIne = candidat.getCleIneCandidat();
if (ine == null || ine.equals("") || cleIne == null || cleIne.equals("")) {
Notification.show(applicationContext.getMessage("candidat.sync.apo.ine.absent", null, UI.getCurrent().getLocale()), Type.WARNING_MESSAGE);
return;
}
if (isINEPresent(ine, cleIne, candidat)) {
Notification.show(applicationContext.getMessage("infoperso.ine.allready.present", null, UI.getCurrent().getLocale()), Type.WARNING_MESSAGE);
return;
}
individu = recupInfoCandidat(null, ine, cleIne);
}
if (individu != null) {
candidat = getCandidatByApogeeData(individu, candidat);
if (MethodUtils.validateBean(candidat, logger)) {
if (individu.getAdresse() != null) {
final Adresse adresse = getAdresseByApogeeData(individu.getAdresse());
if (MethodUtils.validateBean(adresse, logger)) {
final Adresse lastAdresse = candidat.getAdresse();
if (lastAdresse != null) {
adresse.setIdAdr(lastAdresse.getIdAdr());
}
candidat.setAdresse(adresse);
}
} else {
candidat.setAdresse(null);
}
candidat = saveCandidat(candidat, individu, listener);
candidatParcoursController.getBacByApogeeData(individu.getBac(), candidat, true);
if (parametreController.getIsGetCursusInterne()) {
candidatParcoursController.getCursusInterne(individu.getListCursusInterne(), candidat, true);
}
} else {
Notification.show(applicationContext.getMessage("candidat.sync.apo.etu.nok", null, UI.getCurrent().getLocale()), Type.WARNING_MESSAGE);
return;
}
} else {
Notification.show(applicationContext.getMessage("candidat.sync.apo.etu.absent", null, UI.getCurrent().getLocale()), Type.WARNING_MESSAGE);
return;
}
} catch (final SiScolException f) {
logger.error(applicationContext.getMessage("siscol.connect.error", null, UI.getCurrent().getLocale()), f);
Notification.show(applicationContext.getMessage("siscol.connect.error", null, UI.getCurrent().getLocale()), Type.WARNING_MESSAGE);
}
Notification.show(applicationContext.getMessage("candidat.sync.apo.ok", null, UI.getCurrent().getLocale()), Type.TRAY_NOTIFICATION);
});
UI.getCurrent().addWindow(win);
}
Aggregations