Built motion from commit (unavailable).|2.5.26
[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 _0x4bfe=['Content-Range','apply','update','destroy','then','sendStatus','stack','name','send','index','MailQueueReport','rawAttributes','fieldName','type','model','map','query','filters','attributes','intersection','fields','length','hasOwnProperty','order','sort','filter','where','merge','VIRTUAL','options','includeAll','include','findAll','rows','catch','show','keys','find','create','body','params','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','path','sox','to-csv','lodash','squel','crypto','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','end','status','json','count','offset','limit','set'];(function(_0x1609fc,_0x35fd25){var _0x394ff2=function(_0x2fa291){while(--_0x2fa291){_0x1609fc['push'](_0x1609fc['shift']());}};_0x394ff2(++_0x35fd25);}(_0x4bfe,0x1d3));var _0xe4bf=function(_0x248e23,_0x2fac24){_0x248e23=_0x248e23-0x0;var _0x2e5fb9=_0x4bfe[_0x248e23];return _0x2e5fb9;};'use strict';var emlformat=require(_0xe4bf('0x0'));var rimraf=require(_0xe4bf('0x1'));var zipdir=require(_0xe4bf('0x2'));var jsonpatch=require(_0xe4bf('0x3'));var rp=require(_0xe4bf('0x4'));var moment=require('moment');var BPromise=require(_0xe4bf('0x5'));var Mustache=require('mustache');var util=require('util');var path=require(_0xe4bf('0x6'));var sox=require(_0xe4bf('0x7'));var csv=require(_0xe4bf('0x8'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xe4bf('0x9'));var squel=require(_0xe4bf('0xa'));var crypto=require(_0xe4bf('0xb'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0xe4bf('0x8'));var querystring=require(_0xe4bf('0xc'));var Papa=require(_0xe4bf('0xd'));var Redis=require(_0xe4bf('0xe'));var authService=require(_0xe4bf('0xf'));var qs=require(_0xe4bf('0x10'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xe4bf('0x11'));var logger=require(_0xe4bf('0x12'))(_0xe4bf('0x13'));var utils=require('../../config/utils');var config=require(_0xe4bf('0x14'));var licenseUtil=require(_0xe4bf('0x15'));var db=require(_0xe4bf('0x16'))['db'];function respondWithStatusCode(_0x2f8cc9,_0x52978b){_0x52978b=_0x52978b||0xcc;return function(_0x56ce45){if(_0x56ce45){return _0x2f8cc9['sendStatus'](_0x52978b);}return _0x2f8cc9['status'](_0x52978b)[_0xe4bf('0x17')]();};}function respondWithResult(_0x3bbff9,_0x16d911){_0x16d911=_0x16d911||0xc8;return function(_0x4e0a5a){if(_0x4e0a5a){return _0x3bbff9[_0xe4bf('0x18')](_0x16d911)[_0xe4bf('0x19')](_0x4e0a5a);}};}function respondWithFilteredResult(_0x28f602,_0x3e432e){return function(_0x3d526b){if(_0x3d526b){var _0x4a3dd2=_0x3d526b[_0xe4bf('0x1a')],_0x570d7a=_0x3e432e[_0xe4bf('0x1b')],_0x19cf27=_0x3e432e[_0xe4bf('0x1b')]+_0x3e432e[_0xe4bf('0x1c')],_0x56f741;if(_0x19cf27>=_0x4a3dd2){_0x19cf27=_0x4a3dd2;_0x56f741=0xc8;}else{_0x56f741=0xce;}_0x28f602[_0xe4bf('0x18')](_0x56f741);return _0x28f602[_0xe4bf('0x1d')](_0xe4bf('0x1e'),_0x570d7a+'-'+_0x19cf27+'/'+_0x4a3dd2)[_0xe4bf('0x19')](_0x3d526b);}return null;};}function patchUpdates(_0xbfab72){return function(_0x3a8def){try{jsonpatch[_0xe4bf('0x1f')](_0x3a8def,_0xbfab72,!![]);}catch(_0x2948b8){return BPromise['reject'](_0x2948b8);}return _0x3a8def['save']();};}function saveUpdates(_0x159747,_0x398d09){return function(_0x531de2){if(_0x531de2){return _0x531de2[_0xe4bf('0x20')](_0x159747)['then'](function(_0x5bc4d0){return _0x5bc4d0;});}return null;};}function removeEntity(_0x3accfc,_0x1d8c18){return function(_0x537ff6){if(_0x537ff6){return _0x537ff6[_0xe4bf('0x21')]()[_0xe4bf('0x22')](function(){_0x3accfc[_0xe4bf('0x18')](0xcc)['end']();});}};}function handleEntityNotFound(_0x2c3cf3,_0x2295c7){return function(_0x130a21){if(!_0x130a21){_0x2c3cf3[_0xe4bf('0x23')](0x194);}return _0x130a21;};}function handleError(_0x3cfb60,_0x5baf83){_0x5baf83=_0x5baf83||0x1f4;return function(_0x124723){logger['error'](_0x124723[_0xe4bf('0x24')]);if(_0x124723[_0xe4bf('0x25')]){delete _0x124723[_0xe4bf('0x25')];}_0x3cfb60['status'](_0x5baf83)[_0xe4bf('0x26')](_0x124723);};}exports[_0xe4bf('0x27')]=function(_0x27021d,_0x54b6b6){var _0x34f5dd={},_0x30646b={},_0x5c77b8={'count':0x0,'rows':[]};var _0xd01887=_['map'](db[_0xe4bf('0x28')][_0xe4bf('0x29')],function(_0x530e5){return{'name':_0x530e5[_0xe4bf('0x2a')],'type':_0x530e5[_0xe4bf('0x2b')]['key']};});_0x30646b[_0xe4bf('0x2c')]=_[_0xe4bf('0x2d')](_0xd01887,'name');_0x30646b[_0xe4bf('0x2e')]=_['keys'](_0x27021d[_0xe4bf('0x2e')]);_0x30646b[_0xe4bf('0x2f')]=_['intersection'](_0x30646b[_0xe4bf('0x2c')],_0x30646b[_0xe4bf('0x2e')]);_0x34f5dd[_0xe4bf('0x30')]=_[_0xe4bf('0x31')](_0x30646b[_0xe4bf('0x2c')],qs[_0xe4bf('0x32')](_0x27021d[_0xe4bf('0x2e')][_0xe4bf('0x32')]));_0x34f5dd[_0xe4bf('0x30')]=_0x34f5dd[_0xe4bf('0x30')][_0xe4bf('0x33')]?_0x34f5dd[_0xe4bf('0x30')]:_0x30646b[_0xe4bf('0x2c')];if(!_0x27021d[_0xe4bf('0x2e')][_0xe4bf('0x34')]('nolimit')){_0x34f5dd[_0xe4bf('0x1c')]=qs[_0xe4bf('0x1c')](_0x27021d[_0xe4bf('0x2e')]['limit']);_0x34f5dd['offset']=qs[_0xe4bf('0x1b')](_0x27021d[_0xe4bf('0x2e')][_0xe4bf('0x1b')]);}_0x34f5dd[_0xe4bf('0x35')]=qs[_0xe4bf('0x36')](_0x27021d['query'][_0xe4bf('0x36')]);_0x34f5dd['where']=qs[_0xe4bf('0x2f')](_['pick'](_0x27021d['query'],_0x30646b['filters']),_0xd01887);if(_0x27021d['query'][_0xe4bf('0x37')]){_0x34f5dd[_0xe4bf('0x38')]=_[_0xe4bf('0x39')](_0x34f5dd['where'],{'$or':_[_0xe4bf('0x2d')](_0xd01887,function(_0xa074b3){if(_0xa074b3[_0xe4bf('0x2b')]!==_0xe4bf('0x3a')){var _0x2fcb14={};_0x2fcb14[_0xa074b3[_0xe4bf('0x25')]]={'$like':'%'+_0x27021d['query'][_0xe4bf('0x37')]+'%'};return _0x2fcb14;}})});}_0x34f5dd=_[_0xe4bf('0x39')]({},_0x34f5dd,_0x27021d[_0xe4bf('0x3b')]);var _0x4c835d={'where':_0x34f5dd[_0xe4bf('0x38')]};return db[_0xe4bf('0x28')][_0xe4bf('0x1a')](_0x4c835d)[_0xe4bf('0x22')](function(_0x2d1d64){_0x5c77b8['count']=_0x2d1d64;if(_0x27021d[_0xe4bf('0x2e')][_0xe4bf('0x3c')]){_0x34f5dd[_0xe4bf('0x3d')]=[{'all':!![]}];}return db[_0xe4bf('0x28')][_0xe4bf('0x3e')](_0x34f5dd);})[_0xe4bf('0x22')](function(_0x5845fb){_0x5c77b8[_0xe4bf('0x3f')]=_0x5845fb;return _0x5c77b8;})[_0xe4bf('0x22')](respondWithFilteredResult(_0x54b6b6,_0x34f5dd))[_0xe4bf('0x40')](handleError(_0x54b6b6,null));};exports[_0xe4bf('0x41')]=function(_0x1450b0,_0x32e83f){var _0x856b3b={'raw':!![],'where':{'id':_0x1450b0['params']['id']}},_0x8e4bb6={};_0x8e4bb6[_0xe4bf('0x2c')]=_[_0xe4bf('0x42')](db[_0xe4bf('0x28')]['rawAttributes']);_0x8e4bb6[_0xe4bf('0x2e')]=_[_0xe4bf('0x42')](_0x1450b0['query']);_0x8e4bb6[_0xe4bf('0x2f')]=_[_0xe4bf('0x31')](_0x8e4bb6[_0xe4bf('0x2c')],_0x8e4bb6['query']);_0x856b3b[_0xe4bf('0x30')]=_[_0xe4bf('0x31')](_0x8e4bb6[_0xe4bf('0x2c')],qs[_0xe4bf('0x32')](_0x1450b0[_0xe4bf('0x2e')][_0xe4bf('0x32')]));_0x856b3b[_0xe4bf('0x30')]=_0x856b3b[_0xe4bf('0x30')][_0xe4bf('0x33')]?_0x856b3b['attributes']:_0x8e4bb6['model'];if(_0x1450b0['query']['includeAll']){_0x856b3b['include']=[{'all':!![]}];}_0x856b3b=_['merge']({},_0x856b3b,_0x1450b0[_0xe4bf('0x3b')]);return db[_0xe4bf('0x28')][_0xe4bf('0x43')](_0x856b3b)[_0xe4bf('0x22')](handleEntityNotFound(_0x32e83f,null))['then'](respondWithResult(_0x32e83f,null))[_0xe4bf('0x40')](handleError(_0x32e83f,null));};exports[_0xe4bf('0x44')]=function(_0x2cccd4,_0x414089){return db[_0xe4bf('0x28')][_0xe4bf('0x44')](_0x2cccd4[_0xe4bf('0x45')],{})['then'](respondWithResult(_0x414089,0xc9))[_0xe4bf('0x40')](handleError(_0x414089,null));};exports[_0xe4bf('0x20')]=function(_0x887324,_0x76a0c){if(_0x887324[_0xe4bf('0x45')]['id']){delete _0x887324[_0xe4bf('0x45')]['id'];}return db[_0xe4bf('0x28')]['find']({'where':{'id':_0x887324['params']['id']}})[_0xe4bf('0x22')](handleEntityNotFound(_0x76a0c,null))[_0xe4bf('0x22')](saveUpdates(_0x887324[_0xe4bf('0x45')],null))[_0xe4bf('0x22')](respondWithResult(_0x76a0c,null))['catch'](handleError(_0x76a0c,null));};exports[_0xe4bf('0x21')]=function(_0x483118,_0xa2344d){return db['MailQueueReport']['find']({'where':{'id':_0x483118[_0xe4bf('0x46')]['id']}})[_0xe4bf('0x22')](handleEntityNotFound(_0xa2344d,null))['then'](removeEntity(_0xa2344d,null))[_0xe4bf('0x40')](handleError(_0xa2344d,null));};exports['describe']=function(_0x48b472,_0x472041){return db[_0xe4bf('0x28')]['describe']()[_0xe4bf('0x22')](respondWithResult(_0x472041,null))[_0xe4bf('0x40')](handleError(_0x472041,null));};