[Scodoc-devel] [SVN] Scolar : [1526] Export Apo:

eviennet at lipn.univ-paris13.fr eviennet at lipn.univ-paris13.fr
Mer 13 Juil 13:05:14 CEST 2016


Une pièce jointe HTML a été nettoyée...
URL: <https://www-rt.iutv.univ-paris13.fr/pipermail/scodoc-devel/attachments/20160713/f1f33dd1/attachment.html>
-------------- section suivante --------------
Modified: branches/ScoDoc7/sco_apogee_csv.py
===================================================================
--- branches/ScoDoc7/sco_apogee_csv.py	2016-07-12 22:06:22 UTC (rev 1525)
+++ branches/ScoDoc7/sco_apogee_csv.py	2016-07-13 11:05:10 UTC (rev 1526)
@@ -285,7 +285,10 @@
             # resultat du semestre
             decision_apo = code_scodoc_to_apo(decision['code'])
             note = nt.get_etud_moy_gen(etudid)
-            note_str =  _apo_fmt_note(note)
+            if decision_apo == 'DEF' or decision['code'] == 'DEM' or decision['code'] == DEF:
+                note_str = '0,01' # note non nulle pour les démissionnaires
+            else:
+                note_str =  _apo_fmt_note(note)
             return dict( N=note_str, B=20, J='', R=decision_apo )
         
         # UE ?
@@ -360,13 +363,15 @@
         self.sems_etape = comp_apo_sems(context, self.etape_apogee, self.annee_scolaire )
         self.etape_formsemestre_ids = { s['formsemestre_id'] for s in self.sems_etape }
         if self.periode != None:
-            self.sems_periode = [ s for s in self.sems_etape if s['periode'] == self.periode ]
+            self.sems_periode = [ s for s in self.sems_etape 
+                                  if (s['periode'] == self.periode) or s['semestre_id'] < 0 ]
             self.cur_semestre_id = self.sems_periode[0]['semestre_id']
             # Les semestres de la période ont le même indice, n'est-ce pas ?
             assert all( self.cur_semestre_id == s['semestre_id'] for s in self.sems_periode )
             # Cette condition sera inadaptée si semestres décalés 
             # (mais ils n'ont pas d'étape annuelle, espérons!)
-            self.jury_intermediaire = (self.cur_semestre_id % 2) != 0
+            if self.cur_semestre_id >= 0: # non pertinent pour sessions sans semestres
+                self.jury_intermediaire = (self.cur_semestre_id % 2) != 0
         else:
             self.sems_periode = None
     

Modified: branches/ScoDoc7/sco_semset.py
===================================================================
--- branches/ScoDoc7/sco_semset.py	2016-07-12 22:06:22 UTC (rev 1525)
+++ branches/ScoDoc7/sco_semset.py	2016-07-13 11:05:10 UTC (rev 1526)
@@ -247,9 +247,24 @@
     s = SemSet(context, title=title, annee_scolaire=annee_scolaire, sem_id=sem_id)
     return REQUEST.RESPONSE.redirect('semset_page')
 
+def do_semset_delete(context, semset_id, dialog_confirmed=False, REQUEST=None):
+    """Delete a semset"""
+    if not semset_id:
+        raise ScoValueError('empty semset_id')
+    s = SemSet(context, semset_id=semset_id)
+    if not dialog_confirmed:
+        return context.confirmDialog( "<h2>Suppression de l'ensemble %(title)s ?</h2>" % s,
+                                  dest_url="", REQUEST=REQUEST,
+                                  parameters = { 'semset_id' : semset_id },
+                                  cancel_url="semset_page" )
+    s.delete()
+    return REQUEST.RESPONSE.redirect('semset_page')
+
 def do_semset_add_sem(context, semset_id, formsemestre_id, REQUEST=None):
     """Add a sem to a semset"""
-    s = SemSet(context, semset_id)
+    if not semset_id:
+        raise ScoValueError('empty semset_id')
+    s = SemSet(context, semset_id=semset_id)
     # check for valid formsemestre_id
     sem = sco_formsemestre.get_formsemestre(context, formsemestre_id) #raise exc
     
@@ -259,6 +274,8 @@
 
 def do_semset_remove_sem(context, semset_id, formsemestre_id, REQUEST=None):
     """Add a sem to a semset"""
+    if not semset_id:
+        raise ScoValueError('empty semset_id')
     s = SemSet(context, semset_id)
     
     s.remove(formsemestre_id)
@@ -270,6 +287,8 @@
 def semset_status(context, semset_id, REQUEST=None):
     """Montre un semset
     """
+    if not semset_id:
+        raise ScoValueError('empty semset_id')
     s = SemSet(context, semset_id)
     s.fill_formsemestres(REQUEST)
         


Plus d'informations sur la liste de diffusion Scodoc-devel