diff --git a/index.js b/index.js index 132c8c9..762fb35 100644 --- a/index.js +++ b/index.js @@ -26,47 +26,48 @@ async function saveRecords(root) { } async function getPreviousDayData() { - const previousDay = new Date(Date.now() - 86400000); // 24 hours ago - const startTime = new Date(previousDay.setHours(0, 0, 0, 0)); - const endTime = new Date(previousDay.setHours(23, 59, 59, 999)); - const connection = await mysql.createConnection({ - host: process.env.DATABASE_HOST, - user: process.env.DATABASE_USER, - password: process.env.DATABASE_PASSWORD, - database: process.env.DATABASE_NAME, - multipleStatements: true - }); - await connection.connect(); - let callsMade; - let recordForToday; - let monthlyTotal; - let totalCalls; - await connection.query(` + return new Promise(async (resolve, reject) => { + const previousDay = new Date(Date.now() - 86400000); // 24 hours ago + const startTime = new Date(previousDay.setHours(0, 0, 0, 0)); + const endTime = new Date(previousDay.setHours(23, 59, 59, 999)); + const connection = await mysql.createConnection({ + host: process.env.DATABASE_HOST, + user: process.env.DATABASE_USER, + password: process.env.DATABASE_PASSWORD, + database: process.env.DATABASE_NAME, + multipleStatements: true + }); + await connection.connect(); + let callsMade; + let recordForToday; + let monthlyTotal; + let totalCalls; + await connection.query(` SELECT COUNT(*) AS call_count FROM cdr WHERE calldate BETWEEN ? AND ?; SELECT COUNT(*) AS call_count FROM cdr WHERE DATE(calldate) = DATE(?); SELECT COUNT(*) AS call_count FROM cdr WHERE MONTH(calldate) = MONTH(?) AND YEAR(calldate) = YEAR(?); SELECT COUNT(*) AS call_count FROM cdr; `, [startTime, endTime, previousDay, previousDay, previousDay], (err, res) => { - if (err) { - console.error(err) - process.exit(1) - } - callsMade = res[0] - recordForToday = res[1] - monthlyTotal = res[2] - totalCalls = res[3] - connection.end(); - let output = { - "Calls Made": callsMade[0].call_count, - "Record for Today of the Year": recordForToday[0].call_count, - "Monthly Total": monthlyTotal[0].call_count, - "Total Calls Ever Placed": totalCalls[0].call_count, - "System Uptime": getSystemUptime(), - "All Time Record": null, // Placeholder - } - console.log(output) - return output; - }); + if (err) { + reject(err) + } + callsMade = res[0] + recordForToday = res[1] + monthlyTotal = res[2] + totalCalls = res[3] + connection.end(); + let output = { + "Calls Made": callsMade[0].call_count, + "Record for Today of the Year": recordForToday[0].call_count, + "Monthly Total": monthlyTotal[0].call_count, + "Total Calls Ever Placed": totalCalls[0].call_count, + "System Uptime": getSystemUptime(), + "All Time Record": null, // Placeholder + } + console.log(output) + resolve(output); + }); + }) } function getSystemUptime() {