e4fb33d28a648c54b288d7232fad1cb25080b68d
[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 _0xaa03=['fields','hasOwnProperty','nolimit','offset','order','sort','pick','where','merge','filter','includeAll','findAll','rows','catch','params','keys','length','include','find','create','body','update','destroy','describe','html-pdf','eml-format','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','end','json','count','limit','Content-Range','apply','reject','save','then','error','name','status','send','index','map','MailQueueReport','rawAttributes','fieldName','key','model','filters','query','attributes','intersection'];(function(_0x196f4e,_0x107e42){var _0x430749=function(_0x3f9457){while(--_0x3f9457){_0x196f4e['push'](_0x196f4e['shift']());}};_0x430749(++_0x107e42);}(_0xaa03,0x1f2));var _0x3aa0=function(_0x5c3a1a,_0x999f05){_0x5c3a1a=_0x5c3a1a-0x0;var _0x3032ab=_0xaa03[_0x5c3a1a];return _0x3032ab;};'use strict';var pdf=require(_0x3aa0('0x0'));var emlformat=require(_0x3aa0('0x1'));var rimraf=require('rimraf');var zipdir=require(_0x3aa0('0x2'));var jsonpatch=require(_0x3aa0('0x3'));var rp=require(_0x3aa0('0x4'));var moment=require(_0x3aa0('0x5'));var BPromise=require(_0x3aa0('0x6'));var Mustache=require(_0x3aa0('0x7'));var util=require(_0x3aa0('0x8'));var path=require(_0x3aa0('0x9'));var sox=require(_0x3aa0('0xa'));var csv=require(_0x3aa0('0xb'));var ejs=require(_0x3aa0('0xc'));var fs=require('fs');var _=require(_0x3aa0('0xd'));var squel=require(_0x3aa0('0xe'));var crypto=require(_0x3aa0('0xf'));var jsforce=require(_0x3aa0('0x10'));var deskjs=require(_0x3aa0('0x11'));var toCsv=require(_0x3aa0('0xb'));var querystring=require(_0x3aa0('0x12'));var Papa=require(_0x3aa0('0x13'));var Redis=require(_0x3aa0('0x14'));var authService=require(_0x3aa0('0x15'));var qs=require(_0x3aa0('0x16'));var as=require(_0x3aa0('0x17'));var hardwareService=require(_0x3aa0('0x18'));var logger=require(_0x3aa0('0x19'))('api');var utils=require(_0x3aa0('0x1a'));var config=require(_0x3aa0('0x1b'));var licenseUtil=require(_0x3aa0('0x1c'));var db=require(_0x3aa0('0x1d'))['db'];function respondWithStatusCode(_0x370a83,_0x14d84f){_0x14d84f=_0x14d84f||0xcc;return function(_0x3fb587){if(_0x3fb587){return _0x370a83[_0x3aa0('0x1e')](_0x14d84f);}return _0x370a83['status'](_0x14d84f)[_0x3aa0('0x1f')]();};}function respondWithResult(_0x439806,_0x18f84e){_0x18f84e=_0x18f84e||0xc8;return function(_0xd16533){if(_0xd16533){return _0x439806['status'](_0x18f84e)[_0x3aa0('0x20')](_0xd16533);}};}function respondWithFilteredResult(_0x450d4f,_0x565722){return function(_0xc28fb){if(_0xc28fb){var _0x4bf8b4=_0xc28fb[_0x3aa0('0x21')],_0x2416f2=_0x565722['offset'],_0x5e48f7=_0x565722['offset']+_0x565722[_0x3aa0('0x22')],_0x9c7d30;if(_0x5e48f7>=_0x4bf8b4){_0x5e48f7=_0x4bf8b4;_0x9c7d30=0xc8;}else{_0x9c7d30=0xce;}_0x450d4f['status'](_0x9c7d30);return _0x450d4f['set'](_0x3aa0('0x23'),_0x2416f2+'-'+_0x5e48f7+'/'+_0x4bf8b4)[_0x3aa0('0x20')](_0xc28fb);}return null;};}function patchUpdates(_0x319bae){return function(_0x2746a2){try{jsonpatch[_0x3aa0('0x24')](_0x2746a2,_0x319bae,!![]);}catch(_0x55d04f){return BPromise[_0x3aa0('0x25')](_0x55d04f);}return _0x2746a2[_0x3aa0('0x26')]();};}function saveUpdates(_0x452099,_0x4c8207){return function(_0x38fb1f){if(_0x38fb1f){return _0x38fb1f['update'](_0x452099)[_0x3aa0('0x27')](function(_0x5e897d){return _0x5e897d;});}return null;};}function removeEntity(_0x3ba170,_0x48b142){return function(_0x7dc940){if(_0x7dc940){return _0x7dc940['destroy']()[_0x3aa0('0x27')](function(){_0x3ba170['status'](0xcc)[_0x3aa0('0x1f')]();});}};}function handleEntityNotFound(_0x57527a,_0x345227){return function(_0x4f1b43){if(!_0x4f1b43){_0x57527a[_0x3aa0('0x1e')](0x194);}return _0x4f1b43;};}function handleError(_0xc4cba4,_0x927a39){_0x927a39=_0x927a39||0x1f4;return function(_0x58ae04){logger[_0x3aa0('0x28')](_0x58ae04['stack']);if(_0x58ae04[_0x3aa0('0x29')]){delete _0x58ae04['name'];}_0xc4cba4[_0x3aa0('0x2a')](_0x927a39)[_0x3aa0('0x2b')](_0x58ae04);};}exports[_0x3aa0('0x2c')]=function(_0xb4a469,_0x34f20c){var _0x2e6561={},_0x178b49={},_0x2ba3cf={'count':0x0,'rows':[]};var _0xe2263e=_[_0x3aa0('0x2d')](db[_0x3aa0('0x2e')][_0x3aa0('0x2f')],function(_0x3a7a17){return{'name':_0x3a7a17[_0x3aa0('0x30')],'type':_0x3a7a17['type'][_0x3aa0('0x31')]};});_0x178b49[_0x3aa0('0x32')]=_[_0x3aa0('0x2d')](_0xe2263e,_0x3aa0('0x29'));_0x178b49['query']=_['keys'](_0xb4a469['query']);_0x178b49[_0x3aa0('0x33')]=_['intersection'](_0x178b49[_0x3aa0('0x32')],_0x178b49[_0x3aa0('0x34')]);_0x2e6561[_0x3aa0('0x35')]=_[_0x3aa0('0x36')](_0x178b49['model'],qs[_0x3aa0('0x37')](_0xb4a469['query']['fields']));_0x2e6561[_0x3aa0('0x35')]=_0x2e6561[_0x3aa0('0x35')]['length']?_0x2e6561[_0x3aa0('0x35')]:_0x178b49[_0x3aa0('0x32')];if(!_0xb4a469['query'][_0x3aa0('0x38')](_0x3aa0('0x39'))){_0x2e6561[_0x3aa0('0x22')]=qs[_0x3aa0('0x22')](_0xb4a469['query']['limit']);_0x2e6561[_0x3aa0('0x3a')]=qs[_0x3aa0('0x3a')](_0xb4a469[_0x3aa0('0x34')]['offset']);}_0x2e6561[_0x3aa0('0x3b')]=qs['sort'](_0xb4a469[_0x3aa0('0x34')][_0x3aa0('0x3c')]);_0x2e6561['where']=qs[_0x3aa0('0x33')](_[_0x3aa0('0x3d')](_0xb4a469[_0x3aa0('0x34')],_0x178b49[_0x3aa0('0x33')]),_0xe2263e);if(_0xb4a469[_0x3aa0('0x34')]['filter']){_0x2e6561[_0x3aa0('0x3e')]=_[_0x3aa0('0x3f')](_0x2e6561[_0x3aa0('0x3e')],{'$or':_['map'](_0xe2263e,function(_0x4eb758){if(_0x4eb758['type']!=='VIRTUAL'){var _0x36e795={};_0x36e795[_0x4eb758[_0x3aa0('0x29')]]={'$like':'%'+_0xb4a469[_0x3aa0('0x34')][_0x3aa0('0x40')]+'%'};return _0x36e795;}})});}_0x2e6561=_['merge']({},_0x2e6561,_0xb4a469['options']);var _0x499f3e={'where':_0x2e6561[_0x3aa0('0x3e')]};return db[_0x3aa0('0x2e')]['count'](_0x499f3e)[_0x3aa0('0x27')](function(_0x3b8077){_0x2ba3cf[_0x3aa0('0x21')]=_0x3b8077;if(_0xb4a469[_0x3aa0('0x34')][_0x3aa0('0x41')]){_0x2e6561['include']=[{'all':!![]}];}return db[_0x3aa0('0x2e')][_0x3aa0('0x42')](_0x2e6561);})['then'](function(_0x2e0ad9){_0x2ba3cf[_0x3aa0('0x43')]=_0x2e0ad9;return _0x2ba3cf;})['then'](respondWithFilteredResult(_0x34f20c,_0x2e6561))[_0x3aa0('0x44')](handleError(_0x34f20c,null));};exports['show']=function(_0x3996ce,_0x5a323){var _0x5ae846={'raw':!![],'where':{'id':_0x3996ce[_0x3aa0('0x45')]['id']}},_0x445336={};_0x445336[_0x3aa0('0x32')]=_[_0x3aa0('0x46')](db[_0x3aa0('0x2e')][_0x3aa0('0x2f')]);_0x445336[_0x3aa0('0x34')]=_['keys'](_0x3996ce[_0x3aa0('0x34')]);_0x445336['filters']=_[_0x3aa0('0x36')](_0x445336['model'],_0x445336[_0x3aa0('0x34')]);_0x5ae846[_0x3aa0('0x35')]=_['intersection'](_0x445336[_0x3aa0('0x32')],qs['fields'](_0x3996ce[_0x3aa0('0x34')]['fields']));_0x5ae846[_0x3aa0('0x35')]=_0x5ae846[_0x3aa0('0x35')][_0x3aa0('0x47')]?_0x5ae846[_0x3aa0('0x35')]:_0x445336['model'];if(_0x3996ce['query'][_0x3aa0('0x41')]){_0x5ae846[_0x3aa0('0x48')]=[{'all':!![]}];}_0x5ae846=_['merge']({},_0x5ae846,_0x3996ce['options']);return db[_0x3aa0('0x2e')][_0x3aa0('0x49')](_0x5ae846)['then'](handleEntityNotFound(_0x5a323,null))[_0x3aa0('0x27')](respondWithResult(_0x5a323,null))['catch'](handleError(_0x5a323,null));};exports[_0x3aa0('0x4a')]=function(_0x39c00d,_0x28af0d){return db[_0x3aa0('0x2e')]['create'](_0x39c00d[_0x3aa0('0x4b')],{})[_0x3aa0('0x27')](respondWithResult(_0x28af0d,0xc9))[_0x3aa0('0x44')](handleError(_0x28af0d,null));};exports[_0x3aa0('0x4c')]=function(_0x29d5d1,_0x4dd674){if(_0x29d5d1[_0x3aa0('0x4b')]['id']){delete _0x29d5d1[_0x3aa0('0x4b')]['id'];}return db[_0x3aa0('0x2e')][_0x3aa0('0x49')]({'where':{'id':_0x29d5d1[_0x3aa0('0x45')]['id']}})[_0x3aa0('0x27')](handleEntityNotFound(_0x4dd674,null))[_0x3aa0('0x27')](saveUpdates(_0x29d5d1[_0x3aa0('0x4b')],null))[_0x3aa0('0x27')](respondWithResult(_0x4dd674,null))[_0x3aa0('0x44')](handleError(_0x4dd674,null));};exports[_0x3aa0('0x4d')]=function(_0x9da452,_0x13a4c4){return db[_0x3aa0('0x2e')]['find']({'where':{'id':_0x9da452['params']['id']}})[_0x3aa0('0x27')](handleEntityNotFound(_0x13a4c4,null))[_0x3aa0('0x27')](removeEntity(_0x13a4c4,null))['catch'](handleError(_0x13a4c4,null));};exports[_0x3aa0('0x4e')]=function(_0x3ed6c7,_0x421657){return db['MailQueueReport'][_0x3aa0('0x4e')]()[_0x3aa0('0x27')](respondWithResult(_0x421657,null))['catch'](handleError(_0x421657,null));};