From 2800382cbf551d1f48b324c71ed3bc116b5d3270 Mon Sep 17 00:00:00 2001 From: Ricardo Markiewicz Date: Tue, 13 Mar 2007 03:54:37 +0000 Subject: [PATCH] Agrego referencias y un exporter pedorro a CSV --- sercom/subcontrollers/curso/__init__.py | 50 +++++++++++++++++++ .../subcontrollers/curso/templates/notas.kid | 15 +++++- 2 files changed, 64 insertions(+), 1 deletion(-) diff --git a/sercom/subcontrollers/curso/__init__.py b/sercom/subcontrollers/curso/__init__.py index 3cb7466..34e93e5 100644 --- a/sercom/subcontrollers/curso/__init__.py +++ b/sercom/subcontrollers/curso/__init__.py @@ -375,5 +375,55 @@ class CursoController(controllers.Controller, identity.SecureResource): col["NL"] = i.nota_libreta rows.append(col) return dict(curso=r, rows=rows, cols=cols) + + @expose() + def notascsv(self, cursoid): + r = validate_get(cursoid) + # Armo las columnas del listado + cols = ["Padron", "Nombre", "Grupo"] + # Ejercicios + for ej in r.ejercicios: + for ins in ej.instancias: + print "E"+str(ej.numero)+str(ins.numero) + cols.append("E"+str(ej.numero)+str(ins.numero)) + cols.append("EA") + cols.append("NP") + cols.append("NF") + cols.append("NL") + + rows = [] + for i in r.alumnos: + col = [] + col.append(i.alumno.padron) + col.append(i.alumno.nombre) + miembro = Grupo.selectByAlumno(i.alumno) + if miembro.count() > 0: + col.append(miembro[0].grupo.shortrepr()) + correctas = 0 + for ej in r.ejercicios: + for ins in ej.instancias: + if ej.grupal: + # Busco la correccion del grupo + g = Grupo.selectByAlumno(i.alumno).getOne() + c = Correccion.selectBy(instancia=ins, entregador=g.grupo) + else: + # Busco la correccion del alumno + c = Correccion.selectBy(instancia=ins, entregador=i) + if c.count() > 0: + col.append(str(c[0].nota)) + if c[0].nota > 7: + correctas += 1 + else: + col.append("") + col.append(str(correctas)) + col.append(str(i.nota_practica)) + col.append(str(i.nota_final)) + col.append(str(i.nota_libreta)) + rows.append(col) + s = ",".join(cols) + "\n" + for i in rows: + s = s + ",".join(i) + "\n" + + return s #}}} diff --git a/sercom/subcontrollers/curso/templates/notas.kid b/sercom/subcontrollers/curso/templates/notas.kid index dab39e6..f2a47dd 100644 --- a/sercom/subcontrollers/curso/templates/notas.kid +++ b/sercom/subcontrollers/curso/templates/notas.kid @@ -9,6 +9,9 @@

Notas del Curso : Objetos

+
+ Exportar +
@@ -17,7 +20,17 @@
- +
+
+ Referencias + +

Volver -- 2.43.0