import org.lilie.services.eliot.scolarite.TypePeriode
import org.lilie.services.eliot.notes.scolarite.NotesPeriodeService
import org.lilie.services.eliot.scolarite.Periode
-import org.lilie.services.eliot.droits.Action
-import org.lilie.services.eliot.notes.NotesDroitService
import org.lilie.services.eliot.scolarite.SousService
import org.lilie.services.eliot.scolarite.ModaliteMatiere
import java.text.SimpleDateFormat
-import org.lilie.services.eliot.notes.NotesFonction
import org.lilie.services.eliot.urllabel.breadcrumbs.BreadCrumbsItemInfo
import org.lilie.services.eliot.scolarite.Enseignement
import grails.converters.JSON
import org.lilie.services.eliot.textes.TypeActivite
+import org.lilie.services.eliot.notes.NotesFonctionnalite
class SaisieEvaluationController extends AbstractNotesController {
- NotesDroitService notesDroitService
NotesSousServiceService notesSousServiceService
NotesPeriodeService notesPeriodeService
SimpleDateFormat sdf = new SimpleDateFormat('dd/MM/yyyy', Locale.FRANCE)
def index = {
Map result = wrapResultat {
+ verifieDroitAnyFonctionnaliteInList([NotesFonctionnalite.NOTES_SAISIE_NOTES,
+ NotesFonctionnalite.NOTES_SAISIE_NOTES_ENSEIGNANTS])
if (!params.enseignementId) {
throw new IllegalArgumentException("Parametre enseignementId n'est pas reseigne")
}
+
Long typePeriodeId = params.typePeriodeId ? Long.valueOf(params.typePeriodeId) : null
Enseignement enseignement = Enseignement.get(Long.valueOf(params.enseignementId))
Service service = enseignement.service
- notesDroitService.verifieAutorisationByEtablissement(
- securiteSession,
- service.structureEnseignement.etablissement,
- Action.CONSULTATION,
- (NotesFonction.ENSEIGNANT_ASSIMILE + NotesFonction.DIRECTION_ASSIMILE).toList()
- )
-
TypePeriode typePeriode = TypePeriode.get(typePeriodeId)
String avertissement = null
// Liste des modalités matières
List<SousService> sousServices =
- notesSousServiceService.findAllSousServiceByServiceAndTypePeriode(
- service,
- typePeriode,
- true
- )
+ notesSousServiceService.findAllSousServiceByServiceAndTypePeriode(
+ service,
+ typePeriode,
+ true
+ )
List<ModaliteMatiere> modaliteMatieres =
- sousServices.collect {it.modaliteMatiere}.unique {it.id}
+ sousServices.collect {it.modaliteMatiere}.unique {it.id}
// Si aucun des sous-services n'est évaluable on affiche un message d'avertissement
if (!sousServices.isEmpty() && !sousServices.any {it.evaluable}) {
render(view: '/saisie/evaluation/index', model: result)
}
+
private def ajouteDatesLimite(Map resultat, List<Periode> periodes) {
// les devoirs doivent être dans les limits <date début de période, date
resultat.limitDebutDevoirs = limitDebutDevoirs ? sdf.format(limitDebutDevoirs) : ''
resultat.limitFinDevoirs = limitFinDevoirs ? sdf.format(limitFinDevoirs) : ''
-
+
}
+
protected Map prepareBaseModele(Object page,
String nomStructure,
String nomMatiere,
return result
}
+
/**
- * Gestion du breadCrumbs
+ * Gestion du breadCrumbs
* @param pourDirecteur si true c'est le breadcrumb pour directeur est assimile, si false, c'est le breadcrumb pour le rest
- * @return
- */
+ */
protected List getBreadCrumbsInfo(String nomStructure,
String nomMatiere,
String nomPeriodeCourt,
Long serviceId,
Long typePeriodeId,
Long enseignantId,
- Boolean pourDirecteur
- ) {
+ Boolean pourDirecteur) {
List breadCrumbsInfo = super.getBreadCrumbsInfo()
)
return breadCrumbsInfo
-
}
}