ca7044be251fa19c54bac1488be44adb98b904b8
[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 _0x27f9=['name','send','index','map','MailQueueReport','fieldName','type','key','query','keys','intersection','attributes','model','fields','length','nolimit','order','sort','where','filters','pick','filter','merge','options','count','includeAll','include','findAll','rows','show','params','create','body','catch','find','describe','html-pdf','eml-format','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','end','json','offset','limit','set','Content-Range','reject','save','update','then','destroy','error','stack'];(function(_0x426384,_0x1901ab){var _0x3aa40a=function(_0x2db297){while(--_0x2db297){_0x426384['push'](_0x426384['shift']());}};_0x3aa40a(++_0x1901ab);}(_0x27f9,0x73));var _0x927f=function(_0x1cecab,_0x24d455){_0x1cecab=_0x1cecab-0x0;var _0x5412f9=_0x27f9[_0x1cecab];return _0x5412f9;};'use strict';var pdf=require(_0x927f('0x0'));var emlformat=require(_0x927f('0x1'));var rimraf=require('rimraf');var zipdir=require(_0x927f('0x2'));var jsonpatch=require(_0x927f('0x3'));var rp=require(_0x927f('0x4'));var moment=require(_0x927f('0x5'));var BPromise=require(_0x927f('0x6'));var Mustache=require(_0x927f('0x7'));var util=require(_0x927f('0x8'));var path=require(_0x927f('0x9'));var sox=require(_0x927f('0xa'));var csv=require(_0x927f('0xb'));var ejs=require('ejs');var fs=require('fs');var _=require(_0x927f('0xc'));var squel=require(_0x927f('0xd'));var crypto=require(_0x927f('0xe'));var jsforce=require(_0x927f('0xf'));var deskjs=require(_0x927f('0x10'));var toCsv=require(_0x927f('0xb'));var querystring=require(_0x927f('0x11'));var Papa=require(_0x927f('0x12'));var Redis=require(_0x927f('0x13'));var authService=require('../../components/auth/service');var qs=require(_0x927f('0x14'));var as=require(_0x927f('0x15'));var hardwareService=require(_0x927f('0x16'));var logger=require(_0x927f('0x17'))(_0x927f('0x18'));var utils=require(_0x927f('0x19'));var config=require(_0x927f('0x1a'));var db=require(_0x927f('0x1b'))['db'];function respondWithStatusCode(_0x3acdb9,_0x5e7bb8){_0x5e7bb8=_0x5e7bb8||0xcc;return function(_0x417cc6){if(_0x417cc6){return _0x3acdb9[_0x927f('0x1c')](_0x5e7bb8);}return _0x3acdb9[_0x927f('0x1d')](_0x5e7bb8)[_0x927f('0x1e')]();};}function respondWithResult(_0x2fa263,_0x98633d){_0x98633d=_0x98633d||0xc8;return function(_0x5cc452){if(_0x5cc452){return _0x2fa263[_0x927f('0x1d')](_0x98633d)[_0x927f('0x1f')](_0x5cc452);}};}function respondWithFilteredResult(_0x5694bd,_0x47fd07){return function(_0x191d07){if(_0x191d07){var _0x90205c=_0x191d07['count'],_0x3a6ce4=_0x47fd07['offset'],_0x4336c3=_0x47fd07[_0x927f('0x20')]+_0x47fd07[_0x927f('0x21')],_0x469c2f;if(_0x4336c3>=_0x90205c){_0x4336c3=_0x90205c;_0x469c2f=0xc8;}else{_0x469c2f=0xce;}_0x5694bd[_0x927f('0x1d')](_0x469c2f);return _0x5694bd[_0x927f('0x22')](_0x927f('0x23'),_0x3a6ce4+'-'+_0x4336c3+'/'+_0x90205c)[_0x927f('0x1f')](_0x191d07);}return null;};}function patchUpdates(_0x410ffc){return function(_0x227e45){try{jsonpatch['apply'](_0x227e45,_0x410ffc,!![]);}catch(_0x55f4db){return BPromise[_0x927f('0x24')](_0x55f4db);}return _0x227e45[_0x927f('0x25')]();};}function saveUpdates(_0x9c944a,_0xa4e06){return function(_0x58593b){if(_0x58593b){return _0x58593b[_0x927f('0x26')](_0x9c944a)[_0x927f('0x27')](function(_0x3d45ad){return _0x3d45ad;});}return null;};}function removeEntity(_0x1e70a5,_0x39d393){return function(_0x34d903){if(_0x34d903){return _0x34d903[_0x927f('0x28')]()[_0x927f('0x27')](function(){_0x1e70a5['status'](0xcc)[_0x927f('0x1e')]();});}};}function handleEntityNotFound(_0x546587,_0x2ff4e1){return function(_0x165946){if(!_0x165946){_0x546587[_0x927f('0x1c')](0x194);}return _0x165946;};}function handleError(_0x4c38da,_0x1ec30a){_0x1ec30a=_0x1ec30a||0x1f4;return function(_0x232ec4){logger[_0x927f('0x29')](_0x232ec4[_0x927f('0x2a')]);if(_0x232ec4[_0x927f('0x2b')]){delete _0x232ec4['name'];}_0x4c38da[_0x927f('0x1d')](_0x1ec30a)[_0x927f('0x2c')](_0x232ec4);};}exports[_0x927f('0x2d')]=function(_0x3d811e,_0x5a7798){var _0x5d3a48={},_0x578262={},_0x5cec8b={'count':0x0,'rows':[]};var _0x31e01d=_[_0x927f('0x2e')](db[_0x927f('0x2f')]['rawAttributes'],function(_0x4f2b29){return{'name':_0x4f2b29[_0x927f('0x30')],'type':_0x4f2b29[_0x927f('0x31')][_0x927f('0x32')]};});_0x578262['model']=_['map'](_0x31e01d,_0x927f('0x2b'));_0x578262[_0x927f('0x33')]=_[_0x927f('0x34')](_0x3d811e[_0x927f('0x33')]);_0x578262['filters']=_[_0x927f('0x35')](_0x578262['model'],_0x578262[_0x927f('0x33')]);_0x5d3a48[_0x927f('0x36')]=_['intersection'](_0x578262[_0x927f('0x37')],qs[_0x927f('0x38')](_0x3d811e[_0x927f('0x33')][_0x927f('0x38')]));_0x5d3a48[_0x927f('0x36')]=_0x5d3a48['attributes'][_0x927f('0x39')]?_0x5d3a48[_0x927f('0x36')]:_0x578262[_0x927f('0x37')];if(!_0x3d811e[_0x927f('0x33')]['hasOwnProperty'](_0x927f('0x3a'))){_0x5d3a48['limit']=qs['limit'](_0x3d811e[_0x927f('0x33')]['limit']);_0x5d3a48[_0x927f('0x20')]=qs[_0x927f('0x20')](_0x3d811e[_0x927f('0x33')][_0x927f('0x20')]);}_0x5d3a48[_0x927f('0x3b')]=qs[_0x927f('0x3c')](_0x3d811e[_0x927f('0x33')]['sort']);_0x5d3a48[_0x927f('0x3d')]=qs[_0x927f('0x3e')](_[_0x927f('0x3f')](_0x3d811e[_0x927f('0x33')],_0x578262[_0x927f('0x3e')]),_0x31e01d);if(_0x3d811e[_0x927f('0x33')][_0x927f('0x40')]){_0x5d3a48[_0x927f('0x3d')]=_[_0x927f('0x41')](_0x5d3a48[_0x927f('0x3d')],{'$or':_[_0x927f('0x2e')](_0x31e01d,function(_0x20b036){if(_0x20b036[_0x927f('0x31')]!=='VIRTUAL'){var _0x19be06={};_0x19be06[_0x20b036[_0x927f('0x2b')]]={'$like':'%'+_0x3d811e[_0x927f('0x33')]['filter']+'%'};return _0x19be06;}})});}_0x5d3a48=_[_0x927f('0x41')]({},_0x5d3a48,_0x3d811e[_0x927f('0x42')]);var _0x327214={'where':_0x5d3a48[_0x927f('0x3d')]};return db[_0x927f('0x2f')]['count'](_0x327214)['then'](function(_0x51b49b){_0x5cec8b[_0x927f('0x43')]=_0x51b49b;if(_0x3d811e[_0x927f('0x33')][_0x927f('0x44')]){_0x5d3a48[_0x927f('0x45')]=[{'all':!![]}];}return db[_0x927f('0x2f')][_0x927f('0x46')](_0x5d3a48);})[_0x927f('0x27')](function(_0x2f0e2e){_0x5cec8b[_0x927f('0x47')]=_0x2f0e2e;return _0x5cec8b;})[_0x927f('0x27')](respondWithFilteredResult(_0x5a7798,_0x5d3a48))['catch'](handleError(_0x5a7798,null));};exports[_0x927f('0x48')]=function(_0x4ba2c7,_0x4507fc){var _0x2de492={'raw':!![],'where':{'id':_0x4ba2c7[_0x927f('0x49')]['id']}},_0x455cd9={};_0x455cd9[_0x927f('0x37')]=_[_0x927f('0x34')](db[_0x927f('0x2f')]['rawAttributes']);_0x455cd9[_0x927f('0x33')]=_['keys'](_0x4ba2c7[_0x927f('0x33')]);_0x455cd9[_0x927f('0x3e')]=_[_0x927f('0x35')](_0x455cd9[_0x927f('0x37')],_0x455cd9[_0x927f('0x33')]);_0x2de492[_0x927f('0x36')]=_[_0x927f('0x35')](_0x455cd9[_0x927f('0x37')],qs['fields'](_0x4ba2c7[_0x927f('0x33')][_0x927f('0x38')]));_0x2de492[_0x927f('0x36')]=_0x2de492['attributes'][_0x927f('0x39')]?_0x2de492[_0x927f('0x36')]:_0x455cd9[_0x927f('0x37')];if(_0x4ba2c7[_0x927f('0x33')][_0x927f('0x44')]){_0x2de492[_0x927f('0x45')]=[{'all':!![]}];}_0x2de492=_[_0x927f('0x41')]({},_0x2de492,_0x4ba2c7[_0x927f('0x42')]);return db[_0x927f('0x2f')]['find'](_0x2de492)[_0x927f('0x27')](handleEntityNotFound(_0x4507fc,null))[_0x927f('0x27')](respondWithResult(_0x4507fc,null))['catch'](handleError(_0x4507fc,null));};exports[_0x927f('0x4a')]=function(_0x166084,_0xbfaa4b){return db['MailQueueReport'][_0x927f('0x4a')](_0x166084[_0x927f('0x4b')],{})[_0x927f('0x27')](respondWithResult(_0xbfaa4b,0xc9))[_0x927f('0x4c')](handleError(_0xbfaa4b,null));};exports[_0x927f('0x26')]=function(_0x2057d7,_0x270baa){if(_0x2057d7[_0x927f('0x4b')]['id']){delete _0x2057d7[_0x927f('0x4b')]['id'];}return db[_0x927f('0x2f')][_0x927f('0x4d')]({'where':{'id':_0x2057d7[_0x927f('0x49')]['id']}})[_0x927f('0x27')](handleEntityNotFound(_0x270baa,null))['then'](saveUpdates(_0x2057d7[_0x927f('0x4b')],null))[_0x927f('0x27')](respondWithResult(_0x270baa,null))['catch'](handleError(_0x270baa,null));};exports[_0x927f('0x28')]=function(_0x38f5ad,_0x509391){return db['MailQueueReport'][_0x927f('0x4d')]({'where':{'id':_0x38f5ad[_0x927f('0x49')]['id']}})[_0x927f('0x27')](handleEntityNotFound(_0x509391,null))[_0x927f('0x27')](removeEntity(_0x509391,null))[_0x927f('0x4c')](handleError(_0x509391,null));};exports[_0x927f('0x4e')]=function(_0x351119,_0x1ecb24){return db[_0x927f('0x2f')][_0x927f('0x4e')]()[_0x927f('0x27')](respondWithResult(_0x1ecb24,null))[_0x927f('0x4c')](handleError(_0x1ecb24,null));};