d13f028bc09b49326f8f7914936c9f68e38d108c
[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 _0x5e29=['../../config/license/util','sendStatus','status','end','json','offset','limit','count','set','apply','save','update','then','destroy','error','name','send','index','MailTransferReport','rawAttributes','type','key','model','map','query','keys','filters','attributes','fields','length','hasOwnProperty','order','sort','where','pick','filter','merge','include','findAll','rows','catch','show','params','intersection','includeAll','options','find','create','body','describe','eml-format','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment'];(function(_0x5abe0f,_0x501e74){var _0x5702ce=function(_0x1d9292){while(--_0x1d9292){_0x5abe0f['push'](_0x5abe0f['shift']());}};_0x5702ce(++_0x501e74);}(_0x5e29,0x15a));var _0x95e2=function(_0x55eddc,_0x5cd2cc){_0x55eddc=_0x55eddc-0x0;var _0x3aba8c=_0x5e29[_0x55eddc];return _0x3aba8c;};'use strict';var emlformat=require(_0x95e2('0x0'));var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0x95e2('0x1'));var moment=require(_0x95e2('0x2'));var BPromise=require(_0x95e2('0x3'));var Mustache=require(_0x95e2('0x4'));var util=require(_0x95e2('0x5'));var path=require(_0x95e2('0x6'));var sox=require(_0x95e2('0x7'));var csv=require(_0x95e2('0x8'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x95e2('0x9'));var squel=require(_0x95e2('0xa'));var crypto=require(_0x95e2('0xb'));var jsforce=require(_0x95e2('0xc'));var deskjs=require(_0x95e2('0xd'));var toCsv=require(_0x95e2('0x8'));var querystring=require(_0x95e2('0xe'));var Papa=require(_0x95e2('0xf'));var Redis=require('ioredis');var authService=require(_0x95e2('0x10'));var qs=require(_0x95e2('0x11'));var as=require(_0x95e2('0x12'));var hardwareService=require(_0x95e2('0x13'));var logger=require(_0x95e2('0x14'))(_0x95e2('0x15'));var utils=require(_0x95e2('0x16'));var config=require(_0x95e2('0x17'));var licenseUtil=require(_0x95e2('0x18'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x33c840,_0x4daeef){_0x4daeef=_0x4daeef||0xcc;return function(_0x3f4f64){if(_0x3f4f64){return _0x33c840[_0x95e2('0x19')](_0x4daeef);}return _0x33c840[_0x95e2('0x1a')](_0x4daeef)[_0x95e2('0x1b')]();};}function respondWithResult(_0x52a742,_0x40ee17){_0x40ee17=_0x40ee17||0xc8;return function(_0x19b876){if(_0x19b876){return _0x52a742['status'](_0x40ee17)[_0x95e2('0x1c')](_0x19b876);}};}function respondWithFilteredResult(_0x365153,_0x56fde1){return function(_0x28de5c){if(_0x28de5c){var _0x3a24db=typeof _0x56fde1[_0x95e2('0x1d')]==='undefined'&&typeof _0x56fde1[_0x95e2('0x1e')]==='undefined';var _0x40ae10=_0x28de5c[_0x95e2('0x1f')];var _0x13fc10=_0x3a24db?0x0:_0x56fde1['offset'];var _0x28f297=_0x3a24db?_0x28de5c[_0x95e2('0x1f')]:_0x56fde1[_0x95e2('0x1d')]+_0x56fde1[_0x95e2('0x1e')];var _0x288eec;if(_0x28f297>=_0x40ae10){_0x28f297=_0x40ae10;_0x288eec=0xc8;}else{_0x288eec=0xce;}_0x365153['status'](_0x288eec);return _0x365153[_0x95e2('0x20')]('Content-Range',_0x13fc10+'-'+_0x28f297+'/'+_0x40ae10)['json'](_0x28de5c);}return null;};}function patchUpdates(_0x2352a7){return function(_0xc0279a){try{jsonpatch[_0x95e2('0x21')](_0xc0279a,_0x2352a7,!![]);}catch(_0x13c74a){return BPromise['reject'](_0x13c74a);}return _0xc0279a[_0x95e2('0x22')]();};}function saveUpdates(_0x49132c,_0x401bd5){return function(_0x108191){if(_0x108191){return _0x108191[_0x95e2('0x23')](_0x49132c)[_0x95e2('0x24')](function(_0xfac1d0){return _0xfac1d0;});}return null;};}function removeEntity(_0x6133a9,_0x1dac7e){return function(_0x3b93d4){if(_0x3b93d4){return _0x3b93d4[_0x95e2('0x25')]()['then'](function(){_0x6133a9[_0x95e2('0x1a')](0xcc)['end']();});}};}function handleEntityNotFound(_0x57c355,_0x1dd32b){return function(_0x485230){if(!_0x485230){_0x57c355[_0x95e2('0x19')](0x194);}return _0x485230;};}function handleError(_0x5747a6,_0x233956){_0x233956=_0x233956||0x1f4;return function(_0x4b1fae){logger[_0x95e2('0x26')](_0x4b1fae['stack']);if(_0x4b1fae[_0x95e2('0x27')]){delete _0x4b1fae[_0x95e2('0x27')];}_0x5747a6[_0x95e2('0x1a')](_0x233956)[_0x95e2('0x28')](_0x4b1fae);};}exports[_0x95e2('0x29')]=function(_0x501743,_0x1db9cf){var _0x3e7e32={},_0x1d308e={},_0x187d75={'count':0x0,'rows':[]};var _0x12892b=_['map'](db[_0x95e2('0x2a')][_0x95e2('0x2b')],function(_0x5208f3){return{'name':_0x5208f3['fieldName'],'type':_0x5208f3[_0x95e2('0x2c')][_0x95e2('0x2d')]};});_0x1d308e[_0x95e2('0x2e')]=_[_0x95e2('0x2f')](_0x12892b,_0x95e2('0x27'));_0x1d308e[_0x95e2('0x30')]=_[_0x95e2('0x31')](_0x501743[_0x95e2('0x30')]);_0x1d308e[_0x95e2('0x32')]=_['intersection'](_0x1d308e['model'],_0x1d308e[_0x95e2('0x30')]);_0x3e7e32[_0x95e2('0x33')]=_['intersection'](_0x1d308e[_0x95e2('0x2e')],qs['fields'](_0x501743[_0x95e2('0x30')][_0x95e2('0x34')]));_0x3e7e32[_0x95e2('0x33')]=_0x3e7e32[_0x95e2('0x33')][_0x95e2('0x35')]?_0x3e7e32[_0x95e2('0x33')]:_0x1d308e[_0x95e2('0x2e')];if(!_0x501743[_0x95e2('0x30')][_0x95e2('0x36')]('nolimit')){_0x3e7e32[_0x95e2('0x1e')]=qs['limit'](_0x501743['query']['limit']);_0x3e7e32[_0x95e2('0x1d')]=qs['offset'](_0x501743['query'][_0x95e2('0x1d')]);}_0x3e7e32[_0x95e2('0x37')]=qs[_0x95e2('0x38')](_0x501743[_0x95e2('0x30')][_0x95e2('0x38')]);_0x3e7e32[_0x95e2('0x39')]=qs[_0x95e2('0x32')](_[_0x95e2('0x3a')](_0x501743[_0x95e2('0x30')],_0x1d308e[_0x95e2('0x32')]),_0x12892b);if(_0x501743[_0x95e2('0x30')][_0x95e2('0x3b')]){_0x3e7e32[_0x95e2('0x39')]=_[_0x95e2('0x3c')](_0x3e7e32[_0x95e2('0x39')],{'$or':_[_0x95e2('0x2f')](_0x12892b,function(_0x319576){if(_0x319576[_0x95e2('0x2c')]!=='VIRTUAL'){var _0x2f23dd={};_0x2f23dd[_0x319576[_0x95e2('0x27')]]={'$like':'%'+_0x501743[_0x95e2('0x30')]['filter']+'%'};return _0x2f23dd;}})});}_0x3e7e32=_['merge']({},_0x3e7e32,_0x501743['options']);var _0x252621={'where':_0x3e7e32['where']};return db[_0x95e2('0x2a')][_0x95e2('0x1f')](_0x252621)['then'](function(_0x313be6){_0x187d75[_0x95e2('0x1f')]=_0x313be6;if(_0x501743[_0x95e2('0x30')]['includeAll']){_0x3e7e32[_0x95e2('0x3d')]=[{'all':!![]}];}return db[_0x95e2('0x2a')][_0x95e2('0x3e')](_0x3e7e32);})[_0x95e2('0x24')](function(_0x5d34ef){_0x187d75[_0x95e2('0x3f')]=_0x5d34ef;return _0x187d75;})[_0x95e2('0x24')](respondWithFilteredResult(_0x1db9cf,_0x3e7e32))[_0x95e2('0x40')](handleError(_0x1db9cf,null));};exports[_0x95e2('0x41')]=function(_0x12da91,_0x190fd){var _0x26f9ba={'raw':!![],'where':{'id':_0x12da91[_0x95e2('0x42')]['id']}},_0x2fe4e8={};_0x2fe4e8[_0x95e2('0x2e')]=_[_0x95e2('0x31')](db[_0x95e2('0x2a')]['rawAttributes']);_0x2fe4e8[_0x95e2('0x30')]=_[_0x95e2('0x31')](_0x12da91[_0x95e2('0x30')]);_0x2fe4e8[_0x95e2('0x32')]=_[_0x95e2('0x43')](_0x2fe4e8[_0x95e2('0x2e')],_0x2fe4e8[_0x95e2('0x30')]);_0x26f9ba[_0x95e2('0x33')]=_[_0x95e2('0x43')](_0x2fe4e8[_0x95e2('0x2e')],qs[_0x95e2('0x34')](_0x12da91[_0x95e2('0x30')]['fields']));_0x26f9ba[_0x95e2('0x33')]=_0x26f9ba[_0x95e2('0x33')][_0x95e2('0x35')]?_0x26f9ba[_0x95e2('0x33')]:_0x2fe4e8[_0x95e2('0x2e')];if(_0x12da91[_0x95e2('0x30')][_0x95e2('0x44')]){_0x26f9ba[_0x95e2('0x3d')]=[{'all':!![]}];}_0x26f9ba=_['merge']({},_0x26f9ba,_0x12da91[_0x95e2('0x45')]);return db[_0x95e2('0x2a')][_0x95e2('0x46')](_0x26f9ba)[_0x95e2('0x24')](handleEntityNotFound(_0x190fd,null))[_0x95e2('0x24')](respondWithResult(_0x190fd,null))[_0x95e2('0x40')](handleError(_0x190fd,null));};exports[_0x95e2('0x47')]=function(_0x7e8bed,_0x4cf5e6){return db[_0x95e2('0x2a')][_0x95e2('0x47')](_0x7e8bed[_0x95e2('0x48')],{})['then'](respondWithResult(_0x4cf5e6,0xc9))[_0x95e2('0x40')](handleError(_0x4cf5e6,null));};exports[_0x95e2('0x23')]=function(_0x2a4171,_0x542046){if(_0x2a4171[_0x95e2('0x48')]['id']){delete _0x2a4171['body']['id'];}return db[_0x95e2('0x2a')][_0x95e2('0x46')]({'where':{'id':_0x2a4171['params']['id']}})[_0x95e2('0x24')](handleEntityNotFound(_0x542046,null))[_0x95e2('0x24')](saveUpdates(_0x2a4171[_0x95e2('0x48')],null))['then'](respondWithResult(_0x542046,null))['catch'](handleError(_0x542046,null));};exports['destroy']=function(_0xf441e3,_0x446fb0){return db['MailTransferReport'][_0x95e2('0x46')]({'where':{'id':_0xf441e3[_0x95e2('0x42')]['id']}})['then'](handleEntityNotFound(_0x446fb0,null))['then'](removeEntity(_0x446fb0,null))[_0x95e2('0x40')](handleError(_0x446fb0,null));};exports[_0x95e2('0x49')]=function(_0x591466,_0x139dfb){return db[_0x95e2('0x2a')][_0x95e2('0x49')]()[_0x95e2('0x24')](respondWithResult(_0x139dfb,null))[_0x95e2('0x40')](handleError(_0x139dfb,null));};