const sql = require('mssql'); require('../helpers/config'); require('../helpers/CheckToken'); const ip = Variables('ip_sqlServer'); const user = Variables('user_sqlServer'); const pass = Variables('password_sqlServer'); require("dotenv-safe").load(); var jwt = require('jsonwebtoken'); const connStr = "Server=" + ip + ";User Id=" + user + ";Password=" + pass; global.AtualizaConexaoSQLServer = function AtualizaConexaoSQLServer() { console.log("Renovando conexão SQLServer..."); try { sql.close(); } catch (e) {} sql.connect(connStr).then(sqlServerConnection => { global.sqlServerConnection = sqlServerConnection; console.log('SQLServer Conectado!'); }).catch(err => { global.sqlServerConnection = null; console.log("Impossivel conectar ao SQL Server..."); //console.log(err) }); } AtualizaConexaoSQLServer(); global.execSQLQuery2 = function execSQLQuery2(sqlQry, res, req, callback = null) { if (Variables("local") == "Local") { res.send(JSON.stringify({ "status": 403, "error": "Modo de emergência, SQL Server desconectado", "response": [] })); console.log(new Date().toUTCString() + " - " + req + "/ error 403"); return; } sqlServerConnection.request().query(sqlQry, function (error, results, fields) { let Retorno = []; if (error || results.length == 0) { Retorno = { "status": 500, "error": error, "response": [] }; } else { Retorno = { "status": 200, "error": error, "response": results.recordsets }; } res.send(JSON.stringify(Retorno)); console.log(new Date().toUTCString() + ` - ${req}/ ${(Retorno.status == 500) ? 'error' : 'success'} ${Retorno.status}`); if (callback) callback(Retorno); }); }; global.execSQLQueryLogin = function execSQLQueryLogin(sqlQry, res, req) { sqlServerConnection.request().query(sqlQry, function (error, results, fields) { if (error || results.recordsets[0].length == 0) { res.send(JSON.stringify({ "status": 500, "error": error, "response": [], "token": null })) console.log(new Date().toUTCString() + " - " + req + "/ error 500"); } else { var token = jwt.sign({ id }, process.env.SECRET, { expiresIn: Variables('time_token') }); res.send(JSON.stringify({ "status": 200, "error": error, "response": results.recordsets, "token": token //encriptPassword(token, token.length) })); console.log(new Date().toUTCString() + " - " + req + "/ success 200"); } }) };