use of fr.univlorraine.ecandidat.views.windows.ConfirmWindow in project esup-ecandidat by EsupPortail.
the class AdminView method confirmRemoveLock.
/**
* Supprime un verrou
* @param lockItem le verrou a supprimer
*/
public void confirmRemoveLock(SessionPresentation lockItem) {
Item item = uisContainer.getItem(lockItem);
String textLock = lockItem.getId();
if (item != null && lockItem.getInfo() != null) {
textLock = lockItem.getInfo();
}
ConfirmWindow confirmWindow = new ConfirmWindow(applicationContext.getMessage("admin.uiList.confirmRemoveLock", new Object[] { textLock }, UI.getCurrent().getLocale()));
confirmWindow.addBtnOuiListener(e -> {
Object lock = lockController.getLockBySessionItem(lockItem);
if (lock != null) {
lockController.removeLock(lock);
} else {
Notification.show(applicationContext.getMessage("admin.uiList.confirmKillUI.error", null, UI.getCurrent().getLocale()), Type.WARNING_MESSAGE);
}
majContainer();
});
UI.getCurrent().addWindow(confirmWindow);
}
use of fr.univlorraine.ecandidat.views.windows.ConfirmWindow in project esup-ecandidat by EsupPortail.
the class CandidaturePieceController method transmettreCandidature.
/**
* Transmet la canidature
* @param candidature
* @param listener
* @param message
*/
private void transmettreCandidature(final Candidature candidature, final CandidatureListener listener, final String message) {
final ConfirmWindow confirmWindow = new ConfirmWindow(message, applicationContext.getMessage("candidature.validPJ.window.confirmTitle", null, UI.getCurrent().getLocale()));
confirmWindow.addBtnOuiListener(event -> {
candidature.setTypeStatut(tableRefController.getTypeStatutReceptionne());
candidature.setDatReceptDossierCand(LocalDate.now());
candidature.setDatModTypStatutCand(LocalDateTime.now());
candidature.setDatTransDossierCand(LocalDateTime.now());
final Candidature candidatureSave = candidatureRepository.save(candidature);
mailController.sendMailByCod(candidature.getCandidat().getCompteMinima().getMailPersoCptMin(), NomenclatureUtils.MAIL_STATUT_RE, null, candidature, candidature.getCandidat().getLangue().getCodLangue());
if (candidature.getFormation().getCommission().getTemAlertTransComm()) {
mailController.sendMailByCod(candidature.getFormation().getCommission().getMailAlertComm(), NomenclatureUtils.MAIL_COMMISSION_ALERT_TRANSMISSION, null, candidature, null);
}
listener.transmissionDossier(candidatureSave);
Notification.show(applicationContext.getMessage("candidature.validPJ.success", null, UI.getCurrent().getLocale()), Type.TRAY_NOTIFICATION);
});
UI.getCurrent().addWindow(confirmWindow);
}
use of fr.univlorraine.ecandidat.views.windows.ConfirmWindow in project esup-ecandidat by EsupPortail.
the class CandidaturePieceController method setIsConcernedFormulaire.
/**
* Change le statut est concerné d'un formulaire
* @param formulaire
* @param isConcerned
* @param candidature
* @param listener
*/
public void setIsConcernedFormulaire(final FormulairePresentation formulaire, final Boolean isConcerned, final Candidature candidature, final CandidatureListener listener) {
Assert.notNull(candidature, applicationContext.getMessage("assert.notNull", null, UI.getCurrent().getLocale()));
/* Verrou */
if (!lockCandidatController.getLockOrNotifyCandidature(candidature)) {
return;
}
final String user = userController.getCurrentUserLogin();
if (isConcerned) {
final ConfirmWindow confirmWindow = new ConfirmWindow(applicationContext.getMessage("formulaire.window.concerne", new Object[] { formulaire.getLibFormulaire() }, UI.getCurrent().getLocale()), applicationContext.getMessage("formulaire.window.conditionnel.title", null, UI.getCurrent().getLocale()));
confirmWindow.addBtnOuiListener(event -> {
/* Verrou */
if (!lockCandidatController.getLockOrNotifyCandidature(candidature)) {
return;
}
final FormulaireCandPK pk = new FormulaireCandPK(formulaire.getFormulaire().getIdFormulaire(), candidature.getIdCand());
final FormulaireCand formulaireCand = formulaireCandRepository.findOne(pk);
if (formulaireCand != null) {
formulaireCandRepository.delete(formulaireCand);
candidature.setUserModCand(user);
candidature.setDatModCand(LocalDateTime.now());
candidature.removeFormulaireCand(formulaireCand);
/* Vérification qu'il y a des réponses, si oui on passe à transmis, sinon en attente */
if (formulaire.getReponses() != null && !formulaire.getReponses().isEmpty()) {
final TypeStatutPiece statutTrans = tableRefController.getTypeStatutPieceTransmis();
formulaire.setCodStatut(statutTrans.getCodTypStatutPiece());
formulaire.setLibStatut(i18nController.getI18nTraduction(statutTrans.getI18nLibTypStatutPiece()));
} else {
final TypeStatutPiece statutAtt = tableRefController.getTypeStatutPieceAttente();
formulaire.setCodStatut(statutAtt.getCodTypStatutPiece());
formulaire.setLibStatut(i18nController.getI18nTraduction(statutAtt.getI18nLibTypStatutPiece()));
}
final Candidature candidatureSave = candidatureRepository.save(candidature);
listener.formulaireModified(formulaire, candidatureSave);
}
});
UI.getCurrent().addWindow(confirmWindow);
} else {
final ConfirmWindow confirmWindow = new ConfirmWindow(applicationContext.getMessage("formulaire.window.nonConcerne", new Object[] { formulaire.getLibFormulaire() }, UI.getCurrent().getLocale()), applicationContext.getMessage("formulaire.window.conditionnel.title", null, UI.getCurrent().getLocale()));
confirmWindow.addBtnOuiListener(event -> {
/* Verrou */
if (!lockCandidatController.getLockOrNotifyCandidature(candidature)) {
return;
}
final FormulaireCandPK pk = new FormulaireCandPK(formulaire.getFormulaire().getIdFormulaire(), candidature.getIdCand());
FormulaireCand formulaireCand = formulaireCandRepository.findOne(pk);
if (formulaireCand == null) {
formulaireCand = new FormulaireCand(pk, user, candidature, formulaire.getFormulaire());
formulaireCand.setUserModFormulaireCand(user);
final TypeStatutPiece statutNotConcern = tableRefController.getTypeStatutPieceNonConcerne();
formulaire.setCodStatut(statutNotConcern.getCodTypStatutPiece());
formulaire.setLibStatut(i18nController.getI18nTraduction(statutNotConcern.getI18nLibTypStatutPiece()));
formulaireCand = formulaireCandRepository.save(formulaireCand);
candidature.setUserModCand(user);
candidature.updateFormulaireCand(formulaireCand);
candidature.setDatModCand(LocalDateTime.now());
final Candidature candidatureSave = candidatureRepository.save(candidature);
listener.formulaireModified(formulaire, candidatureSave);
}
});
UI.getCurrent().addWindow(confirmWindow);
}
}
use of fr.univlorraine.ecandidat.views.windows.ConfirmWindow in project esup-ecandidat by EsupPortail.
the class CandidaturePieceController method setIsConcernedPieceJustificative.
/**
* Change le statut est concerne d'une pj
* @param pieceJustif
* @param isConcerned
* @param candidature
* @param listener
*/
public void setIsConcernedPieceJustificative(final PjPresentation pieceJustif, final Boolean isConcerned, final Candidature candidature, final CandidatureListener listener) {
Assert.notNull(candidature, applicationContext.getMessage("assert.notNull", null, UI.getCurrent().getLocale()));
/* Verrou */
if (!lockCandidatController.getLockOrNotifyCandidature(candidature)) {
return;
}
final String user = userController.getCurrentUserLogin();
if (isConcerned) {
final ConfirmWindow confirmWindow = new ConfirmWindow(applicationContext.getMessage("pj.window.concerne", new Object[] { pieceJustif.getLibPj() }, UI.getCurrent().getLocale()), applicationContext.getMessage("pj.window.conditionnel.title", null, UI.getCurrent().getLocale()));
confirmWindow.addBtnOuiListener(event -> {
/* Verrou */
if (!lockCandidatController.getLockOrNotifyCandidature(candidature)) {
return;
}
if (isPjModified(pieceJustif, candidature, true, listener)) {
return;
}
PjCand pjCand = null;
if (pieceJustif.getPJCommune()) {
final List<PjCand> listePjCand = pjCandRepository.findByIdIdPjAndCandidatureCandidatIdCandidatAndCandidatureFormationTemDematFormOrderByDatModPjCandDesc(pieceJustif.getPieceJustif().getIdPj(), candidature.getCandidat().getIdCandidat(), true);
if (listePjCand != null && listePjCand.size() > 0) {
// on cherche d'abord en priorité si la pièce est présente sur la candidature
final Optional<PjCand> pjCandOpt = listePjCand.stream().filter(e -> e.getCandidature().getIdCand().equals(pieceJustif.getIdCandidature())).findFirst();
if (pjCandOpt.isPresent()) {
pjCand = pjCandOpt.get();
} else {
pjCand = listePjCand.get(0);
}
}
} else {
final PjCandPK pk = new PjCandPK(pieceJustif.getPieceJustif().getIdPj(), candidature.getIdCand());
pjCand = pjCandRepository.findOne(pk);
}
if (pjCand != null && pjCand.getFichier() == null) {
pjCandRepository.delete(pjCand);
candidature.setUserModCand(user);
candidature.setDatModCand(LocalDateTime.now());
candidature.removePjCand(pjCand);
final TypeStatutPiece statutAtt = tableRefController.getTypeStatutPieceAttente();
pieceJustif.setCodStatut(statutAtt.getCodTypStatutPiece());
pieceJustif.setLibStatut(i18nController.getI18nTraduction(statutAtt.getI18nLibTypStatutPiece()));
pieceJustif.setDatModification(null);
final Candidature candidatureSave = candidatureRepository.save(candidature);
listener.pjModified(pieceJustif, candidatureSave);
}
});
UI.getCurrent().addWindow(confirmWindow);
} else {
final ConfirmWindow confirmWindow = new ConfirmWindow(applicationContext.getMessage("pj.window.nonConcerne", new Object[] { pieceJustif.getLibPj() }, UI.getCurrent().getLocale()), applicationContext.getMessage("pj.window.conditionnel.title", null, UI.getCurrent().getLocale()));
confirmWindow.addBtnOuiListener(event -> {
/* Verrou */
if (!lockCandidatController.getLockOrNotifyCandidature(candidature)) {
return;
}
if (isPjModified(pieceJustif, candidature, true, listener)) {
return;
}
PjCand pjCand = null;
final PjCandPK pk = new PjCandPK(pieceJustif.getPieceJustif().getIdPj(), candidature.getIdCand());
if (pieceJustif.getPJCommune()) {
final List<PjCand> listePjCand = pjCandRepository.findByIdIdPjAndCandidatureCandidatIdCandidatAndCandidatureFormationTemDematFormOrderByDatModPjCandDesc(pieceJustif.getPieceJustif().getIdPj(), candidature.getCandidat().getIdCandidat(), true);
if (listePjCand != null && listePjCand.size() > 0) {
// on cherche d'abord en priorité si la pièce est présente sur la candidature
final Optional<PjCand> pjCandOpt = listePjCand.stream().filter(e -> e.getCandidature().getIdCand().equals(pieceJustif.getIdCandidature())).findFirst();
if (pjCandOpt.isPresent()) {
pjCand = pjCandOpt.get();
} else {
pjCand = listePjCand.get(0);
}
}
} else {
pjCand = pjCandRepository.findOne(pk);
}
if (pjCand == null) {
pjCand = new PjCand(pk, user, candidature, pieceJustif.getPieceJustif());
pjCand.setLibFilePjCand(null);
pjCand.setUserModPjCand(user);
pjCand.setFichier(null);
final TypeStatutPiece statutNotConcern = tableRefController.getTypeStatutPieceNonConcerne();
pieceJustif.setCodStatut(statutNotConcern.getCodTypStatutPiece());
pieceJustif.setLibStatut(i18nController.getI18nTraduction(statutNotConcern.getI18nLibTypStatutPiece()));
pjCand.setTypeStatutPiece(statutNotConcern);
pjCand = pjCandRepository.saveAndFlush(pjCand);
// obligé de recharger l'objet car le datetime est arrondi :(
final PjCand pjCandSave = pjCandRepository.findOne(pk);
pieceJustif.setFilePj(null);
pieceJustif.setCodStatut(statutNotConcern.getCodTypStatutPiece());
pieceJustif.setLibStatut(i18nController.getI18nTraduction(statutNotConcern.getI18nLibTypStatutPiece()));
pieceJustif.setIdCandidature(candidature.getIdCand());
pieceJustif.setDatModification(pjCandSave.getDatModPjCand());
candidature.setUserModCand(user);
candidature.updatePjCand(pjCandSave);
candidature.setDatModCand(LocalDateTime.now());
final Candidature candidatureSave = candidatureRepository.save(candidature);
listener.pjModified(pieceJustif, candidatureSave);
}
});
UI.getCurrent().addWindow(confirmWindow);
}
}
use of fr.univlorraine.ecandidat.views.windows.ConfirmWindow in project esup-ecandidat by EsupPortail.
the class CentreCandidatureController method deleteCentreCandidature.
/**
* Supprime une centreCandidature
*
* @param centreCandidature
*/
public void deleteCentreCandidature(final CentreCandidature centreCandidature) {
Assert.notNull(centreCandidature, applicationContext.getMessage("assert.notNull", null, UI.getCurrent().getLocale()));
if (!isAutorizedToDelete(centreCandidature)) {
return;
}
/* Verrou */
if (!lockController.getLockOrNotify(centreCandidature, null)) {
return;
}
String txtDelete = applicationContext.getMessage("ctrCand.window.confirmDelete", new Object[] { centreCandidature.getCodCtrCand() }, UI.getCurrent().getLocale());
if (gestionnaireRepository.countByCentreCandidature(centreCandidature) > 0) {
txtDelete = txtDelete + " " + applicationContext.getMessage("ctrCand.window.delete.warning", null, UI.getCurrent().getLocale());
}
ConfirmWindow confirmWindow = new ConfirmWindow(txtDelete, applicationContext.getMessage("ctrCand.window.confirmDeleteTitle", null, UI.getCurrent().getLocale()));
confirmWindow.addBtnOuiListener(e -> {
/* Contrôle que le client courant possède toujours le lock */
if (lockController.getLockOrNotify(centreCandidature, null)) {
centreCandidature.getGestionnaires().forEach(gest -> {
droitProfilController.deleteDroitProfilInd(gest.getDroitProfilInd());
});
centreCandidature.getGestionnaires().clear();
centreCandidatureRepository.delete(centreCandidature);
/* Suppression dans l'offre */
offreFormationController.removeCtrCand(centreCandidature);
/* on controle qu'on ne desactive pas le centre de candidature en cours */
controlDisableOrDeleteCtrCandEnCours(centreCandidature, true);
/* Suppression du lock */
lockController.releaseLock(centreCandidature);
}
});
confirmWindow.addCloseListener(e -> {
/* Suppression du lock */
lockController.releaseLock(centreCandidature);
});
UI.getCurrent().addWindow(confirmWindow);
}
Aggregations