PK!A7��nvar sql = require("mysql"); var pool = require("../db"); const opts = { errorEventName: "error", logDirectory: "logs", fileNamePattern: "log-.log", dateFormat: "YYYY-MM-DD", }; const log = require("simple-node-logger").createRollingFileLogger(opts); module.exports = { createQuickMessageReport: function ( userId, quickMessageId, type, callerId, msisdn, content, status = 1 ) { return new Promise((resolve, reject) => { let data = [ userId, quickMessageId, type, callerId, msisdn, content, status, ]; let query = `Insert into quicks_voice_report (user_id, quick_message_id, type, caller_id, msisdn, file_name, status, created_at) values( ?, ?, ?, ?, ?, ?, ?, now())`; pool.query(query, data, (err, results, fields) => { try { if (err) { log.info( "[QUICK MESSAGE VOICE REPORT], [MODEL], [createQuickMessageReport], [error], [" + err + "]" ); throw err; } else { return resolve(true); } } catch (err) { log.info( "[QUICK MESSAGE VOICE REPORT], [MODEL], [createQuickMessageReport], [error], [" + err + "]" ); return reject(err); } }); }); }, getQuickMessageReport: function (messageId) { return new Promise((resolve, reject) => { let data = [messageId]; let query = "select * from quicks_voice_report where quick_message_id= ? order by id desc"; pool.query(query, data, (err, results, fields) => { try { if (err) { throw err; } else { if (results.length > 0) return resolve(results); else return resolve(false); } } catch (err) { log.info( "[CONTACT GROUP], [MODEL], [getUserGroupList], [error], [" + err + "]" ); return reject(err); } }); }); }, quickVoiceDetails: function (userId, startDate, endDate, type) { return new Promise((resolve, reject) => { let data = [userId, startDate, endDate, type]; let query = "select id, user_id , duration, quick_message_id ,caller_id,type,msisdn,file_name,status,created_at from quicks_voice_report where user_id= ? and date(created_at) BETWEEN ? and ? and type=? order by id desc"; pool.query(query, data, (err, results, fields) => { try { if (err) { throw err; } else { if (results.length > 0) return resolve(results); else return resolve(false); } } catch (err) { log.info( "[CONTACT GROUP], [MODEL], [quickVoiceDetails], [error], [" + err + "]" ); return reject(err); } }); }); }, checkQuickVoiceData: function (userId, startDate, endDate, type) { return new Promise((resolve, reject) => { let data = [userId, startDate, endDate, type]; let query = "select id, user_id , duration, quick_message_id ,caller_id from quicks_voice_report where user_id= ? and date(created_at) BETWEEN ? and ? and type=? order by id desc limit 2"; pool.query(query, data, (err, results, fields) => { try { if (err) { throw err; } else { return resolve(results.length); } } catch (err) { log.info( "[CONTACT GROUP], [MODEL], [checkQuickVoiceData], [error], [" + err + "]" ); return reject(err); } }); }); }, getVoiceReportByDateRange: function (startDate, endDate) { return new Promise((resolve, reject) => { let data = [startDate, endDate]; let query = "select id, user_id , quick_message_id ,sender_id,type,msisdn,content,status,created_at,updated_at from quicks_report where date(created_at) BETWEEN ? and ? order by id desc"; pool.query(query, data, (err, results, fields) => { try { if (err) { throw err; } else { if (results.length > 0) return resolve(results); else return resolve(false); } } catch (err) { log.info( "[CONTACT GROUP], [MODEL], [getUserGroupList], [error], [" + err + "]" ); return reject(err); } }); }); }, };