X-Git-Url: https://git.llucax.com/software/sercom.git/blobdiff_plain/fd364f544beef747629625ccbd667ea0524aa6c2..30b66b3ed7061eaaab51a23cc71e6aff0dbdc650:/sercom/model.py diff --git a/sercom/model.py b/sercom/model.py index a09a0bf..3442a19 100644 --- a/sercom/model.py +++ b/sercom/model.py @@ -312,8 +312,8 @@ class TareaPrueba(Tarea): #{{{ # Joins comandos = MultipleJoin('ComandoPrueba', joinColumn='tarea_id') - def add_comando(self, orden, **kw): - return ComandoPrueba(tarea=self, orden=orden, comando='', **kw) + def add_comando(self, orden, comando='', **kw): + return ComandoPrueba(tarea=self, orden=orden, comando=comando, **kw) def remove_comando(self, orden): ComandoPrueba.pk.get(self.id, orden).destroySelf() @@ -345,6 +345,7 @@ class Comando(InheritableSQLObject): #{{{ max_locks_memoria = IntCol(default=None) terminar_si_falla = BoolCol(notNone=True, default=True) rechazar_si_falla = BoolCol(notNone=True, default=True) + publico = BoolCol(notNone=True, default=True) archivos_entrada = BLOBCol(default=None) # ZIP con archivos de entrada # __stdin__ es caso especial # Si un caso de prueba tiene @@ -523,7 +524,8 @@ class InstanciaDeEntrega(SQLObject): #{{{ # Campos inicio = DateTimeCol(notNone=True) fin = DateTimeCol(notNone=True) - procesada = BoolCol(notNone=True, default=False) + inicio_proceso = DateTimeCol(default=None) + fin_proceso = DateTimeCol(default=None) observaciones = UnicodeCol(default=None) activo = BoolCol(notNone=True, default=True) # Joins @@ -532,9 +534,10 @@ class InstanciaDeEntrega(SQLObject): #{{{ def __repr__(self): return 'InstanciaDeEntrega(id=%s, numero=%s, inicio=%s, fin=%s, ' \ - 'procesada=%s, observaciones=%s, activo=%s)' \ + 'inicio_proceso=%s, fin_proceso=%s, observaciones=%s, activo=%s)' \ % (self.id, self.numero, self.inicio, self.fin, - self.procesada, self.observaciones, self.activo) + self.inicio_proceso, self.fin_proceso, self.observaciones, + self.activo) def shortrepr(self): return self.numero @@ -782,6 +785,10 @@ class Entrega(Ejecucion): #{{{ # FIXME self.id, caso_de_prueba Prueba.pk.get(self.id, caso_de_prueba).destroySelf() + def make_correccion(self, corrector, **kw): + return Correccion(instancia=self.instancia, entregador=self.entregador, + entrega=self, corrector=corrector, **kw) + def __repr__(self): return super(Entrega, self).__repr__('instancia=%s, entregador=%s, ' 'fecha=%s' % (self.instancia.shortrepr(), srepr(self.entregador), @@ -799,7 +806,7 @@ class Correccion(SQLObject): #{{{ pk = DatabaseIndex(instancia, entregador, unique=True) # Campos entrega = ForeignKey('Entrega', notNone=True, cascade=False) - corrector = ForeignKey('DocenteInscripto', default=None, cascade='null') + corrector = ForeignKey('DocenteInscripto', notNone=True, cascade=False) asignado = DateTimeCol(notNone=True, default=DateTimeCol.now) corregido = DateTimeCol(default=None) nota = DecimalCol(size=3, precision=1, default=None)