84d22584d01d76ef0315f9755d4ed2e84d0f9452
[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 _0x2591=['params','rawAttributes','includeAll','find','catch','update','body','describe','html-pdf','rimraf','fast-json-patch','request-promise','moment','util','sox','to-csv','ejs','lodash','squel','crypto','jsforce','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','json','count','offset','limit','set','Content-Range','apply','reject','then','destroy','end','error','name','send','index','map','MailQueueReport','fieldName','type','query','keys','filters','intersection','attributes','fields','length','model','hasOwnProperty','nolimit','order','sort','where','merge','VIRTUAL','filter','options','include','findAll','rows','show'];(function(_0x510000,_0x3ad84a){var _0x38f83b=function(_0x1c5a25){while(--_0x1c5a25){_0x510000['push'](_0x510000['shift']());}};_0x38f83b(++_0x3ad84a);}(_0x2591,0x1be));var _0x1259=function(_0x3b95d6,_0x47817e){_0x3b95d6=_0x3b95d6-0x0;var _0x318698=_0x2591[_0x3b95d6];return _0x318698;};'use strict';var pdf=require(_0x1259('0x0'));var emlformat=require('eml-format');var rimraf=require(_0x1259('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x1259('0x2'));var rp=require(_0x1259('0x3'));var moment=require(_0x1259('0x4'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0x1259('0x5'));var path=require('path');var sox=require(_0x1259('0x6'));var csv=require(_0x1259('0x7'));var ejs=require(_0x1259('0x8'));var fs=require('fs');var _=require(_0x1259('0x9'));var squel=require(_0x1259('0xa'));var crypto=require(_0x1259('0xb'));var jsforce=require(_0x1259('0xc'));var deskjs=require('desk.js');var toCsv=require(_0x1259('0x7'));var querystring=require(_0x1259('0xd'));var Papa=require(_0x1259('0xe'));var Redis=require(_0x1259('0xf'));var authService=require(_0x1259('0x10'));var qs=require('../../components/parsers/qs');var as=require(_0x1259('0x11'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x1259('0x12'))(_0x1259('0x13'));var utils=require('../../config/utils');var config=require(_0x1259('0x14'));var licenseUtil=require(_0x1259('0x15'));var db=require(_0x1259('0x16'))['db'];function respondWithStatusCode(_0xd78263,_0x38ddb0){_0x38ddb0=_0x38ddb0||0xcc;return function(_0xa83eda){if(_0xa83eda){return _0xd78263[_0x1259('0x17')](_0x38ddb0);}return _0xd78263[_0x1259('0x18')](_0x38ddb0)['end']();};}function respondWithResult(_0x206b84,_0x143e96){_0x143e96=_0x143e96||0xc8;return function(_0x398c2e){if(_0x398c2e){return _0x206b84[_0x1259('0x18')](_0x143e96)[_0x1259('0x19')](_0x398c2e);}};}function respondWithFilteredResult(_0x5c1804,_0x2e6b41){return function(_0x25ea84){if(_0x25ea84){var _0x14e6d0=_0x25ea84[_0x1259('0x1a')],_0x254f1f=_0x2e6b41['offset'],_0x4eca7f=_0x2e6b41[_0x1259('0x1b')]+_0x2e6b41[_0x1259('0x1c')],_0x3811bf;if(_0x4eca7f>=_0x14e6d0){_0x4eca7f=_0x14e6d0;_0x3811bf=0xc8;}else{_0x3811bf=0xce;}_0x5c1804[_0x1259('0x18')](_0x3811bf);return _0x5c1804[_0x1259('0x1d')](_0x1259('0x1e'),_0x254f1f+'-'+_0x4eca7f+'/'+_0x14e6d0)[_0x1259('0x19')](_0x25ea84);}return null;};}function patchUpdates(_0x39360d){return function(_0x5752a9){try{jsonpatch[_0x1259('0x1f')](_0x5752a9,_0x39360d,!![]);}catch(_0x5bf16f){return BPromise[_0x1259('0x20')](_0x5bf16f);}return _0x5752a9['save']();};}function saveUpdates(_0x5ef60b,_0x42a9f0){return function(_0xdf4918){if(_0xdf4918){return _0xdf4918['update'](_0x5ef60b)[_0x1259('0x21')](function(_0x4e5979){return _0x4e5979;});}return null;};}function removeEntity(_0x18cc68,_0x5b8dc8){return function(_0x1d4540){if(_0x1d4540){return _0x1d4540[_0x1259('0x22')]()[_0x1259('0x21')](function(){_0x18cc68[_0x1259('0x18')](0xcc)[_0x1259('0x23')]();});}};}function handleEntityNotFound(_0x5dbc20,_0x373a45){return function(_0x37cec8){if(!_0x37cec8){_0x5dbc20['sendStatus'](0x194);}return _0x37cec8;};}function handleError(_0x2ce359,_0x3b93be){_0x3b93be=_0x3b93be||0x1f4;return function(_0x565592){logger[_0x1259('0x24')](_0x565592['stack']);if(_0x565592[_0x1259('0x25')]){delete _0x565592[_0x1259('0x25')];}_0x2ce359[_0x1259('0x18')](_0x3b93be)[_0x1259('0x26')](_0x565592);};}exports[_0x1259('0x27')]=function(_0x211bb0,_0x56d24a){var _0x3ffcf2={},_0x20c271={},_0x1f6b72={'count':0x0,'rows':[]};var _0x19f473=_[_0x1259('0x28')](db[_0x1259('0x29')]['rawAttributes'],function(_0x401da0){return{'name':_0x401da0[_0x1259('0x2a')],'type':_0x401da0[_0x1259('0x2b')]['key']};});_0x20c271['model']=_[_0x1259('0x28')](_0x19f473,_0x1259('0x25'));_0x20c271[_0x1259('0x2c')]=_[_0x1259('0x2d')](_0x211bb0[_0x1259('0x2c')]);_0x20c271[_0x1259('0x2e')]=_[_0x1259('0x2f')](_0x20c271['model'],_0x20c271[_0x1259('0x2c')]);_0x3ffcf2[_0x1259('0x30')]=_[_0x1259('0x2f')](_0x20c271['model'],qs[_0x1259('0x31')](_0x211bb0[_0x1259('0x2c')]['fields']));_0x3ffcf2[_0x1259('0x30')]=_0x3ffcf2[_0x1259('0x30')][_0x1259('0x32')]?_0x3ffcf2[_0x1259('0x30')]:_0x20c271[_0x1259('0x33')];if(!_0x211bb0[_0x1259('0x2c')][_0x1259('0x34')](_0x1259('0x35'))){_0x3ffcf2[_0x1259('0x1c')]=qs[_0x1259('0x1c')](_0x211bb0['query']['limit']);_0x3ffcf2[_0x1259('0x1b')]=qs['offset'](_0x211bb0['query'][_0x1259('0x1b')]);}_0x3ffcf2[_0x1259('0x36')]=qs[_0x1259('0x37')](_0x211bb0[_0x1259('0x2c')][_0x1259('0x37')]);_0x3ffcf2[_0x1259('0x38')]=qs[_0x1259('0x2e')](_['pick'](_0x211bb0['query'],_0x20c271[_0x1259('0x2e')]),_0x19f473);if(_0x211bb0[_0x1259('0x2c')]['filter']){_0x3ffcf2['where']=_[_0x1259('0x39')](_0x3ffcf2[_0x1259('0x38')],{'$or':_[_0x1259('0x28')](_0x19f473,function(_0x3ec7a3){if(_0x3ec7a3[_0x1259('0x2b')]!==_0x1259('0x3a')){var _0x3b4dc7={};_0x3b4dc7[_0x3ec7a3[_0x1259('0x25')]]={'$like':'%'+_0x211bb0['query'][_0x1259('0x3b')]+'%'};return _0x3b4dc7;}})});}_0x3ffcf2=_[_0x1259('0x39')]({},_0x3ffcf2,_0x211bb0[_0x1259('0x3c')]);var _0x4faccd={'where':_0x3ffcf2[_0x1259('0x38')]};return db[_0x1259('0x29')][_0x1259('0x1a')](_0x4faccd)[_0x1259('0x21')](function(_0x467acd){_0x1f6b72[_0x1259('0x1a')]=_0x467acd;if(_0x211bb0['query']['includeAll']){_0x3ffcf2[_0x1259('0x3d')]=[{'all':!![]}];}return db[_0x1259('0x29')][_0x1259('0x3e')](_0x3ffcf2);})[_0x1259('0x21')](function(_0x34e47b){_0x1f6b72[_0x1259('0x3f')]=_0x34e47b;return _0x1f6b72;})[_0x1259('0x21')](respondWithFilteredResult(_0x56d24a,_0x3ffcf2))['catch'](handleError(_0x56d24a,null));};exports[_0x1259('0x40')]=function(_0x33d278,_0x2d773d){var _0xd27049={'raw':!![],'where':{'id':_0x33d278[_0x1259('0x41')]['id']}},_0x3706b2={};_0x3706b2[_0x1259('0x33')]=_[_0x1259('0x2d')](db[_0x1259('0x29')][_0x1259('0x42')]);_0x3706b2['query']=_[_0x1259('0x2d')](_0x33d278[_0x1259('0x2c')]);_0x3706b2['filters']=_['intersection'](_0x3706b2['model'],_0x3706b2['query']);_0xd27049[_0x1259('0x30')]=_[_0x1259('0x2f')](_0x3706b2[_0x1259('0x33')],qs['fields'](_0x33d278['query'][_0x1259('0x31')]));_0xd27049[_0x1259('0x30')]=_0xd27049[_0x1259('0x30')]['length']?_0xd27049['attributes']:_0x3706b2['model'];if(_0x33d278[_0x1259('0x2c')][_0x1259('0x43')]){_0xd27049[_0x1259('0x3d')]=[{'all':!![]}];}_0xd27049=_[_0x1259('0x39')]({},_0xd27049,_0x33d278['options']);return db[_0x1259('0x29')][_0x1259('0x44')](_0xd27049)[_0x1259('0x21')](handleEntityNotFound(_0x2d773d,null))[_0x1259('0x21')](respondWithResult(_0x2d773d,null))[_0x1259('0x45')](handleError(_0x2d773d,null));};exports['create']=function(_0x137a65,_0x5d06f9){return db[_0x1259('0x29')]['create'](_0x137a65['body'],{})[_0x1259('0x21')](respondWithResult(_0x5d06f9,0xc9))[_0x1259('0x45')](handleError(_0x5d06f9,null));};exports[_0x1259('0x46')]=function(_0x4982c6,_0x1a1caf){if(_0x4982c6[_0x1259('0x47')]['id']){delete _0x4982c6[_0x1259('0x47')]['id'];}return db['MailQueueReport'][_0x1259('0x44')]({'where':{'id':_0x4982c6[_0x1259('0x41')]['id']}})[_0x1259('0x21')](handleEntityNotFound(_0x1a1caf,null))[_0x1259('0x21')](saveUpdates(_0x4982c6['body'],null))[_0x1259('0x21')](respondWithResult(_0x1a1caf,null))[_0x1259('0x45')](handleError(_0x1a1caf,null));};exports[_0x1259('0x22')]=function(_0x1b96f9,_0x3185dc){return db[_0x1259('0x29')]['find']({'where':{'id':_0x1b96f9['params']['id']}})[_0x1259('0x21')](handleEntityNotFound(_0x3185dc,null))['then'](removeEntity(_0x3185dc,null))['catch'](handleError(_0x3185dc,null));};exports[_0x1259('0x48')]=function(_0x585d11,_0x249980){return db[_0x1259('0x29')][_0x1259('0x48')]()[_0x1259('0x21')](respondWithResult(_0x249980,null))[_0x1259('0x45')](handleError(_0x249980,null));};