Built motion from commit b5996064.|2.6.21
[motion2.git] / server / api / mailTransferReport / mailTransferReport.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 _0x88e2=['squel','crypto','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','json','offset','undefined','limit','count','set','apply','save','update','then','destroy','error','name','send','index','map','MailTransferReport','rawAttributes','fieldName','type','key','model','query','filters','attributes','intersection','fields','hasOwnProperty','nolimit','sort','where','filter','VIRTUAL','includeAll','findAll','rows','show','keys','include','merge','options','catch','create','body','find','params','rimraf','moment','mustache','util','path','sox','ejs','fs-extra','lodash'];(function(_0x191043,_0x83cb47){var _0x658eb0=function(_0x5744b6){while(--_0x5744b6){_0x191043['push'](_0x191043['shift']());}};_0x658eb0(++_0x83cb47);}(_0x88e2,0x11b));var _0x288e=function(_0x29f2f4,_0x47bca1){_0x29f2f4=_0x29f2f4-0x0;var _0x392678=_0x88e2[_0x29f2f4];return _0x392678;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x288e('0x0'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0x288e('0x1'));var BPromise=require('bluebird');var Mustache=require(_0x288e('0x2'));var util=require(_0x288e('0x3'));var path=require(_0x288e('0x4'));var sox=require(_0x288e('0x5'));var csv=require('to-csv');var ejs=require(_0x288e('0x6'));var fs=require('fs');var fs_extra=require(_0x288e('0x7'));var _=require(_0x288e('0x8'));var squel=require(_0x288e('0x9'));var crypto=require(_0x288e('0xa'));var jsforce=require('jsforce');var deskjs=require(_0x288e('0xb'));var toCsv=require('to-csv');var querystring=require(_0x288e('0xc'));var Papa=require(_0x288e('0xd'));var Redis=require(_0x288e('0xe'));var authService=require(_0x288e('0xf'));var qs=require(_0x288e('0x10'));var as=require(_0x288e('0x11'));var hardwareService=require(_0x288e('0x12'));var logger=require(_0x288e('0x13'))(_0x288e('0x14'));var utils=require(_0x288e('0x15'));var config=require(_0x288e('0x16'));var licenseUtil=require(_0x288e('0x17'));var db=require(_0x288e('0x18'))['db'];function respondWithStatusCode(_0x5efc56,_0x1c1f8c){_0x1c1f8c=_0x1c1f8c||0xcc;return function(_0x3b5648){if(_0x3b5648){return _0x5efc56[_0x288e('0x19')](_0x1c1f8c);}return _0x5efc56[_0x288e('0x1a')](_0x1c1f8c)['end']();};}function respondWithResult(_0xad406b,_0x2d3641){_0x2d3641=_0x2d3641||0xc8;return function(_0x4c39bc){if(_0x4c39bc){return _0xad406b[_0x288e('0x1a')](_0x2d3641)[_0x288e('0x1b')](_0x4c39bc);}};}function respondWithFilteredResult(_0x4b81a2,_0x4e152a){return function(_0x40bbd3){if(_0x40bbd3){var _0x4b7d29=typeof _0x4e152a[_0x288e('0x1c')]===_0x288e('0x1d')&&typeof _0x4e152a[_0x288e('0x1e')]==='undefined';var _0x276b78=_0x40bbd3[_0x288e('0x1f')];var _0x5f3d11=_0x4b7d29?0x0:_0x4e152a['offset'];var _0x560a9d=_0x4b7d29?_0x40bbd3[_0x288e('0x1f')]:_0x4e152a[_0x288e('0x1c')]+_0x4e152a['limit'];var _0x3d11c2;if(_0x560a9d>=_0x276b78){_0x560a9d=_0x276b78;_0x3d11c2=0xc8;}else{_0x3d11c2=0xce;}_0x4b81a2[_0x288e('0x1a')](_0x3d11c2);return _0x4b81a2[_0x288e('0x20')]('Content-Range',_0x5f3d11+'-'+_0x560a9d+'/'+_0x276b78)['json'](_0x40bbd3);}return null;};}function patchUpdates(_0x5d808e){return function(_0x20c6b2){try{jsonpatch[_0x288e('0x21')](_0x20c6b2,_0x5d808e,!![]);}catch(_0x36fa3c){return BPromise['reject'](_0x36fa3c);}return _0x20c6b2[_0x288e('0x22')]();};}function saveUpdates(_0x4ce2ec,_0x57aac2){return function(_0x5c1785){if(_0x5c1785){return _0x5c1785[_0x288e('0x23')](_0x4ce2ec)[_0x288e('0x24')](function(_0x3edf95){return _0x3edf95;});}return null;};}function removeEntity(_0x560a20,_0x35de10){return function(_0x26c737){if(_0x26c737){return _0x26c737[_0x288e('0x25')]()['then'](function(){_0x560a20['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x5d188c,_0x11a4aa){return function(_0x39ef23){if(!_0x39ef23){_0x5d188c[_0x288e('0x19')](0x194);}return _0x39ef23;};}function handleError(_0x28052f,_0x3e19e6){_0x3e19e6=_0x3e19e6||0x1f4;return function(_0x1078ce){logger[_0x288e('0x26')](_0x1078ce['stack']);if(_0x1078ce[_0x288e('0x27')]){delete _0x1078ce['name'];}_0x28052f[_0x288e('0x1a')](_0x3e19e6)[_0x288e('0x28')](_0x1078ce);};}exports[_0x288e('0x29')]=function(_0x27f38e,_0x5f0035){var _0x5319fa={},_0x57cab5={},_0x53e9d8={'count':0x0,'rows':[]};var _0xb95d=_[_0x288e('0x2a')](db[_0x288e('0x2b')][_0x288e('0x2c')],function(_0x3fd09d){return{'name':_0x3fd09d[_0x288e('0x2d')],'type':_0x3fd09d[_0x288e('0x2e')][_0x288e('0x2f')]};});_0x57cab5[_0x288e('0x30')]=_[_0x288e('0x2a')](_0xb95d,'name');_0x57cab5[_0x288e('0x31')]=_['keys'](_0x27f38e[_0x288e('0x31')]);_0x57cab5[_0x288e('0x32')]=_['intersection'](_0x57cab5[_0x288e('0x30')],_0x57cab5['query']);_0x5319fa[_0x288e('0x33')]=_[_0x288e('0x34')](_0x57cab5['model'],qs[_0x288e('0x35')](_0x27f38e[_0x288e('0x31')][_0x288e('0x35')]));_0x5319fa[_0x288e('0x33')]=_0x5319fa[_0x288e('0x33')]['length']?_0x5319fa[_0x288e('0x33')]:_0x57cab5[_0x288e('0x30')];if(!_0x27f38e[_0x288e('0x31')][_0x288e('0x36')](_0x288e('0x37'))){_0x5319fa[_0x288e('0x1e')]=qs[_0x288e('0x1e')](_0x27f38e[_0x288e('0x31')][_0x288e('0x1e')]);_0x5319fa[_0x288e('0x1c')]=qs[_0x288e('0x1c')](_0x27f38e['query'][_0x288e('0x1c')]);}_0x5319fa['order']=qs[_0x288e('0x38')](_0x27f38e[_0x288e('0x31')][_0x288e('0x38')]);_0x5319fa[_0x288e('0x39')]=qs[_0x288e('0x32')](_['pick'](_0x27f38e['query'],_0x57cab5[_0x288e('0x32')]),_0xb95d);if(_0x27f38e[_0x288e('0x31')][_0x288e('0x3a')]){_0x5319fa[_0x288e('0x39')]=_['merge'](_0x5319fa[_0x288e('0x39')],{'$or':_['map'](_0xb95d,function(_0x4891b0){if(_0x4891b0['type']!==_0x288e('0x3b')){var _0x11d717={};_0x11d717[_0x4891b0['name']]={'$like':'%'+_0x27f38e[_0x288e('0x31')]['filter']+'%'};return _0x11d717;}})});}_0x5319fa=_['merge']({},_0x5319fa,_0x27f38e['options']);var _0xec361b={'where':_0x5319fa[_0x288e('0x39')]};return db[_0x288e('0x2b')][_0x288e('0x1f')](_0xec361b)[_0x288e('0x24')](function(_0xdc5f69){_0x53e9d8[_0x288e('0x1f')]=_0xdc5f69;if(_0x27f38e[_0x288e('0x31')][_0x288e('0x3c')]){_0x5319fa['include']=[{'all':!![]}];}return db[_0x288e('0x2b')][_0x288e('0x3d')](_0x5319fa);})[_0x288e('0x24')](function(_0x514778){_0x53e9d8[_0x288e('0x3e')]=_0x514778;return _0x53e9d8;})[_0x288e('0x24')](respondWithFilteredResult(_0x5f0035,_0x5319fa))['catch'](handleError(_0x5f0035,null));};exports[_0x288e('0x3f')]=function(_0x2fe0d5,_0x1dcf70){var _0x44791f={'raw':!![],'where':{'id':_0x2fe0d5['params']['id']}},_0x32b364={};_0x32b364[_0x288e('0x30')]=_[_0x288e('0x40')](db['MailTransferReport'][_0x288e('0x2c')]);_0x32b364['query']=_[_0x288e('0x40')](_0x2fe0d5[_0x288e('0x31')]);_0x32b364[_0x288e('0x32')]=_[_0x288e('0x34')](_0x32b364[_0x288e('0x30')],_0x32b364[_0x288e('0x31')]);_0x44791f[_0x288e('0x33')]=_['intersection'](_0x32b364['model'],qs[_0x288e('0x35')](_0x2fe0d5[_0x288e('0x31')]['fields']));_0x44791f[_0x288e('0x33')]=_0x44791f[_0x288e('0x33')]['length']?_0x44791f['attributes']:_0x32b364[_0x288e('0x30')];if(_0x2fe0d5[_0x288e('0x31')][_0x288e('0x3c')]){_0x44791f[_0x288e('0x41')]=[{'all':!![]}];}_0x44791f=_[_0x288e('0x42')]({},_0x44791f,_0x2fe0d5[_0x288e('0x43')]);return db['MailTransferReport']['find'](_0x44791f)[_0x288e('0x24')](handleEntityNotFound(_0x1dcf70,null))[_0x288e('0x24')](respondWithResult(_0x1dcf70,null))[_0x288e('0x44')](handleError(_0x1dcf70,null));};exports[_0x288e('0x45')]=function(_0x3f8a93,_0xe03c7a){return db[_0x288e('0x2b')][_0x288e('0x45')](_0x3f8a93[_0x288e('0x46')],{})['then'](respondWithResult(_0xe03c7a,0xc9))[_0x288e('0x44')](handleError(_0xe03c7a,null));};exports[_0x288e('0x23')]=function(_0x43fa69,_0x59b8eb){if(_0x43fa69[_0x288e('0x46')]['id']){delete _0x43fa69[_0x288e('0x46')]['id'];}return db[_0x288e('0x2b')][_0x288e('0x47')]({'where':{'id':_0x43fa69[_0x288e('0x48')]['id']}})[_0x288e('0x24')](handleEntityNotFound(_0x59b8eb,null))[_0x288e('0x24')](saveUpdates(_0x43fa69['body'],null))[_0x288e('0x24')](respondWithResult(_0x59b8eb,null))[_0x288e('0x44')](handleError(_0x59b8eb,null));};exports[_0x288e('0x25')]=function(_0x3737ca,_0x3f84dc){return db[_0x288e('0x2b')][_0x288e('0x47')]({'where':{'id':_0x3737ca[_0x288e('0x48')]['id']}})[_0x288e('0x24')](handleEntityNotFound(_0x3f84dc,null))[_0x288e('0x24')](removeEntity(_0x3f84dc,null))['catch'](handleError(_0x3f84dc,null));};exports['describe']=function(_0x46c0cb,_0x5cca9d){return db[_0x288e('0x2b')]['describe']()[_0x288e('0x24')](respondWithResult(_0x5cca9d,null))[_0x288e('0x44')](handleError(_0x5cca9d,null));};