78e54e8a36826a3e52a0c9e13aad8865ad048625
[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 _0x00f4=['merge','VIRTUAL','includeAll','findAll','catch','show','params','include','find','create','body','describe','html-pdf','rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','path','sox','lodash','squel','crypto','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','sendStatus','status','json','count','offset','limit','set','apply','reject','then','destroy','error','stack','name','map','MailQueueReport','rawAttributes','type','key','model','query','attributes','intersection','fields','order','sort','where','filters','filter'];(function(_0x2ec153,_0x67b68d){var _0x3610d4=function(_0x2bc046){while(--_0x2bc046){_0x2ec153['push'](_0x2ec153['shift']());}};_0x3610d4(++_0x67b68d);}(_0x00f4,0x8a));var _0x400f=function(_0x451d9b,_0x3e5f74){_0x451d9b=_0x451d9b-0x0;var _0x1964fb=_0x00f4[_0x451d9b];return _0x1964fb;};'use strict';var pdf=require(_0x400f('0x0'));var emlformat=require('eml-format');var rimraf=require(_0x400f('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x400f('0x2'));var rp=require(_0x400f('0x3'));var moment=require(_0x400f('0x4'));var BPromise=require(_0x400f('0x5'));var Mustache=require(_0x400f('0x6'));var util=require('util');var path=require(_0x400f('0x7'));var sox=require(_0x400f('0x8'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var _=require(_0x400f('0x9'));var squel=require(_0x400f('0xa'));var crypto=require(_0x400f('0xb'));var jsforce=require('jsforce');var deskjs=require(_0x400f('0xc'));var toCsv=require('to-csv');var querystring=require(_0x400f('0xd'));var Papa=require(_0x400f('0xe'));var Redis=require(_0x400f('0xf'));var authService=require(_0x400f('0x10'));var qs=require(_0x400f('0x11'));var as=require(_0x400f('0x12'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x400f('0x13'))(_0x400f('0x14'));var utils=require(_0x400f('0x15'));var config=require('../../config/environment');var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x542187,_0xfb136c){_0xfb136c=_0xfb136c||0xcc;return function(_0x2f5738){if(_0x2f5738){return _0x542187[_0x400f('0x16')](_0xfb136c);}return _0x542187['status'](_0xfb136c)['end']();};}function respondWithResult(_0x202d57,_0x432527){_0x432527=_0x432527||0xc8;return function(_0x1c6739){if(_0x1c6739){return _0x202d57[_0x400f('0x17')](_0x432527)[_0x400f('0x18')](_0x1c6739);}};}function respondWithFilteredResult(_0x11faad,_0x2820d1){return function(_0x2f4db5){if(_0x2f4db5){var _0x480d6a=_0x2f4db5[_0x400f('0x19')],_0x569d2a=_0x2820d1['offset'],_0x15ac5c=_0x2820d1[_0x400f('0x1a')]+_0x2820d1[_0x400f('0x1b')],_0x3a2038;if(_0x15ac5c>=_0x480d6a){_0x15ac5c=_0x480d6a;_0x3a2038=0xc8;}else{_0x3a2038=0xce;}_0x11faad[_0x400f('0x17')](_0x3a2038);return _0x11faad[_0x400f('0x1c')]('Content-Range',_0x569d2a+'-'+_0x15ac5c+'/'+_0x480d6a)[_0x400f('0x18')](_0x2f4db5);}return null;};}function patchUpdates(_0x11f1ea){return function(_0xeed82f){try{jsonpatch[_0x400f('0x1d')](_0xeed82f,_0x11f1ea,!![]);}catch(_0x534b85){return BPromise[_0x400f('0x1e')](_0x534b85);}return _0xeed82f['save']();};}function saveUpdates(_0x352444,_0x38edca){return function(_0x4d5818){if(_0x4d5818){return _0x4d5818['update'](_0x352444)[_0x400f('0x1f')](function(_0x5cafc2){return _0x5cafc2;});}return null;};}function removeEntity(_0x1196ef,_0x171524){return function(_0x3d9bb3){if(_0x3d9bb3){return _0x3d9bb3[_0x400f('0x20')]()['then'](function(){_0x1196ef[_0x400f('0x17')](0xcc)['end']();});}};}function handleEntityNotFound(_0x586c44,_0x479759){return function(_0x1b57fd){if(!_0x1b57fd){_0x586c44[_0x400f('0x16')](0x194);}return _0x1b57fd;};}function handleError(_0x9ad09,_0x2be19f){_0x2be19f=_0x2be19f||0x1f4;return function(_0x3c8189){logger[_0x400f('0x21')](_0x3c8189[_0x400f('0x22')]);if(_0x3c8189[_0x400f('0x23')]){delete _0x3c8189[_0x400f('0x23')];}_0x9ad09[_0x400f('0x17')](_0x2be19f)['send'](_0x3c8189);};}exports['index']=function(_0x5d01ae,_0x3444e3){var _0x2135d9={},_0x1c4334={},_0x417cba={'count':0x0,'rows':[]};var _0x31c6d0=_[_0x400f('0x24')](db[_0x400f('0x25')][_0x400f('0x26')],function(_0x27276d){return{'name':_0x27276d['fieldName'],'type':_0x27276d[_0x400f('0x27')][_0x400f('0x28')]};});_0x1c4334[_0x400f('0x29')]=_['map'](_0x31c6d0,_0x400f('0x23'));_0x1c4334[_0x400f('0x2a')]=_['keys'](_0x5d01ae[_0x400f('0x2a')]);_0x1c4334['filters']=_['intersection'](_0x1c4334[_0x400f('0x29')],_0x1c4334['query']);_0x2135d9[_0x400f('0x2b')]=_[_0x400f('0x2c')](_0x1c4334[_0x400f('0x29')],qs[_0x400f('0x2d')](_0x5d01ae[_0x400f('0x2a')][_0x400f('0x2d')]));_0x2135d9[_0x400f('0x2b')]=_0x2135d9['attributes']['length']?_0x2135d9[_0x400f('0x2b')]:_0x1c4334[_0x400f('0x29')];if(!_0x5d01ae['query']['hasOwnProperty']('nolimit')){_0x2135d9[_0x400f('0x1b')]=qs[_0x400f('0x1b')](_0x5d01ae[_0x400f('0x2a')][_0x400f('0x1b')]);_0x2135d9[_0x400f('0x1a')]=qs['offset'](_0x5d01ae[_0x400f('0x2a')]['offset']);}_0x2135d9[_0x400f('0x2e')]=qs[_0x400f('0x2f')](_0x5d01ae['query']['sort']);_0x2135d9[_0x400f('0x30')]=qs[_0x400f('0x31')](_['pick'](_0x5d01ae[_0x400f('0x2a')],_0x1c4334[_0x400f('0x31')]));if(_0x5d01ae[_0x400f('0x2a')][_0x400f('0x32')]){_0x2135d9[_0x400f('0x30')]=_[_0x400f('0x33')](_0x2135d9[_0x400f('0x30')],{'$or':_[_0x400f('0x24')](_0x31c6d0,function(_0x52d9e1){if(_0x52d9e1[_0x400f('0x27')]!==_0x400f('0x34')){var _0x52aa84={};_0x52aa84[_0x52d9e1['name']]={'$like':'%'+_0x5d01ae[_0x400f('0x2a')][_0x400f('0x32')]+'%'};return _0x52aa84;}})});}_0x2135d9=_['merge']({},_0x2135d9,_0x5d01ae['options']);var _0x236f3d={'where':_0x2135d9['where']};return db[_0x400f('0x25')][_0x400f('0x19')](_0x236f3d)[_0x400f('0x1f')](function(_0x100c2f){_0x417cba[_0x400f('0x19')]=_0x100c2f;if(_0x5d01ae[_0x400f('0x2a')][_0x400f('0x35')]){_0x2135d9['include']=[{'all':!![]}];}return db[_0x400f('0x25')][_0x400f('0x36')](_0x2135d9);})[_0x400f('0x1f')](function(_0x5764bb){_0x417cba['rows']=_0x5764bb;return _0x417cba;})[_0x400f('0x1f')](respondWithFilteredResult(_0x3444e3,_0x2135d9))[_0x400f('0x37')](handleError(_0x3444e3,null));};exports[_0x400f('0x38')]=function(_0x314bd6,_0x57bc2d){var _0x59e72c={'raw':!![],'where':{'id':_0x314bd6[_0x400f('0x39')]['id']}},_0x315baa={};_0x315baa[_0x400f('0x29')]=_['keys'](db['MailQueueReport'][_0x400f('0x26')]);_0x315baa[_0x400f('0x2a')]=_['keys'](_0x314bd6[_0x400f('0x2a')]);_0x315baa[_0x400f('0x31')]=_[_0x400f('0x2c')](_0x315baa['model'],_0x315baa['query']);_0x59e72c[_0x400f('0x2b')]=_[_0x400f('0x2c')](_0x315baa[_0x400f('0x29')],qs[_0x400f('0x2d')](_0x314bd6[_0x400f('0x2a')][_0x400f('0x2d')]));_0x59e72c[_0x400f('0x2b')]=_0x59e72c['attributes']['length']?_0x59e72c[_0x400f('0x2b')]:_0x315baa[_0x400f('0x29')];if(_0x314bd6['query'][_0x400f('0x35')]){_0x59e72c[_0x400f('0x3a')]=[{'all':!![]}];}_0x59e72c=_[_0x400f('0x33')]({},_0x59e72c,_0x314bd6['options']);return db['MailQueueReport'][_0x400f('0x3b')](_0x59e72c)[_0x400f('0x1f')](handleEntityNotFound(_0x57bc2d,null))[_0x400f('0x1f')](respondWithResult(_0x57bc2d,null))['catch'](handleError(_0x57bc2d,null));};exports[_0x400f('0x3c')]=function(_0x34effc,_0x538ce5){return db[_0x400f('0x25')][_0x400f('0x3c')](_0x34effc[_0x400f('0x3d')],{})[_0x400f('0x1f')](respondWithResult(_0x538ce5,0xc9))['catch'](handleError(_0x538ce5,null));};exports['update']=function(_0x35c63e,_0x318e45){if(_0x35c63e[_0x400f('0x3d')]['id']){delete _0x35c63e[_0x400f('0x3d')]['id'];}return db[_0x400f('0x25')][_0x400f('0x3b')]({'where':{'id':_0x35c63e['params']['id']}})[_0x400f('0x1f')](handleEntityNotFound(_0x318e45,null))[_0x400f('0x1f')](saveUpdates(_0x35c63e[_0x400f('0x3d')],null))[_0x400f('0x1f')](respondWithResult(_0x318e45,null))[_0x400f('0x37')](handleError(_0x318e45,null));};exports[_0x400f('0x20')]=function(_0x318f3e,_0x2adc67){return db['MailQueueReport'][_0x400f('0x3b')]({'where':{'id':_0x318f3e[_0x400f('0x39')]['id']}})[_0x400f('0x1f')](handleEntityNotFound(_0x2adc67,null))[_0x400f('0x1f')](removeEntity(_0x2adc67,null))[_0x400f('0x37')](handleError(_0x2adc67,null));};exports[_0x400f('0x3e')]=function(_0x28624f,_0x112392){return db[_0x400f('0x25')]['describe']()['then'](respondWithResult(_0x112392,null))[_0x400f('0x37')](handleError(_0x112392,null));};