Built motion from commit b5413ace.|2.6.9
[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 _0x5c28=['type','keys','query','filters','model','attributes','intersection','fields','hasOwnProperty','nolimit','order','sort','where','filter','merge','VIRTUAL','include','findAll','catch','show','params','length','includeAll','options','create','body','find','describe','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','util','path','sox','to-csv','fs-extra','lodash','crypto','jsforce','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','end','status','limit','undefined','count','offset','set','Content-Range','reject','save','update','destroy','then','sendStatus','error','stack','name','send','map','MailTransferReport','rawAttributes'];(function(_0x4cc8b4,_0x4f37bd){var _0x3fbd0c=function(_0xc969da){while(--_0xc969da){_0x4cc8b4['push'](_0x4cc8b4['shift']());}};_0x3fbd0c(++_0x4f37bd);}(_0x5c28,0xfa));var _0x85c2=function(_0x48009c,_0x4f18f8){_0x48009c=_0x48009c-0x0;var _0x2ee920=_0x5c28[_0x48009c];return _0x2ee920;};'use strict';var emlformat=require(_0x85c2('0x0'));var rimraf=require(_0x85c2('0x1'));var zipdir=require(_0x85c2('0x2'));var jsonpatch=require(_0x85c2('0x3'));var rp=require(_0x85c2('0x4'));var moment=require(_0x85c2('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x85c2('0x6'));var util=require(_0x85c2('0x7'));var path=require(_0x85c2('0x8'));var sox=require(_0x85c2('0x9'));var csv=require(_0x85c2('0xa'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x85c2('0xb'));var _=require(_0x85c2('0xc'));var squel=require('squel');var crypto=require(_0x85c2('0xd'));var jsforce=require(_0x85c2('0xe'));var deskjs=require(_0x85c2('0xf'));var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0x85c2('0x10'));var Redis=require(_0x85c2('0x11'));var authService=require(_0x85c2('0x12'));var qs=require('../../components/parsers/qs');var as=require(_0x85c2('0x13'));var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0x85c2('0x14'));var utils=require(_0x85c2('0x15'));var config=require(_0x85c2('0x16'));var licenseUtil=require(_0x85c2('0x17'));var db=require(_0x85c2('0x18'))['db'];function respondWithStatusCode(_0x1372c3,_0x49ff5e){_0x49ff5e=_0x49ff5e||0xcc;return function(_0x4195e7){if(_0x4195e7){return _0x1372c3['sendStatus'](_0x49ff5e);}return _0x1372c3['status'](_0x49ff5e)[_0x85c2('0x19')]();};}function respondWithResult(_0x769174,_0x54b31b){_0x54b31b=_0x54b31b||0xc8;return function(_0x228104){if(_0x228104){return _0x769174[_0x85c2('0x1a')](_0x54b31b)['json'](_0x228104);}};}function respondWithFilteredResult(_0x5308b5,_0x109e9b){return function(_0x10e782){if(_0x10e782){var _0x457909=typeof _0x109e9b['offset']==='undefined'&&typeof _0x109e9b[_0x85c2('0x1b')]===_0x85c2('0x1c');var _0x493b83=_0x10e782[_0x85c2('0x1d')];var _0x32447f=_0x457909?0x0:_0x109e9b['offset'];var _0x41e8b1=_0x457909?_0x10e782[_0x85c2('0x1d')]:_0x109e9b[_0x85c2('0x1e')]+_0x109e9b[_0x85c2('0x1b')];var _0xe31325;if(_0x41e8b1>=_0x493b83){_0x41e8b1=_0x493b83;_0xe31325=0xc8;}else{_0xe31325=0xce;}_0x5308b5[_0x85c2('0x1a')](_0xe31325);return _0x5308b5[_0x85c2('0x1f')](_0x85c2('0x20'),_0x32447f+'-'+_0x41e8b1+'/'+_0x493b83)['json'](_0x10e782);}return null;};}function patchUpdates(_0x5a6414){return function(_0x277e70){try{jsonpatch['apply'](_0x277e70,_0x5a6414,!![]);}catch(_0xfd08f){return BPromise[_0x85c2('0x21')](_0xfd08f);}return _0x277e70[_0x85c2('0x22')]();};}function saveUpdates(_0x50704d,_0x1fa5ad){return function(_0x2d32d1){if(_0x2d32d1){return _0x2d32d1[_0x85c2('0x23')](_0x50704d)['then'](function(_0x3ce607){return _0x3ce607;});}return null;};}function removeEntity(_0x4ff34e,_0x102abc){return function(_0x231147){if(_0x231147){return _0x231147[_0x85c2('0x24')]()[_0x85c2('0x25')](function(){_0x4ff34e[_0x85c2('0x1a')](0xcc)[_0x85c2('0x19')]();});}};}function handleEntityNotFound(_0x3061f4,_0x2cfee7){return function(_0x1103ee){if(!_0x1103ee){_0x3061f4[_0x85c2('0x26')](0x194);}return _0x1103ee;};}function handleError(_0xf9e384,_0x9a7e35){_0x9a7e35=_0x9a7e35||0x1f4;return function(_0x4977e3){logger[_0x85c2('0x27')](_0x4977e3[_0x85c2('0x28')]);if(_0x4977e3[_0x85c2('0x29')]){delete _0x4977e3[_0x85c2('0x29')];}_0xf9e384[_0x85c2('0x1a')](_0x9a7e35)[_0x85c2('0x2a')](_0x4977e3);};}exports['index']=function(_0x9bfe31,_0x1fdf0d){var _0x5bae17={},_0x267e1b={},_0x566166={'count':0x0,'rows':[]};var _0x1f32e5=_[_0x85c2('0x2b')](db[_0x85c2('0x2c')][_0x85c2('0x2d')],function(_0x221a74){return{'name':_0x221a74['fieldName'],'type':_0x221a74[_0x85c2('0x2e')]['key']};});_0x267e1b['model']=_['map'](_0x1f32e5,_0x85c2('0x29'));_0x267e1b['query']=_[_0x85c2('0x2f')](_0x9bfe31[_0x85c2('0x30')]);_0x267e1b[_0x85c2('0x31')]=_['intersection'](_0x267e1b[_0x85c2('0x32')],_0x267e1b[_0x85c2('0x30')]);_0x5bae17[_0x85c2('0x33')]=_[_0x85c2('0x34')](_0x267e1b[_0x85c2('0x32')],qs[_0x85c2('0x35')](_0x9bfe31[_0x85c2('0x30')][_0x85c2('0x35')]));_0x5bae17[_0x85c2('0x33')]=_0x5bae17[_0x85c2('0x33')]['length']?_0x5bae17[_0x85c2('0x33')]:_0x267e1b[_0x85c2('0x32')];if(!_0x9bfe31[_0x85c2('0x30')][_0x85c2('0x36')](_0x85c2('0x37'))){_0x5bae17['limit']=qs[_0x85c2('0x1b')](_0x9bfe31['query'][_0x85c2('0x1b')]);_0x5bae17[_0x85c2('0x1e')]=qs[_0x85c2('0x1e')](_0x9bfe31[_0x85c2('0x30')][_0x85c2('0x1e')]);}_0x5bae17[_0x85c2('0x38')]=qs['sort'](_0x9bfe31['query'][_0x85c2('0x39')]);_0x5bae17[_0x85c2('0x3a')]=qs[_0x85c2('0x31')](_['pick'](_0x9bfe31[_0x85c2('0x30')],_0x267e1b[_0x85c2('0x31')]),_0x1f32e5);if(_0x9bfe31[_0x85c2('0x30')][_0x85c2('0x3b')]){_0x5bae17['where']=_[_0x85c2('0x3c')](_0x5bae17['where'],{'$or':_[_0x85c2('0x2b')](_0x1f32e5,function(_0x33db1b){if(_0x33db1b[_0x85c2('0x2e')]!==_0x85c2('0x3d')){var _0x273f81={};_0x273f81[_0x33db1b['name']]={'$like':'%'+_0x9bfe31['query']['filter']+'%'};return _0x273f81;}})});}_0x5bae17=_[_0x85c2('0x3c')]({},_0x5bae17,_0x9bfe31['options']);var _0x39b22e={'where':_0x5bae17[_0x85c2('0x3a')]};return db[_0x85c2('0x2c')]['count'](_0x39b22e)[_0x85c2('0x25')](function(_0x23803b){_0x566166[_0x85c2('0x1d')]=_0x23803b;if(_0x9bfe31['query']['includeAll']){_0x5bae17[_0x85c2('0x3e')]=[{'all':!![]}];}return db[_0x85c2('0x2c')][_0x85c2('0x3f')](_0x5bae17);})[_0x85c2('0x25')](function(_0x407e67){_0x566166['rows']=_0x407e67;return _0x566166;})[_0x85c2('0x25')](respondWithFilteredResult(_0x1fdf0d,_0x5bae17))[_0x85c2('0x40')](handleError(_0x1fdf0d,null));};exports[_0x85c2('0x41')]=function(_0x572de4,_0x1827e8){var _0x7fc36d={'raw':!![],'where':{'id':_0x572de4[_0x85c2('0x42')]['id']}},_0x44fba6={};_0x44fba6[_0x85c2('0x32')]=_[_0x85c2('0x2f')](db[_0x85c2('0x2c')][_0x85c2('0x2d')]);_0x44fba6[_0x85c2('0x30')]=_['keys'](_0x572de4[_0x85c2('0x30')]);_0x44fba6[_0x85c2('0x31')]=_[_0x85c2('0x34')](_0x44fba6['model'],_0x44fba6['query']);_0x7fc36d[_0x85c2('0x33')]=_[_0x85c2('0x34')](_0x44fba6[_0x85c2('0x32')],qs['fields'](_0x572de4['query'][_0x85c2('0x35')]));_0x7fc36d[_0x85c2('0x33')]=_0x7fc36d['attributes'][_0x85c2('0x43')]?_0x7fc36d[_0x85c2('0x33')]:_0x44fba6['model'];if(_0x572de4[_0x85c2('0x30')][_0x85c2('0x44')]){_0x7fc36d[_0x85c2('0x3e')]=[{'all':!![]}];}_0x7fc36d=_['merge']({},_0x7fc36d,_0x572de4[_0x85c2('0x45')]);return db[_0x85c2('0x2c')]['find'](_0x7fc36d)[_0x85c2('0x25')](handleEntityNotFound(_0x1827e8,null))[_0x85c2('0x25')](respondWithResult(_0x1827e8,null))['catch'](handleError(_0x1827e8,null));};exports[_0x85c2('0x46')]=function(_0x383bcb,_0x157cd2){return db[_0x85c2('0x2c')]['create'](_0x383bcb[_0x85c2('0x47')],{})['then'](respondWithResult(_0x157cd2,0xc9))['catch'](handleError(_0x157cd2,null));};exports[_0x85c2('0x23')]=function(_0x440c66,_0x35bf1b){if(_0x440c66['body']['id']){delete _0x440c66[_0x85c2('0x47')]['id'];}return db[_0x85c2('0x2c')][_0x85c2('0x48')]({'where':{'id':_0x440c66[_0x85c2('0x42')]['id']}})['then'](handleEntityNotFound(_0x35bf1b,null))['then'](saveUpdates(_0x440c66[_0x85c2('0x47')],null))[_0x85c2('0x25')](respondWithResult(_0x35bf1b,null))[_0x85c2('0x40')](handleError(_0x35bf1b,null));};exports[_0x85c2('0x24')]=function(_0x47202a,_0xef94b){return db[_0x85c2('0x2c')][_0x85c2('0x48')]({'where':{'id':_0x47202a['params']['id']}})[_0x85c2('0x25')](handleEntityNotFound(_0xef94b,null))['then'](removeEntity(_0xef94b,null))[_0x85c2('0x40')](handleError(_0xef94b,null));};exports[_0x85c2('0x49')]=function(_0x1a2380,_0x3f0525){return db[_0x85c2('0x2c')]['describe']()[_0x85c2('0x25')](respondWithResult(_0x3f0525,null))[_0x85c2('0x40')](handleError(_0x3f0525,null));};