From d812b7cdfa9fc31b1adfaf326ce11b4a9b1eb841 Mon Sep 17 00:00:00 2001
From: Vytor Calixto <vytorcalixto@gmail.com>
Date: Wed, 2 Aug 2017 09:43:29 -0300
Subject: [PATCH] Add download route to /school

---
 src/libs/jobs/download.js |  7 ++++---
 src/libs/routes/region.js | 14 +++++++-------
 src/libs/routes/school.js |  9 +++++++++
 3 files changed, 20 insertions(+), 10 deletions(-)

diff --git a/src/libs/jobs/download.js b/src/libs/jobs/download.js
index eb8d30dd..0cb1dad1 100644
--- a/src/libs/jobs/download.js
+++ b/src/libs/jobs/download.js
@@ -14,15 +14,16 @@ module.exports = function(agenda) {
         // Roda o COPY INTO
         // Cria o registro no mongo
         // Manda email notificando o usuário
-        let path = '/tmp/' + table + Date.now() + '.csv';
-        log.debug(sql);
+        let path = '/tmp/' + table + '-' + Date.now() + '.csv';
         let query = `COPY ${sql} INTO '${path}' USING DELIMITERS ';'`;
 
         execQuery(query, []).then((result) => {
             // If we're here then everything is ok. Result is empty
             let file = {
                 name: table,
-                path
+                path,
+                table: table,
+                query: sql
             }
             request.post(config.cdn.url + '/api/v1/file', {form: file}, (err, response, body) => {
                 if(err) {
diff --git a/src/libs/routes/region.js b/src/libs/routes/region.js
index 6a3dc40b..b1208358 100644
--- a/src/libs/routes/region.js
+++ b/src/libs/routes/region.js
@@ -54,13 +54,13 @@ regionApp.get('/', rqf.parse(), (req, res, next) => {
     next();
 }, rqf.build(), query, response('region'));
 
-const agenda = require(`${libs}/agenda`);
+// const agenda = require(`${libs}/agenda`);
 
-regionApp.get('/download', (req, res) => {
-    req.sql.from('regiao').field('*');
-    let params = req.sql;
-    agenda.now('download database', {sql: req.sql.toString(), table: req.sql.tableFrom});
-    res.json({msg: 'Wait for it...'});
-});
+// regionApp.get('/download', (req, res) => {
+//     req.sql.from('regiao').field('*');
+//     let params = req.sql;
+//     agenda.now('download database', {sql: req.sql.toString(), table: req.sql.tableFrom});
+//     res.json({msg: 'Wait for it...'});
+// });
 
 module.exports = regionApp;
diff --git a/src/libs/routes/school.js b/src/libs/routes/school.js
index 40526cff..575b41c6 100644
--- a/src/libs/routes/school.js
+++ b/src/libs/routes/school.js
@@ -14,6 +14,8 @@ const id2str = require(`${libs}/middlewares/id2str`);
 
 const ReqQueryFields = require(`${libs}/middlewares/reqQueryFields`);
 
+const agenda = require(`${libs}/agenda`);
+
 let rqf = new ReqQueryFields();
 let rqfCount = new ReqQueryFields();
 
@@ -872,4 +874,11 @@ schoolApp.get('/count', rqfCount.parse(), rqfCount.build(), (req, res, next) =>
     next();
 }, query, id2str.transform(), response('school'));
 
+schoolApp.get('/download', rqf.parse(), rqf.build(), (req, res, next) => {
+    req.sql.from('escola')
+    .field('*');
+    agenda.now('download database', {sql: req.sql.toString(), table: req.sql.tableFrom});
+    res.json({msg: 'Wait for download email'});
+});
+
 module.exports = schoolApp;
-- 
GitLab