From ee24f0678f2912c35c8bf53ff90686b37f48d178 Mon Sep 17 00:00:00 2001 From: Fernando Date: Mon, 17 Dec 2018 09:35:07 -0500 Subject: [PATCH] Arreglado error con el gestor de tareas en srv/Admin/LinkAnimes/obtenerLinks --- srv/LinksAnimes/obtenerLinks.ts | 23 +++++++---------------- 1 file changed, 7 insertions(+), 16 deletions(-) diff --git a/srv/LinksAnimes/obtenerLinks.ts b/srv/LinksAnimes/obtenerLinks.ts index 9b5ffe1..e5dc244 100644 --- a/srv/LinksAnimes/obtenerLinks.ts +++ b/srv/LinksAnimes/obtenerLinks.ts @@ -3,7 +3,6 @@ class GestorDeTareas { alCompletar: (() => void); constructor(alCompletar: (() => void)) { - console.log("Lo cree :c"); this.alCompletar = alCompletar; } @@ -11,18 +10,14 @@ class GestorDeTareas { return (this.tareas.push(false) - 1); } - terminarTarea(num: number) { - this.tareas[num] = true; + terminarTarea() { + this.tareas.pop(); this.verificarTareas(); } verificarTareas() { - this.tareas.forEach((x: boolean) => { - if (!x) - return; - }); - - this.alCompletar(); + if (this.tareas.length === 0) + this.alCompletar(); } } @@ -95,8 +90,6 @@ const obtenerLinks = (req: any, res: any) => { const gestorOpciones = new GestorDeTareas(() => { - /* TODO: Error. Parece que las tareas se añaden luego de que se terminan. Rediseño pls :c */ - /* Este error ocasiona que solo se cargue la primera variante, y que el resto de variante se devuelva vacia. */ res.send(YAML.stringify(data)); }); @@ -108,7 +101,7 @@ const obtenerLinks = (req: any, res: any) => { for (const opcionID in response) { const opcion = response[opcionID]; - const tareaActualOpcion = gestorOpciones.agregarTarea(); + gestorOpciones.agregarTarea(); data.opciones[opcion.num_opcion] = { formato: opcion.formato, @@ -127,17 +120,15 @@ const obtenerLinks = (req: any, res: any) => { for (const epID in response) { const ep = response[epID]; - const eps: LinksEps = { + data.opciones[opcion.num_opcion].eps[ep.num_ep] = { ep_ID: ep.ep_ID, visitas: ep.visitas, peso: ep.peso, link: ep.link }; - - data.opciones[opcion.num_opcion].eps[ep.num_ep] = eps; } - gestorOpciones.terminarTarea(tareaActualOpcion); + gestorOpciones.terminarTarea(); } else if (!err) { console.log("No existen episodios para esta variante");