Built motion from commit (unavailable).|2.5.14
[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 _0xa859=['squel','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','status','end','json','count','offset','limit','apply','reject','update','destroy','then','sendStatus','error','stack','name','send','index','fieldName','key','model','keys','query','filters','intersection','attributes','fields','length','order','sort','where','pick','merge','type','VIRTUAL','filter','options','MailQueueReport','findAll','rows','catch','show','params','include','find','create','body','describe','html-pdf','eml-format','zip-dir','fast-json-patch','request-promise','moment','mustache','util','sox','to-csv','ejs','lodash'];(function(_0x4709c0,_0x3396c7){var _0x13348b=function(_0x426235){while(--_0x426235){_0x4709c0['push'](_0x4709c0['shift']());}};_0x13348b(++_0x3396c7);}(_0xa859,0x11c));var _0x9a85=function(_0x3daf89,_0x479b76){_0x3daf89=_0x3daf89-0x0;var _0x293ed0=_0xa859[_0x3daf89];return _0x293ed0;};'use strict';var pdf=require(_0x9a85('0x0'));var emlformat=require(_0x9a85('0x1'));var rimraf=require('rimraf');var zipdir=require(_0x9a85('0x2'));var jsonpatch=require(_0x9a85('0x3'));var rp=require(_0x9a85('0x4'));var moment=require(_0x9a85('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x9a85('0x6'));var util=require(_0x9a85('0x7'));var path=require('path');var sox=require(_0x9a85('0x8'));var csv=require(_0x9a85('0x9'));var ejs=require(_0x9a85('0xa'));var fs=require('fs');var _=require(_0x9a85('0xb'));var squel=require(_0x9a85('0xc'));var crypto=require('crypto');var jsforce=require(_0x9a85('0xd'));var deskjs=require(_0x9a85('0xe'));var toCsv=require('to-csv');var querystring=require(_0x9a85('0xf'));var Papa=require(_0x9a85('0x10'));var Redis=require(_0x9a85('0x11'));var authService=require(_0x9a85('0x12'));var qs=require(_0x9a85('0x13'));var as=require(_0x9a85('0x14'));var hardwareService=require(_0x9a85('0x15'));var logger=require(_0x9a85('0x16'))(_0x9a85('0x17'));var utils=require('../../config/utils');var config=require(_0x9a85('0x18'));var licenseUtil=require(_0x9a85('0x19'));var db=require(_0x9a85('0x1a'))['db'];function respondWithStatusCode(_0x31d181,_0x29b886){_0x29b886=_0x29b886||0xcc;return function(_0x384be8){if(_0x384be8){return _0x31d181['sendStatus'](_0x29b886);}return _0x31d181[_0x9a85('0x1b')](_0x29b886)[_0x9a85('0x1c')]();};}function respondWithResult(_0x378fb0,_0x257507){_0x257507=_0x257507||0xc8;return function(_0x546d37){if(_0x546d37){return _0x378fb0[_0x9a85('0x1b')](_0x257507)[_0x9a85('0x1d')](_0x546d37);}};}function respondWithFilteredResult(_0xd260d8,_0x4ecf8f){return function(_0xe5d5ff){if(_0xe5d5ff){var _0x5a5391=_0xe5d5ff[_0x9a85('0x1e')],_0x5f06b1=_0x4ecf8f['offset'],_0x1a8408=_0x4ecf8f[_0x9a85('0x1f')]+_0x4ecf8f[_0x9a85('0x20')],_0x52df69;if(_0x1a8408>=_0x5a5391){_0x1a8408=_0x5a5391;_0x52df69=0xc8;}else{_0x52df69=0xce;}_0xd260d8[_0x9a85('0x1b')](_0x52df69);return _0xd260d8['set']('Content-Range',_0x5f06b1+'-'+_0x1a8408+'/'+_0x5a5391)[_0x9a85('0x1d')](_0xe5d5ff);}return null;};}function patchUpdates(_0x73479c){return function(_0x311164){try{jsonpatch[_0x9a85('0x21')](_0x311164,_0x73479c,!![]);}catch(_0x39b0d2){return BPromise[_0x9a85('0x22')](_0x39b0d2);}return _0x311164['save']();};}function saveUpdates(_0x102ea8,_0x2f8f21){return function(_0x273c7b){if(_0x273c7b){return _0x273c7b[_0x9a85('0x23')](_0x102ea8)['then'](function(_0x3a408a){return _0x3a408a;});}return null;};}function removeEntity(_0x16e402,_0x2ddcb8){return function(_0x12e882){if(_0x12e882){return _0x12e882[_0x9a85('0x24')]()[_0x9a85('0x25')](function(){_0x16e402[_0x9a85('0x1b')](0xcc)['end']();});}};}function handleEntityNotFound(_0x5ee790,_0x34d59a){return function(_0x23f369){if(!_0x23f369){_0x5ee790[_0x9a85('0x26')](0x194);}return _0x23f369;};}function handleError(_0x29715d,_0x5704e0){_0x5704e0=_0x5704e0||0x1f4;return function(_0x43da51){logger[_0x9a85('0x27')](_0x43da51[_0x9a85('0x28')]);if(_0x43da51[_0x9a85('0x29')]){delete _0x43da51[_0x9a85('0x29')];}_0x29715d['status'](_0x5704e0)[_0x9a85('0x2a')](_0x43da51);};}exports[_0x9a85('0x2b')]=function(_0x2a45fd,_0x3c91c5){var _0x3b94cc={},_0x2588a6={},_0x20e899={'count':0x0,'rows':[]};var _0x1b1b17=_['map'](db['MailQueueReport']['rawAttributes'],function(_0x15b556){return{'name':_0x15b556[_0x9a85('0x2c')],'type':_0x15b556['type'][_0x9a85('0x2d')]};});_0x2588a6[_0x9a85('0x2e')]=_['map'](_0x1b1b17,_0x9a85('0x29'));_0x2588a6['query']=_[_0x9a85('0x2f')](_0x2a45fd[_0x9a85('0x30')]);_0x2588a6[_0x9a85('0x31')]=_[_0x9a85('0x32')](_0x2588a6[_0x9a85('0x2e')],_0x2588a6[_0x9a85('0x30')]);_0x3b94cc[_0x9a85('0x33')]=_[_0x9a85('0x32')](_0x2588a6[_0x9a85('0x2e')],qs[_0x9a85('0x34')](_0x2a45fd['query'][_0x9a85('0x34')]));_0x3b94cc[_0x9a85('0x33')]=_0x3b94cc[_0x9a85('0x33')][_0x9a85('0x35')]?_0x3b94cc[_0x9a85('0x33')]:_0x2588a6['model'];if(!_0x2a45fd['query']['hasOwnProperty']('nolimit')){_0x3b94cc[_0x9a85('0x20')]=qs[_0x9a85('0x20')](_0x2a45fd[_0x9a85('0x30')]['limit']);_0x3b94cc[_0x9a85('0x1f')]=qs['offset'](_0x2a45fd['query']['offset']);}_0x3b94cc[_0x9a85('0x36')]=qs['sort'](_0x2a45fd['query'][_0x9a85('0x37')]);_0x3b94cc[_0x9a85('0x38')]=qs[_0x9a85('0x31')](_[_0x9a85('0x39')](_0x2a45fd[_0x9a85('0x30')],_0x2588a6[_0x9a85('0x31')]),_0x1b1b17);if(_0x2a45fd['query']['filter']){_0x3b94cc[_0x9a85('0x38')]=_[_0x9a85('0x3a')](_0x3b94cc[_0x9a85('0x38')],{'$or':_['map'](_0x1b1b17,function(_0x5574a5){if(_0x5574a5[_0x9a85('0x3b')]!==_0x9a85('0x3c')){var _0x268626={};_0x268626[_0x5574a5[_0x9a85('0x29')]]={'$like':'%'+_0x2a45fd['query'][_0x9a85('0x3d')]+'%'};return _0x268626;}})});}_0x3b94cc=_['merge']({},_0x3b94cc,_0x2a45fd[_0x9a85('0x3e')]);var _0x1c53cc={'where':_0x3b94cc[_0x9a85('0x38')]};return db[_0x9a85('0x3f')]['count'](_0x1c53cc)[_0x9a85('0x25')](function(_0x58f96c){_0x20e899['count']=_0x58f96c;if(_0x2a45fd['query']['includeAll']){_0x3b94cc['include']=[{'all':!![]}];}return db[_0x9a85('0x3f')][_0x9a85('0x40')](_0x3b94cc);})[_0x9a85('0x25')](function(_0x5e9548){_0x20e899[_0x9a85('0x41')]=_0x5e9548;return _0x20e899;})[_0x9a85('0x25')](respondWithFilteredResult(_0x3c91c5,_0x3b94cc))[_0x9a85('0x42')](handleError(_0x3c91c5,null));};exports[_0x9a85('0x43')]=function(_0x323209,_0x3b32f4){var _0xd61c40={'raw':!![],'where':{'id':_0x323209[_0x9a85('0x44')]['id']}},_0x5e7c59={};_0x5e7c59[_0x9a85('0x2e')]=_[_0x9a85('0x2f')](db[_0x9a85('0x3f')]['rawAttributes']);_0x5e7c59[_0x9a85('0x30')]=_[_0x9a85('0x2f')](_0x323209[_0x9a85('0x30')]);_0x5e7c59['filters']=_['intersection'](_0x5e7c59[_0x9a85('0x2e')],_0x5e7c59[_0x9a85('0x30')]);_0xd61c40[_0x9a85('0x33')]=_[_0x9a85('0x32')](_0x5e7c59['model'],qs[_0x9a85('0x34')](_0x323209[_0x9a85('0x30')][_0x9a85('0x34')]));_0xd61c40[_0x9a85('0x33')]=_0xd61c40[_0x9a85('0x33')][_0x9a85('0x35')]?_0xd61c40['attributes']:_0x5e7c59['model'];if(_0x323209['query']['includeAll']){_0xd61c40[_0x9a85('0x45')]=[{'all':!![]}];}_0xd61c40=_[_0x9a85('0x3a')]({},_0xd61c40,_0x323209[_0x9a85('0x3e')]);return db[_0x9a85('0x3f')][_0x9a85('0x46')](_0xd61c40)['then'](handleEntityNotFound(_0x3b32f4,null))[_0x9a85('0x25')](respondWithResult(_0x3b32f4,null))[_0x9a85('0x42')](handleError(_0x3b32f4,null));};exports[_0x9a85('0x47')]=function(_0x3e035b,_0x1f7959){return db['MailQueueReport']['create'](_0x3e035b[_0x9a85('0x48')],{})[_0x9a85('0x25')](respondWithResult(_0x1f7959,0xc9))[_0x9a85('0x42')](handleError(_0x1f7959,null));};exports[_0x9a85('0x23')]=function(_0x340236,_0x2dd91d){if(_0x340236[_0x9a85('0x48')]['id']){delete _0x340236['body']['id'];}return db[_0x9a85('0x3f')][_0x9a85('0x46')]({'where':{'id':_0x340236[_0x9a85('0x44')]['id']}})[_0x9a85('0x25')](handleEntityNotFound(_0x2dd91d,null))['then'](saveUpdates(_0x340236[_0x9a85('0x48')],null))['then'](respondWithResult(_0x2dd91d,null))['catch'](handleError(_0x2dd91d,null));};exports[_0x9a85('0x24')]=function(_0x3afeaa,_0x2bee41){return db[_0x9a85('0x3f')][_0x9a85('0x46')]({'where':{'id':_0x3afeaa[_0x9a85('0x44')]['id']}})[_0x9a85('0x25')](handleEntityNotFound(_0x2bee41,null))['then'](removeEntity(_0x2bee41,null))[_0x9a85('0x42')](handleError(_0x2bee41,null));};exports[_0x9a85('0x49')]=function(_0x5a695d,_0xc2b07f){return db[_0x9a85('0x3f')][_0x9a85('0x49')]()[_0x9a85('0x25')](respondWithResult(_0xc2b07f,null))[_0x9a85('0x42')](handleError(_0xc2b07f,null));};