3c8cd8be431462253341c62c1981dfeb09946add
[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 _0x0344=['rawAttributes','model','keys','query','filters','intersection','fields','attributes','length','nolimit','order','where','pick','filter','map','type','key','VIRTUAL','field','merge','options','includeAll','include','rows','catch','show','params','find','create','body','describe','html-pdf','eml-format','zip-dir','fast-json-patch','request-promise','moment','mustache','path','sox','to-csv','ejs','lodash','squel','jsforce','querystring','papaparse','ioredis','../../components/auth/service','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','end','json','count','offset','limit','set','Content-Range','apply','save','update','then','destroy','error','stack','name','send','index','MailQueueReport'];(function(_0x4eb3a1,_0x5141c1){var _0x25b271=function(_0x44b4a4){while(--_0x44b4a4){_0x4eb3a1['push'](_0x4eb3a1['shift']());}};_0x25b271(++_0x5141c1);}(_0x0344,0x14b));var _0x4034=function(_0x40e83e,_0xd12e29){_0x40e83e=_0x40e83e-0x0;var _0x37e781=_0x0344[_0x40e83e];return _0x37e781;};'use strict';var pdf=require(_0x4034('0x0'));var emlformat=require(_0x4034('0x1'));var rimraf=require('rimraf');var zipdir=require(_0x4034('0x2'));var jsonpatch=require(_0x4034('0x3'));var rp=require(_0x4034('0x4'));var moment=require(_0x4034('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x4034('0x6'));var util=require('util');var path=require(_0x4034('0x7'));var sox=require(_0x4034('0x8'));var csv=require(_0x4034('0x9'));var ejs=require(_0x4034('0xa'));var fs=require('fs');var _=require(_0x4034('0xb'));var squel=require(_0x4034('0xc'));var crypto=require('crypto');var jsforce=require(_0x4034('0xd'));var deskjs=require('desk.js');var toCsv=require(_0x4034('0x9'));var querystring=require(_0x4034('0xe'));var Papa=require(_0x4034('0xf'));var Redis=require(_0x4034('0x10'));var authService=require(_0x4034('0x11'));var qs=require('../../components/parsers/qs');var hardwareService=require(_0x4034('0x12'));var logger=require(_0x4034('0x13'))(_0x4034('0x14'));var utils=require(_0x4034('0x15'));var config=require(_0x4034('0x16'));var db=require(_0x4034('0x17'))['db'];function respondWithStatusCode(_0x4267b9,_0x379b7f){_0x379b7f=_0x379b7f||0xcc;return function(_0xa0c119){if(_0xa0c119){return _0x4267b9[_0x4034('0x18')](_0x379b7f);}return _0x4267b9[_0x4034('0x19')](_0x379b7f)[_0x4034('0x1a')]();};}function respondWithResult(_0x1f73eb,_0x2ed53f){_0x2ed53f=_0x2ed53f||0xc8;return function(_0x44d9a0){if(_0x44d9a0){return _0x1f73eb[_0x4034('0x19')](_0x2ed53f)[_0x4034('0x1b')](_0x44d9a0);}};}function respondWithFilteredResult(_0x24262e,_0x2ba558){return function(_0x18c79f){if(_0x18c79f){var _0x5c698a=_0x18c79f[_0x4034('0x1c')],_0x5197c0=_0x2ba558[_0x4034('0x1d')],_0x1feeb2=_0x2ba558['offset']+_0x2ba558[_0x4034('0x1e')],_0xdc75b4;if(_0x1feeb2>=_0x5c698a){_0x1feeb2=_0x5c698a;_0xdc75b4=0xc8;}else{_0xdc75b4=0xce;}_0x24262e[_0x4034('0x19')](_0xdc75b4);return _0x24262e[_0x4034('0x1f')](_0x4034('0x20'),_0x5197c0+'-'+_0x1feeb2+'/'+_0x5c698a)['json'](_0x18c79f);}return null;};}function patchUpdates(_0x1b71aa){return function(_0x2b4308){try{jsonpatch[_0x4034('0x21')](_0x2b4308,_0x1b71aa,!![]);}catch(_0x546c63){return BPromise['reject'](_0x546c63);}return _0x2b4308[_0x4034('0x22')]();};}function saveUpdates(_0x3462d0,_0xc59ed8){return function(_0x17e87c){if(_0x17e87c){return _0x17e87c[_0x4034('0x23')](_0x3462d0)[_0x4034('0x24')](function(_0x3e2d14){return _0x3e2d14;});}return null;};}function removeEntity(_0x38a4fb,_0x94ef34){return function(_0x371366){if(_0x371366){return _0x371366[_0x4034('0x25')]()[_0x4034('0x24')](function(){_0x38a4fb[_0x4034('0x19')](0xcc)[_0x4034('0x1a')]();});}};}function handleEntityNotFound(_0x53c85a,_0x163868){return function(_0x5f59ef){if(!_0x5f59ef){_0x53c85a['sendStatus'](0x194);}return _0x5f59ef;};}function handleError(_0x10c83e,_0x101812){_0x101812=_0x101812||0x1f4;return function(_0x25dbb4){logger[_0x4034('0x26')](_0x25dbb4[_0x4034('0x27')]);if(_0x25dbb4['name']){delete _0x25dbb4[_0x4034('0x28')];}_0x10c83e['status'](_0x101812)[_0x4034('0x29')](_0x25dbb4);};}exports[_0x4034('0x2a')]=function(_0x1f23b1,_0x51c025){var _0x136cc9={},_0x12bbe0={},_0x2973d8={'count':0x0,'rows':[]};var _0x4e26cc=db[_0x4034('0x2b')][_0x4034('0x2c')];_0x12bbe0[_0x4034('0x2d')]=_['keys'](_0x4e26cc);_0x12bbe0['query']=_[_0x4034('0x2e')](_0x1f23b1[_0x4034('0x2f')]);_0x12bbe0[_0x4034('0x30')]=_['intersection'](_0x12bbe0[_0x4034('0x2d')],_0x12bbe0[_0x4034('0x2f')]);_0x136cc9['attributes']=_[_0x4034('0x31')](_0x12bbe0[_0x4034('0x2d')],qs[_0x4034('0x32')](_0x1f23b1[_0x4034('0x2f')][_0x4034('0x32')]));_0x136cc9[_0x4034('0x33')]=_0x136cc9['attributes'][_0x4034('0x34')]?_0x136cc9[_0x4034('0x33')]:_0x12bbe0[_0x4034('0x2d')];if(!_0x1f23b1['query']['hasOwnProperty'](_0x4034('0x35'))){_0x136cc9[_0x4034('0x1e')]=qs['limit'](_0x1f23b1[_0x4034('0x2f')][_0x4034('0x1e')]);_0x136cc9[_0x4034('0x1d')]=qs['offset'](_0x1f23b1[_0x4034('0x2f')][_0x4034('0x1d')]);}_0x136cc9[_0x4034('0x36')]=qs['sort'](_0x1f23b1[_0x4034('0x2f')]['sort']);_0x136cc9[_0x4034('0x37')]=qs[_0x4034('0x30')](_[_0x4034('0x38')](_0x1f23b1[_0x4034('0x2f')],_0x12bbe0[_0x4034('0x30')]));if(_0x1f23b1[_0x4034('0x2f')][_0x4034('0x39')]){_0x136cc9['where']=_['merge'](_0x136cc9[_0x4034('0x37')],{'$or':_[_0x4034('0x3a')](_0x4e26cc,function(_0x25803e){if(_0x25803e[_0x4034('0x3b')][_0x4034('0x3c')]!==_0x4034('0x3d')){var _0x2eb9d3={};_0x2eb9d3[_0x25803e[_0x4034('0x3e')]]={'$like':'%'+_0x1f23b1[_0x4034('0x2f')][_0x4034('0x39')]+'%'};return _0x2eb9d3;}})});}_0x136cc9=_[_0x4034('0x3f')]({},_0x136cc9,_0x1f23b1[_0x4034('0x40')]);var _0x165c6f={'where':_0x136cc9['where']};return db['MailQueueReport']['count'](_0x165c6f)[_0x4034('0x24')](function(_0x57c803){_0x2973d8[_0x4034('0x1c')]=_0x57c803;if(_0x1f23b1[_0x4034('0x2f')][_0x4034('0x41')]){_0x136cc9[_0x4034('0x42')]=[{'all':!![]}];}return db[_0x4034('0x2b')]['findAll'](_0x136cc9);})[_0x4034('0x24')](function(_0x15d462){_0x2973d8[_0x4034('0x43')]=_0x15d462;return _0x2973d8;})[_0x4034('0x24')](respondWithFilteredResult(_0x51c025,_0x136cc9))[_0x4034('0x44')](handleError(_0x51c025,null));};exports[_0x4034('0x45')]=function(_0xd09c1c,_0x96c1fc){var _0x20b319={'raw':!![],'where':{'id':_0xd09c1c[_0x4034('0x46')]['id']}},_0x27c13b={};_0x27c13b[_0x4034('0x2d')]=_[_0x4034('0x2e')](db[_0x4034('0x2b')][_0x4034('0x2c')]);_0x27c13b['query']=_[_0x4034('0x2e')](_0xd09c1c['query']);_0x27c13b[_0x4034('0x30')]=_[_0x4034('0x31')](_0x27c13b[_0x4034('0x2d')],_0x27c13b['query']);_0x20b319[_0x4034('0x33')]=_[_0x4034('0x31')](_0x27c13b['model'],qs[_0x4034('0x32')](_0xd09c1c[_0x4034('0x2f')][_0x4034('0x32')]));_0x20b319[_0x4034('0x33')]=_0x20b319[_0x4034('0x33')][_0x4034('0x34')]?_0x20b319['attributes']:_0x27c13b[_0x4034('0x2d')];if(_0xd09c1c[_0x4034('0x2f')][_0x4034('0x41')]){_0x20b319[_0x4034('0x42')]=[{'all':!![]}];}_0x20b319=_[_0x4034('0x3f')]({},_0x20b319,_0xd09c1c[_0x4034('0x40')]);return db[_0x4034('0x2b')][_0x4034('0x47')](_0x20b319)[_0x4034('0x24')](handleEntityNotFound(_0x96c1fc,null))[_0x4034('0x24')](respondWithResult(_0x96c1fc,null))[_0x4034('0x44')](handleError(_0x96c1fc,null));};exports[_0x4034('0x48')]=function(_0x317d2e,_0x281353){return db[_0x4034('0x2b')]['create'](_0x317d2e[_0x4034('0x49')],{})[_0x4034('0x24')](respondWithResult(_0x281353,0xc9))[_0x4034('0x44')](handleError(_0x281353,null));};exports[_0x4034('0x23')]=function(_0x3dd592,_0x3c8979){if(_0x3dd592[_0x4034('0x49')]['id']){delete _0x3dd592['body']['id'];}return db[_0x4034('0x2b')][_0x4034('0x47')]({'where':{'id':_0x3dd592[_0x4034('0x46')]['id']}})['then'](handleEntityNotFound(_0x3c8979,null))[_0x4034('0x24')](saveUpdates(_0x3dd592[_0x4034('0x49')],null))[_0x4034('0x24')](respondWithResult(_0x3c8979,null))['catch'](handleError(_0x3c8979,null));};exports['destroy']=function(_0x28c145,_0x5f54ff){return db['MailQueueReport']['find']({'where':{'id':_0x28c145[_0x4034('0x46')]['id']}})[_0x4034('0x24')](handleEntityNotFound(_0x5f54ff,null))[_0x4034('0x24')](removeEntity(_0x5f54ff,null))[_0x4034('0x44')](handleError(_0x5f54ff,null));};exports[_0x4034('0x4a')]=function(_0x34ce2b,_0x520005){return db[_0x4034('0x2b')][_0x4034('0x4a')]()[_0x4034('0x24')](respondWithResult(_0x520005,null))['catch'](handleError(_0x520005,null));};