]> git.llucax.com Git - software/sercom.git/blobdiff - start-sercom.py
detalles del dashbord de Alumnos.
[software/sercom.git] / start-sercom.py
index 57ff0580c8df4add6c428dbb07e57539964e10f9..fd1c7e2f7fc779b89a1de7453881b3697e697913 100644 (file)
@@ -25,7 +25,7 @@ elif exists(join(dirname(__file__), "setup.py")):
 else:
     update_config(configfile="prod.cfg",modulename="sercom.config")
 
 else:
     update_config(configfile="prod.cfg",modulename="sercom.config")
 
-from sercom.model import InstanciaDeEntrega, hub
+from sercom.model import InstanciaDeEntrega, Entrega, AND, hub
 from sercom.finalizer import Finalizer
 from threading import Thread
 from datetime import datetime
 from sercom.finalizer import Finalizer
 from threading import Thread
 from datetime import datetime
@@ -42,8 +42,17 @@ class Queue(object): #{{{
             try:
                 hub.begin()
                 try:
             try:
                 hub.begin()
                 try:
-                    select = InstanciaDeEntrega.selectBy(inicio_proceso=None)
+                    select = InstanciaDeEntrega.select(AND(
+                        InstanciaDeEntrega.q.inicio_proceso == None,
+                        InstanciaDeEntrega.q.fin <= datetime.now()))
                     instancia = select.orderBy(InstanciaDeEntrega.q.fin)[0]
                     instancia = select.orderBy(InstanciaDeEntrega.q.fin)[0]
+                    n = Entrega.selectBy(instancia=instancia, fin=None).count()
+                    if n:
+                        log.debug(_(u'Esperando para procesar instancia (%s), '
+                            'faltan probar %s entregas'), instancia.shortrepr(),
+                            n)
+                        time.sleep(30)
+                        continue
                     instancia.inicio_proceso = datetime.now()
                 finally:
                     hub.commit()
                     instancia.inicio_proceso = datetime.now()
                 finally:
                     hub.commit()
@@ -59,10 +68,10 @@ class Queue(object): #{{{
         return None
 #}}}
 
         return None
 #}}}
 
-q = Queue()
-finalizer = Finalizer(name='juanca', queue=q)
-t = Thread(name='juanca', target=finalizer.run)
-t.start()
+#q = Queue()
+#finalizer = Finalizer(name='finalizer', queue=q)
+#t = Thread(name='finalizer', target=finalizer.run)
+#t.start()
 
 from sercom.controllers import Root
 
 
 from sercom.controllers import Root