643921b411c151f6a630780fdba9542a236d76c3
[motion2.git] / server / api / mailQueueReport / mailQueueReport.controller.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0xf39d=['destroy','then','sendStatus','error','name','status','send','index','map','MailQueueReport','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','offset','order','sort','where','pick','filter','merge','VIRTUAL','options','include','rows','catch','show','params','includeAll','create','body','update','find','describe','html-pdf','eml-format','zip-dir','fast-json-patch','request-promise','mustache','util','path','sox','to-csv','ejs','squel','crypto','jsforce','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','end','json','count','limit','set','Content-Range','apply','reject','save'];(function(_0x442520,_0x47cdeb){var _0x4b57b6=function(_0x1cd284){while(--_0x1cd284){_0x442520['push'](_0x442520['shift']());}};_0x4b57b6(++_0x47cdeb);}(_0xf39d,0x164));var _0xdf39=function(_0x5c4f6b,_0x2cdfce){_0x5c4f6b=_0x5c4f6b-0x0;var _0x104c4e=_0xf39d[_0x5c4f6b];return _0x104c4e;};'use strict';var pdf=require(_0xdf39('0x0'));var emlformat=require(_0xdf39('0x1'));var rimraf=require('rimraf');var zipdir=require(_0xdf39('0x2'));var jsonpatch=require(_0xdf39('0x3'));var rp=require(_0xdf39('0x4'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0xdf39('0x5'));var util=require(_0xdf39('0x6'));var path=require(_0xdf39('0x7'));var sox=require(_0xdf39('0x8'));var csv=require(_0xdf39('0x9'));var ejs=require(_0xdf39('0xa'));var fs=require('fs');var _=require('lodash');var squel=require(_0xdf39('0xb'));var crypto=require(_0xdf39('0xc'));var jsforce=require(_0xdf39('0xd'));var deskjs=require(_0xdf39('0xe'));var toCsv=require(_0xdf39('0x9'));var querystring=require(_0xdf39('0xf'));var Papa=require(_0xdf39('0x10'));var Redis=require('ioredis');var authService=require(_0xdf39('0x11'));var qs=require(_0xdf39('0x12'));var as=require(_0xdf39('0x13'));var hardwareService=require(_0xdf39('0x14'));var logger=require(_0xdf39('0x15'))(_0xdf39('0x16'));var utils=require('../../config/utils');var config=require(_0xdf39('0x17'));var licenseUtil=require(_0xdf39('0x18'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x7fcddd,_0x243cb0){_0x243cb0=_0x243cb0||0xcc;return function(_0x29ed62){if(_0x29ed62){return _0x7fcddd['sendStatus'](_0x243cb0);}return _0x7fcddd['status'](_0x243cb0)[_0xdf39('0x19')]();};}function respondWithResult(_0x4c200e,_0x462712){_0x462712=_0x462712||0xc8;return function(_0x2386e0){if(_0x2386e0){return _0x4c200e['status'](_0x462712)[_0xdf39('0x1a')](_0x2386e0);}};}function respondWithFilteredResult(_0x89cf4,_0x1d19f7){return function(_0x40359c){if(_0x40359c){var _0x54a5e3=_0x40359c[_0xdf39('0x1b')],_0x1744fe=_0x1d19f7['offset'],_0x4a5225=_0x1d19f7['offset']+_0x1d19f7[_0xdf39('0x1c')],_0x40ed58;if(_0x4a5225>=_0x54a5e3){_0x4a5225=_0x54a5e3;_0x40ed58=0xc8;}else{_0x40ed58=0xce;}_0x89cf4['status'](_0x40ed58);return _0x89cf4[_0xdf39('0x1d')](_0xdf39('0x1e'),_0x1744fe+'-'+_0x4a5225+'/'+_0x54a5e3)[_0xdf39('0x1a')](_0x40359c);}return null;};}function patchUpdates(_0x16cbd0){return function(_0xb4519f){try{jsonpatch[_0xdf39('0x1f')](_0xb4519f,_0x16cbd0,!![]);}catch(_0x406b69){return BPromise[_0xdf39('0x20')](_0x406b69);}return _0xb4519f[_0xdf39('0x21')]();};}function saveUpdates(_0x40f535,_0x4023e4){return function(_0x59dd0d){if(_0x59dd0d){return _0x59dd0d['update'](_0x40f535)['then'](function(_0x397857){return _0x397857;});}return null;};}function removeEntity(_0x1e4293,_0x510bc0){return function(_0xa82764){if(_0xa82764){return _0xa82764[_0xdf39('0x22')]()[_0xdf39('0x23')](function(){_0x1e4293['status'](0xcc)[_0xdf39('0x19')]();});}};}function handleEntityNotFound(_0x52b8f2,_0x4d54af){return function(_0x37dc1c){if(!_0x37dc1c){_0x52b8f2[_0xdf39('0x24')](0x194);}return _0x37dc1c;};}function handleError(_0xc24e6e,_0x33eded){_0x33eded=_0x33eded||0x1f4;return function(_0x2fb3a5){logger[_0xdf39('0x25')](_0x2fb3a5['stack']);if(_0x2fb3a5[_0xdf39('0x26')]){delete _0x2fb3a5[_0xdf39('0x26')];}_0xc24e6e[_0xdf39('0x27')](_0x33eded)[_0xdf39('0x28')](_0x2fb3a5);};}exports[_0xdf39('0x29')]=function(_0x1290db,_0x13b0d7){var _0x4c8361={},_0x3a7559={},_0x4a3e71={'count':0x0,'rows':[]};var _0x77e2d7=_[_0xdf39('0x2a')](db[_0xdf39('0x2b')][_0xdf39('0x2c')],function(_0x59e33c){return{'name':_0x59e33c[_0xdf39('0x2d')],'type':_0x59e33c[_0xdf39('0x2e')][_0xdf39('0x2f')]};});_0x3a7559[_0xdf39('0x30')]=_[_0xdf39('0x2a')](_0x77e2d7,_0xdf39('0x26'));_0x3a7559[_0xdf39('0x31')]=_[_0xdf39('0x32')](_0x1290db[_0xdf39('0x31')]);_0x3a7559[_0xdf39('0x33')]=_[_0xdf39('0x34')](_0x3a7559[_0xdf39('0x30')],_0x3a7559[_0xdf39('0x31')]);_0x4c8361[_0xdf39('0x35')]=_['intersection'](_0x3a7559[_0xdf39('0x30')],qs[_0xdf39('0x36')](_0x1290db['query']['fields']));_0x4c8361[_0xdf39('0x35')]=_0x4c8361['attributes'][_0xdf39('0x37')]?_0x4c8361['attributes']:_0x3a7559[_0xdf39('0x30')];if(!_0x1290db['query'][_0xdf39('0x38')](_0xdf39('0x39'))){_0x4c8361['limit']=qs[_0xdf39('0x1c')](_0x1290db[_0xdf39('0x31')][_0xdf39('0x1c')]);_0x4c8361[_0xdf39('0x3a')]=qs[_0xdf39('0x3a')](_0x1290db[_0xdf39('0x31')][_0xdf39('0x3a')]);}_0x4c8361[_0xdf39('0x3b')]=qs[_0xdf39('0x3c')](_0x1290db['query']['sort']);_0x4c8361[_0xdf39('0x3d')]=qs[_0xdf39('0x33')](_[_0xdf39('0x3e')](_0x1290db[_0xdf39('0x31')],_0x3a7559[_0xdf39('0x33')]),_0x77e2d7);if(_0x1290db[_0xdf39('0x31')][_0xdf39('0x3f')]){_0x4c8361[_0xdf39('0x3d')]=_[_0xdf39('0x40')](_0x4c8361[_0xdf39('0x3d')],{'$or':_[_0xdf39('0x2a')](_0x77e2d7,function(_0x157c60){if(_0x157c60[_0xdf39('0x2e')]!==_0xdf39('0x41')){var _0x39d482={};_0x39d482[_0x157c60[_0xdf39('0x26')]]={'$like':'%'+_0x1290db[_0xdf39('0x31')][_0xdf39('0x3f')]+'%'};return _0x39d482;}})});}_0x4c8361=_['merge']({},_0x4c8361,_0x1290db[_0xdf39('0x42')]);var _0x1a1d88={'where':_0x4c8361[_0xdf39('0x3d')]};return db[_0xdf39('0x2b')][_0xdf39('0x1b')](_0x1a1d88)['then'](function(_0x44e509){_0x4a3e71[_0xdf39('0x1b')]=_0x44e509;if(_0x1290db[_0xdf39('0x31')]['includeAll']){_0x4c8361[_0xdf39('0x43')]=[{'all':!![]}];}return db[_0xdf39('0x2b')]['findAll'](_0x4c8361);})[_0xdf39('0x23')](function(_0x38797d){_0x4a3e71[_0xdf39('0x44')]=_0x38797d;return _0x4a3e71;})[_0xdf39('0x23')](respondWithFilteredResult(_0x13b0d7,_0x4c8361))[_0xdf39('0x45')](handleError(_0x13b0d7,null));};exports[_0xdf39('0x46')]=function(_0x48b544,_0x16ae66){var _0x54187d={'raw':!![],'where':{'id':_0x48b544[_0xdf39('0x47')]['id']}},_0x4e673f={};_0x4e673f[_0xdf39('0x30')]=_[_0xdf39('0x32')](db['MailQueueReport'][_0xdf39('0x2c')]);_0x4e673f[_0xdf39('0x31')]=_[_0xdf39('0x32')](_0x48b544[_0xdf39('0x31')]);_0x4e673f['filters']=_['intersection'](_0x4e673f[_0xdf39('0x30')],_0x4e673f[_0xdf39('0x31')]);_0x54187d[_0xdf39('0x35')]=_[_0xdf39('0x34')](_0x4e673f[_0xdf39('0x30')],qs[_0xdf39('0x36')](_0x48b544[_0xdf39('0x31')][_0xdf39('0x36')]));_0x54187d['attributes']=_0x54187d['attributes'][_0xdf39('0x37')]?_0x54187d['attributes']:_0x4e673f['model'];if(_0x48b544['query'][_0xdf39('0x48')]){_0x54187d[_0xdf39('0x43')]=[{'all':!![]}];}_0x54187d=_['merge']({},_0x54187d,_0x48b544[_0xdf39('0x42')]);return db['MailQueueReport']['find'](_0x54187d)[_0xdf39('0x23')](handleEntityNotFound(_0x16ae66,null))[_0xdf39('0x23')](respondWithResult(_0x16ae66,null))[_0xdf39('0x45')](handleError(_0x16ae66,null));};exports['create']=function(_0x4e906a,_0x2a1532){return db[_0xdf39('0x2b')][_0xdf39('0x49')](_0x4e906a[_0xdf39('0x4a')],{})[_0xdf39('0x23')](respondWithResult(_0x2a1532,0xc9))[_0xdf39('0x45')](handleError(_0x2a1532,null));};exports[_0xdf39('0x4b')]=function(_0x4a1dbe,_0x147c74){if(_0x4a1dbe[_0xdf39('0x4a')]['id']){delete _0x4a1dbe[_0xdf39('0x4a')]['id'];}return db[_0xdf39('0x2b')][_0xdf39('0x4c')]({'where':{'id':_0x4a1dbe[_0xdf39('0x47')]['id']}})[_0xdf39('0x23')](handleEntityNotFound(_0x147c74,null))[_0xdf39('0x23')](saveUpdates(_0x4a1dbe[_0xdf39('0x4a')],null))[_0xdf39('0x23')](respondWithResult(_0x147c74,null))[_0xdf39('0x45')](handleError(_0x147c74,null));};exports['destroy']=function(_0x3a4883,_0x106fc1){return db[_0xdf39('0x2b')][_0xdf39('0x4c')]({'where':{'id':_0x3a4883[_0xdf39('0x47')]['id']}})[_0xdf39('0x23')](handleEntityNotFound(_0x106fc1,null))[_0xdf39('0x23')](removeEntity(_0x106fc1,null))[_0xdf39('0x45')](handleError(_0x106fc1,null));};exports[_0xdf39('0x4d')]=function(_0x3f36ac,_0x5fba2c){return db[_0xdf39('0x2b')]['describe']()[_0xdf39('0x23')](respondWithResult(_0x5fba2c,null))['catch'](handleError(_0x5fba2c,null));};