Built motion from commit f7863d46.|2.5.41
[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 _0xe035=['Content-Range','apply','save','update','then','end','name','send','index','map','rawAttributes','fieldName','type','model','query','keys','intersection','fields','attributes','hasOwnProperty','order','sort','where','filters','pick','filter','options','count','includeAll','include','MailTransferReport','findAll','catch','show','params','merge','create','body','destroy','find','describe','rimraf','request-promise','moment','bluebird','mustache','util','path','sox','fs-extra','squel','crypto','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','json','offset','undefined','limit','set'];(function(_0x400843,_0x328529){var _0x1fd0f6=function(_0x4bbcc7){while(--_0x4bbcc7){_0x400843['push'](_0x400843['shift']());}};_0x1fd0f6(++_0x328529);}(_0xe035,0x104));var _0x5e03=function(_0xb6cd70,_0x896297){_0xb6cd70=_0xb6cd70-0x0;var _0x19f7a7=_0xe035[_0xb6cd70];return _0x19f7a7;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x5e03('0x0'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0x5e03('0x1'));var moment=require(_0x5e03('0x2'));var BPromise=require(_0x5e03('0x3'));var Mustache=require(_0x5e03('0x4'));var util=require(_0x5e03('0x5'));var path=require(_0x5e03('0x6'));var sox=require(_0x5e03('0x7'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x5e03('0x8'));var _=require('lodash');var squel=require(_0x5e03('0x9'));var crypto=require(_0x5e03('0xa'));var jsforce=require('jsforce');var deskjs=require(_0x5e03('0xb'));var toCsv=require(_0x5e03('0xc'));var querystring=require(_0x5e03('0xd'));var Papa=require(_0x5e03('0xe'));var Redis=require(_0x5e03('0xf'));var authService=require(_0x5e03('0x10'));var qs=require('../../components/parsers/qs');var as=require(_0x5e03('0x11'));var hardwareService=require(_0x5e03('0x12'));var logger=require(_0x5e03('0x13'))(_0x5e03('0x14'));var utils=require(_0x5e03('0x15'));var config=require(_0x5e03('0x16'));var licenseUtil=require(_0x5e03('0x17'));var db=require(_0x5e03('0x18'))['db'];function respondWithStatusCode(_0x3b3159,_0x45bdd0){_0x45bdd0=_0x45bdd0||0xcc;return function(_0x284414){if(_0x284414){return _0x3b3159[_0x5e03('0x19')](_0x45bdd0);}return _0x3b3159['status'](_0x45bdd0)['end']();};}function respondWithResult(_0x23f883,_0x2e1fe9){_0x2e1fe9=_0x2e1fe9||0xc8;return function(_0x20c9f7){if(_0x20c9f7){return _0x23f883[_0x5e03('0x1a')](_0x2e1fe9)[_0x5e03('0x1b')](_0x20c9f7);}};}function respondWithFilteredResult(_0x4956ee,_0x4cda97){return function(_0x1f6c14){if(_0x1f6c14){var _0x2fbf2d=typeof _0x4cda97[_0x5e03('0x1c')]===_0x5e03('0x1d')&&typeof _0x4cda97[_0x5e03('0x1e')]===_0x5e03('0x1d');var _0x413c0e=_0x1f6c14['count'];var _0x236d3c=_0x2fbf2d?0x0:_0x4cda97[_0x5e03('0x1c')];var _0x4576fd=_0x2fbf2d?_0x1f6c14['count']:_0x4cda97[_0x5e03('0x1c')]+_0x4cda97['limit'];var _0x4a005e;if(_0x4576fd>=_0x413c0e){_0x4576fd=_0x413c0e;_0x4a005e=0xc8;}else{_0x4a005e=0xce;}_0x4956ee[_0x5e03('0x1a')](_0x4a005e);return _0x4956ee[_0x5e03('0x1f')](_0x5e03('0x20'),_0x236d3c+'-'+_0x4576fd+'/'+_0x413c0e)[_0x5e03('0x1b')](_0x1f6c14);}return null;};}function patchUpdates(_0x4a6892){return function(_0x366230){try{jsonpatch[_0x5e03('0x21')](_0x366230,_0x4a6892,!![]);}catch(_0x511bc6){return BPromise['reject'](_0x511bc6);}return _0x366230[_0x5e03('0x22')]();};}function saveUpdates(_0x4b0239,_0x10e942){return function(_0x3e8567){if(_0x3e8567){return _0x3e8567[_0x5e03('0x23')](_0x4b0239)[_0x5e03('0x24')](function(_0x19942f){return _0x19942f;});}return null;};}function removeEntity(_0x2a032a,_0x56d5e2){return function(_0x45f9c6){if(_0x45f9c6){return _0x45f9c6['destroy']()[_0x5e03('0x24')](function(){_0x2a032a['status'](0xcc)[_0x5e03('0x25')]();});}};}function handleEntityNotFound(_0x1267f4,_0x6fae7e){return function(_0x53775b){if(!_0x53775b){_0x1267f4['sendStatus'](0x194);}return _0x53775b;};}function handleError(_0x2fd71d,_0x178e11){_0x178e11=_0x178e11||0x1f4;return function(_0x3bdb65){logger['error'](_0x3bdb65['stack']);if(_0x3bdb65[_0x5e03('0x26')]){delete _0x3bdb65[_0x5e03('0x26')];}_0x2fd71d[_0x5e03('0x1a')](_0x178e11)[_0x5e03('0x27')](_0x3bdb65);};}exports[_0x5e03('0x28')]=function(_0x324890,_0x49c541){var _0x3a728a={},_0x101e80={},_0x75e55={'count':0x0,'rows':[]};var _0x1b4534=_[_0x5e03('0x29')](db['MailTransferReport'][_0x5e03('0x2a')],function(_0xe94de2){return{'name':_0xe94de2[_0x5e03('0x2b')],'type':_0xe94de2[_0x5e03('0x2c')]['key']};});_0x101e80[_0x5e03('0x2d')]=_[_0x5e03('0x29')](_0x1b4534,_0x5e03('0x26'));_0x101e80[_0x5e03('0x2e')]=_[_0x5e03('0x2f')](_0x324890[_0x5e03('0x2e')]);_0x101e80['filters']=_[_0x5e03('0x30')](_0x101e80['model'],_0x101e80[_0x5e03('0x2e')]);_0x3a728a['attributes']=_[_0x5e03('0x30')](_0x101e80[_0x5e03('0x2d')],qs[_0x5e03('0x31')](_0x324890[_0x5e03('0x2e')][_0x5e03('0x31')]));_0x3a728a[_0x5e03('0x32')]=_0x3a728a['attributes']['length']?_0x3a728a[_0x5e03('0x32')]:_0x101e80[_0x5e03('0x2d')];if(!_0x324890[_0x5e03('0x2e')][_0x5e03('0x33')]('nolimit')){_0x3a728a[_0x5e03('0x1e')]=qs['limit'](_0x324890[_0x5e03('0x2e')][_0x5e03('0x1e')]);_0x3a728a[_0x5e03('0x1c')]=qs[_0x5e03('0x1c')](_0x324890[_0x5e03('0x2e')][_0x5e03('0x1c')]);}_0x3a728a[_0x5e03('0x34')]=qs[_0x5e03('0x35')](_0x324890[_0x5e03('0x2e')][_0x5e03('0x35')]);_0x3a728a[_0x5e03('0x36')]=qs[_0x5e03('0x37')](_[_0x5e03('0x38')](_0x324890[_0x5e03('0x2e')],_0x101e80[_0x5e03('0x37')]),_0x1b4534);if(_0x324890['query'][_0x5e03('0x39')]){_0x3a728a[_0x5e03('0x36')]=_['merge'](_0x3a728a[_0x5e03('0x36')],{'$or':_['map'](_0x1b4534,function(_0x5952d3){if(_0x5952d3[_0x5e03('0x2c')]!=='VIRTUAL'){var _0x55db37={};_0x55db37[_0x5952d3[_0x5e03('0x26')]]={'$like':'%'+_0x324890['query'][_0x5e03('0x39')]+'%'};return _0x55db37;}})});}_0x3a728a=_['merge']({},_0x3a728a,_0x324890[_0x5e03('0x3a')]);var _0x3fb744={'where':_0x3a728a[_0x5e03('0x36')]};return db['MailTransferReport']['count'](_0x3fb744)[_0x5e03('0x24')](function(_0x1c5b7f){_0x75e55[_0x5e03('0x3b')]=_0x1c5b7f;if(_0x324890[_0x5e03('0x2e')][_0x5e03('0x3c')]){_0x3a728a[_0x5e03('0x3d')]=[{'all':!![]}];}return db[_0x5e03('0x3e')][_0x5e03('0x3f')](_0x3a728a);})['then'](function(_0x5275c9){_0x75e55['rows']=_0x5275c9;return _0x75e55;})[_0x5e03('0x24')](respondWithFilteredResult(_0x49c541,_0x3a728a))[_0x5e03('0x40')](handleError(_0x49c541,null));};exports[_0x5e03('0x41')]=function(_0x168bed,_0x598ac5){var _0x2b2304={'raw':!![],'where':{'id':_0x168bed[_0x5e03('0x42')]['id']}},_0x4831bd={};_0x4831bd[_0x5e03('0x2d')]=_[_0x5e03('0x2f')](db[_0x5e03('0x3e')]['rawAttributes']);_0x4831bd[_0x5e03('0x2e')]=_['keys'](_0x168bed['query']);_0x4831bd[_0x5e03('0x37')]=_[_0x5e03('0x30')](_0x4831bd['model'],_0x4831bd[_0x5e03('0x2e')]);_0x2b2304[_0x5e03('0x32')]=_[_0x5e03('0x30')](_0x4831bd[_0x5e03('0x2d')],qs[_0x5e03('0x31')](_0x168bed[_0x5e03('0x2e')][_0x5e03('0x31')]));_0x2b2304[_0x5e03('0x32')]=_0x2b2304[_0x5e03('0x32')]['length']?_0x2b2304['attributes']:_0x4831bd[_0x5e03('0x2d')];if(_0x168bed[_0x5e03('0x2e')][_0x5e03('0x3c')]){_0x2b2304['include']=[{'all':!![]}];}_0x2b2304=_[_0x5e03('0x43')]({},_0x2b2304,_0x168bed[_0x5e03('0x3a')]);return db[_0x5e03('0x3e')]['find'](_0x2b2304)['then'](handleEntityNotFound(_0x598ac5,null))[_0x5e03('0x24')](respondWithResult(_0x598ac5,null))[_0x5e03('0x40')](handleError(_0x598ac5,null));};exports['create']=function(_0x4e4700,_0x3beb3f){return db[_0x5e03('0x3e')][_0x5e03('0x44')](_0x4e4700[_0x5e03('0x45')],{})[_0x5e03('0x24')](respondWithResult(_0x3beb3f,0xc9))[_0x5e03('0x40')](handleError(_0x3beb3f,null));};exports[_0x5e03('0x23')]=function(_0x48157e,_0x2ef34f){if(_0x48157e[_0x5e03('0x45')]['id']){delete _0x48157e['body']['id'];}return db[_0x5e03('0x3e')]['find']({'where':{'id':_0x48157e[_0x5e03('0x42')]['id']}})[_0x5e03('0x24')](handleEntityNotFound(_0x2ef34f,null))[_0x5e03('0x24')](saveUpdates(_0x48157e[_0x5e03('0x45')],null))[_0x5e03('0x24')](respondWithResult(_0x2ef34f,null))[_0x5e03('0x40')](handleError(_0x2ef34f,null));};exports[_0x5e03('0x46')]=function(_0x40cd91,_0x16ab0c){return db[_0x5e03('0x3e')][_0x5e03('0x47')]({'where':{'id':_0x40cd91[_0x5e03('0x42')]['id']}})[_0x5e03('0x24')](handleEntityNotFound(_0x16ab0c,null))['then'](removeEntity(_0x16ab0c,null))[_0x5e03('0x40')](handleError(_0x16ab0c,null));};exports['describe']=function(_0x5d619f,_0x140b24){return db[_0x5e03('0x3e')][_0x5e03('0x48')]()['then'](respondWithResult(_0x140b24,null))['catch'](handleError(_0x140b24,null));};