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 = { getemailIdById: function (emailSenderId) { return new Promise((resolve, reject) => { let query = "select id, emailid from emailSenderIds where id = ? order by id desc"; const data = [emailSenderId]; pool.query(query, data, (err, results, fields) => { try { if (err) { throw err; } else { return resolve(results[0]); } } catch (err) { log.info( "[EmailId], [MODEL], [getemailIds], [error], [" + err + "]" ); return reject(err); } }); }); }, isemailsenderIdExist: function (emailSenderId) { return new Promise((resolve, reject) => { let query = "select id, emailid from emailSenderIds where emailid = ? and status !=3 "; const data = [emailSenderId]; pool.query(query, data, (err, results, fields) => { try { if (err) { throw err; } else { var numRows = results.length; if (numRows > 0) { return resolve(results[0]); } else { return resolve(false); } } } catch (err) { log.info( "[EMAIL ID], [MODEL], [isemailsenderIdExist], [error], [" + err + "]" ); return reject(err); } }); }); }, getApprovedemalids: function (userId) { return new Promise((resolve, reject) => { let query = "select id, emailid from emailSenderIds where userid = ? and status = 2 order by id desc"; const data = [userId]; pool.query(query, data, (err, results, fields) => { try { if (err) { throw err; } else { return resolve(results); } } catch (err) { log.info( "[EMAIL ID], [MODEL], [getApprovedemalids], [error], [" + err + "]" ); return reject(err); } }); }); }, allEmailSenderIds: function () { return new Promise((resolve, reject) => { let data = []; let query = "select u.name as userName , e.id, e.userid, e.emailid, e.approvedby, e.status, e. reason,e.created_at ,e.updated_at from emailSenderIds as e INNER JOIN users as u on u.id = e.userid where e.status!= 1 and e.status!= 4 order by e.updated_at desc"; pool.query(query, data, (err, results, fields) => { try { if (err) { log.info("[EMAIL ID], [MODEL], [allEmailSenderIds], [error], [" + err + "]"); throw err; } else { var numRows = results.length; if (numRows > 0) { return resolve(results); } else { return resolve(false); } } } catch (err) { log.info("[EMAIL ID], [MODEL], [allEmailSenderIds], [error], [" + err + "]"); return reject(err); } }); }); }, allEmailSenderNamesSearchBySenderName: function (searchValue) { return new Promise((resolve, reject) => { let query = "select u.name as userName , e.id, e.userid, e.emailid, e.approvedby, e.status, e. reason,e.created_at ,e.updated_at from emailSenderIds as e INNER JOIN users as u on u.id = e.userid where e.status!= 1 and e.status!= 4 and e.emailid like ? order by e.updated_at desc"; let data = [`${searchValue}%`]; pool.query(query, data, (err, results, fields) => { try { if (err) { log.info("[EMAIL ID], [MODEL], [allEmailSenderNamesSearchBySenderName], [error], [" + err + "]"); throw err; } else { var numRows = results.length; if (numRows > 0) { return resolve(results); } else { return resolve(false); } } } catch (err) { log.info("[EMAIL ID], [MODEL], [allEmailSenderNamesSearchBySenderName], [error], [" + err + "]"); return reject(err); } }); }); }, allEmailSenderNamesSearchByUserName: function (searchValue) { return new Promise((resolve, reject) => { let query = "select u.name as userName , e.id, e.userid, e.emailid, e.approvedby, e.status, e. reason,e.created_at ,e.updated_at from emailSenderIds as e INNER JOIN users as u on u.id = e.userid where e.status!= 1 and e.status!= 4 and u.name like ? order by e.updated_at desc"; let data = [`${searchValue}%`]; pool.query(query, data, (err, results, fields) => { try { if (err) { log.info("[EMAIL ID], [MODEL], [allEmailSenderNamesSearchByUserName], [error], [" + err + "]"); throw err; } else { var numRows = results.length; if (numRows > 0) { return resolve(results); } else { return resolve(false); } } } catch (err) { log.info("[EMAIL ID], [MODEL], [allEmailSenderNamesSearchByUserName], [error], [" + err + "]"); return reject(err); } }); }); }, allRquestforEmailSenderIds: function () { return new Promise((resolve, reject) => { let data = []; let query = "select u.name as userName ,u.email as email,u.phone as phone, e.id, e.userid, e.emailid, e.approvedby, e.status, e. reason,e.created_at ,e.updated_at from emailSenderIds as e INNER JOIN users as u on u.id = e.userid where e.status= 1 order by e.updated_at desc"; pool.query(query, data, (err, results, fields) => { try { if (err) { log.info("[USER], [MODEL], [isUserExist], [error], [" + err + "]"); throw err; } else { var numRows = results.length; if (numRows > 0) { return resolve(results); } else { return resolve(false); } } } catch (err) { log.info("[EMAIL ID], [MODEL], [allRquestforEmailSenderIds], [error], [" + err + "]"); return reject(err); } }); }); }, addEmailSenderId(emailSenderId, userId) { return new Promise((resolve, reject) => { let data = [ userId, emailSenderId, userId, 1, ]; let query = `Insert into emailSenderIds (userid, emailid, requestedby, status,created_at,updated_at) values( ?, ?, ?, ?,now(),now())`; pool.query(query, data, (err, results, fields) => { try { if (err) { log.info( "[EMAIL ID], [MODEL], [addEmailSenderId], [error], [" + err + "]" ); throw err; } else { return resolve(true); } } catch (err) { log.info( "[EMAIL ID], [MODEL], [addEmailSenderId], [error], [" + err + "]" ); return reject(err); } }); }); }, addEmailSenderIdApprove: function (action, userId, emailSenderId) { return new Promise((resolve, reject) => { let query = "Update emailSenderIds set status=?, updated_at=now(), approvedby=? where emailid=? "; const data = [action, userId, emailSenderId]; pool.query(query, data, (err, results, fields) => { if (err) { log.info( "[EMAIL ID], [MODEL], [addEmailSenderIdApprove], [error], [" + err + "]" ); return reject(err); } else { resolve(true); } }); }); }, addEmailSenderIdDecline: function (action, userId, reson, emailSenderId) { return new Promise((resolve, reject) => { let query = "Update emailSenderIds set status=?, updated_at=now(), approvedby=?, reason=? where emailid=? "; const data = [action, userId, reson, emailSenderId]; pool.query(query, data, (err, results, fields) => { if (err) { log.info( "[EMAIL ID], [MODEL], [addEmailSenderId Decline], [error], [" + err + "]" ); return reject(err); } else { resolve(true); } }); }); }, adminAddEmailSenderId(emailSenderId, userId, foruser) { return new Promise((resolve, reject) => { let data = [ foruser, emailSenderId, userId, userId, 2, ]; let query = `Insert into emailSenderIds (userid, emailid, requestedby,approvedby, status,created_at,updated_at) values( ?, ?, ?, ?,?,now(),now())`; pool.query(query, data, (err, results, fields) => { try { if (err) { log.info( "[EMAIL ID], [MODEL], [adminAddEmailSenderId], [error], [" + err + "]" ); throw err; } else { return resolve(true); } } catch (err) { log.info( "[EMAIL ID], [MODEL], [adminAddEmailSenderId], [error], [" + err + "]" ); return reject(err); } }); }); }, deleteEmailSenderId: function (rowId) { return new Promise((resolve, reject) => { let query = "delete from emailSenderIds where id =?"; let data = [rowId]; pool.query(query, data, (err, results, fields) => { try { if (err) { throw err; } else { return resolve(true); } } catch (err) { log.info( `[EMAIL ID], [MODEL], [deleteEmailSenderId], [error], [${err}]` ); reject(err); } }); }); }, getemailIdByUserId: function (userId) { return new Promise((resolve, reject) => { let query = "select * from emailSenderIds where userid = ? order by id desc"; const data = [userId]; pool.query(query, data, (err, results, fields) => { try { if (err) { throw err; } else { return resolve(results); } } catch (err) { log.info( "[EmailId], [MODEL], [getemailIds], [error], [" + err + "]" ); return reject(err); } }); }); }, editEmailSenderId: function (emailSenderId, rowId) { return new Promise((resolve, reject) => { let query = "Update emailSenderIds set emailid=?, updated_at=now() where id=? "; const data = [emailSenderId, rowId]; pool.query(query, data, (err, results, fields) => { if (err) { log.info( "[EMAIL ID], [MODEL], [addEmailSenderIdDecline], [error], [" + err + "]" ); return reject(err); } else { resolve(true); } }); }); }, getsenderdetail: function (emailSenderId) { return new Promise((resolve, reject) => { let query = "select e.userid, u.email, u.name, u.phone from emailSenderIds as e Inner Join users as u on u.id = e.userid where emailid=? order by e.id desc"; const data = [emailSenderId]; pool.query(query, data, (err, results, fields) => { try { if (err) { throw err; } else { return resolve(results[0]); } } catch (err) { log.info( "[EmailId], [MODEL], [getemailIds], [error], [" + err + "]" ); return reject(err); } }); }); }, };