56d6432366c1d624739bebec7d6c07b3c4324b67
[motion2.git] / server / api / faxQueueReport / faxQueueReport.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 _0x2e72=['create','body','params','describe','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','util','path','sox','to-csv','squel','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','status','json','offset','set','Content-Range','update','then','destroy','end','sendStatus','error','name','send','index','rawAttributes','key','model','map','keys','query','filters','intersection','fields','attributes','hasOwnProperty','nolimit','limit','order','sort','where','filter','merge','FaxQueueReport','count','includeAll','rows','catch','show','length','include','options','find'];(function(_0x33acf4,_0x5edf67){var _0x3c0abb=function(_0x504829){while(--_0x504829){_0x33acf4['push'](_0x33acf4['shift']());}};_0x3c0abb(++_0x5edf67);}(_0x2e72,0x162));var _0x22e7=function(_0x45b034,_0x3a57dd){_0x45b034=_0x45b034-0x0;var _0x509cb0=_0x2e72[_0x45b034];return _0x509cb0;};'use strict';var pdf=require(_0x22e7('0x0'));var emlformat=require(_0x22e7('0x1'));var rimraf=require(_0x22e7('0x2'));var zipdir=require(_0x22e7('0x3'));var jsonpatch=require(_0x22e7('0x4'));var rp=require(_0x22e7('0x5'));var moment=require(_0x22e7('0x6'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0x22e7('0x7'));var path=require(_0x22e7('0x8'));var sox=require(_0x22e7('0x9'));var csv=require(_0x22e7('0xa'));var ejs=require('ejs');var fs=require('fs');var _=require('lodash');var squel=require(_0x22e7('0xb'));var crypto=require('crypto');var jsforce=require(_0x22e7('0xc'));var deskjs=require(_0x22e7('0xd'));var toCsv=require(_0x22e7('0xa'));var querystring=require(_0x22e7('0xe'));var Papa=require('papaparse');var Redis=require(_0x22e7('0xf'));var authService=require(_0x22e7('0x10'));var qs=require(_0x22e7('0x11'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x22e7('0x12'));var logger=require(_0x22e7('0x13'))(_0x22e7('0x14'));var utils=require(_0x22e7('0x15'));var config=require(_0x22e7('0x16'));var db=require(_0x22e7('0x17'))['db'];function respondWithStatusCode(_0x143e2b,_0x19007b){_0x19007b=_0x19007b||0xcc;return function(_0xfabbf0){if(_0xfabbf0){return _0x143e2b['sendStatus'](_0x19007b);}return _0x143e2b['status'](_0x19007b)['end']();};}function respondWithResult(_0x2a9cff,_0x367210){_0x367210=_0x367210||0xc8;return function(_0x30c558){if(_0x30c558){return _0x2a9cff[_0x22e7('0x18')](_0x367210)[_0x22e7('0x19')](_0x30c558);}};}function respondWithFilteredResult(_0x1211ba,_0x47c888){return function(_0x4a40d3){if(_0x4a40d3){var _0x12ef33=_0x4a40d3['count'],_0x2718d2=_0x47c888[_0x22e7('0x1a')],_0x25e115=_0x47c888[_0x22e7('0x1a')]+_0x47c888['limit'],_0x2db592;if(_0x25e115>=_0x12ef33){_0x25e115=_0x12ef33;_0x2db592=0xc8;}else{_0x2db592=0xce;}_0x1211ba[_0x22e7('0x18')](_0x2db592);return _0x1211ba[_0x22e7('0x1b')](_0x22e7('0x1c'),_0x2718d2+'-'+_0x25e115+'/'+_0x12ef33)[_0x22e7('0x19')](_0x4a40d3);}return null;};}function patchUpdates(_0x30ac3d){return function(_0x4660b9){try{jsonpatch['apply'](_0x4660b9,_0x30ac3d,!![]);}catch(_0x162116){return BPromise['reject'](_0x162116);}return _0x4660b9['save']();};}function saveUpdates(_0x23a675,_0x5dd311){return function(_0x321702){if(_0x321702){return _0x321702[_0x22e7('0x1d')](_0x23a675)[_0x22e7('0x1e')](function(_0x1666cc){return _0x1666cc;});}return null;};}function removeEntity(_0x47c028,_0x46b753){return function(_0x2b4b75){if(_0x2b4b75){return _0x2b4b75[_0x22e7('0x1f')]()['then'](function(){_0x47c028[_0x22e7('0x18')](0xcc)[_0x22e7('0x20')]();});}};}function handleEntityNotFound(_0x5890f2,_0x1a6bc4){return function(_0x1fd339){if(!_0x1fd339){_0x5890f2[_0x22e7('0x21')](0x194);}return _0x1fd339;};}function handleError(_0x52b39e,_0x389115){_0x389115=_0x389115||0x1f4;return function(_0x595993){logger[_0x22e7('0x22')](_0x595993['stack']);if(_0x595993['name']){delete _0x595993[_0x22e7('0x23')];}_0x52b39e[_0x22e7('0x18')](_0x389115)[_0x22e7('0x24')](_0x595993);};}exports[_0x22e7('0x25')]=function(_0x1ad8b9,_0x232f99){var _0x525c18={},_0x7554ad={},_0xbd9fd6={'count':0x0,'rows':[]};var _0x20d5c6=_['map'](db['FaxQueueReport'][_0x22e7('0x26')],function(_0x4b17c8){return{'name':_0x4b17c8['fieldName'],'type':_0x4b17c8['type'][_0x22e7('0x27')]};});_0x7554ad[_0x22e7('0x28')]=_[_0x22e7('0x29')](_0x20d5c6,_0x22e7('0x23'));_0x7554ad['query']=_[_0x22e7('0x2a')](_0x1ad8b9[_0x22e7('0x2b')]);_0x7554ad[_0x22e7('0x2c')]=_[_0x22e7('0x2d')](_0x7554ad[_0x22e7('0x28')],_0x7554ad[_0x22e7('0x2b')]);_0x525c18['attributes']=_[_0x22e7('0x2d')](_0x7554ad[_0x22e7('0x28')],qs[_0x22e7('0x2e')](_0x1ad8b9['query']['fields']));_0x525c18[_0x22e7('0x2f')]=_0x525c18[_0x22e7('0x2f')]['length']?_0x525c18[_0x22e7('0x2f')]:_0x7554ad[_0x22e7('0x28')];if(!_0x1ad8b9[_0x22e7('0x2b')][_0x22e7('0x30')](_0x22e7('0x31'))){_0x525c18[_0x22e7('0x32')]=qs[_0x22e7('0x32')](_0x1ad8b9[_0x22e7('0x2b')][_0x22e7('0x32')]);_0x525c18[_0x22e7('0x1a')]=qs[_0x22e7('0x1a')](_0x1ad8b9[_0x22e7('0x2b')][_0x22e7('0x1a')]);}_0x525c18[_0x22e7('0x33')]=qs[_0x22e7('0x34')](_0x1ad8b9[_0x22e7('0x2b')]['sort']);_0x525c18[_0x22e7('0x35')]=qs[_0x22e7('0x2c')](_['pick'](_0x1ad8b9['query'],_0x7554ad[_0x22e7('0x2c')]),_0x20d5c6);if(_0x1ad8b9[_0x22e7('0x2b')][_0x22e7('0x36')]){_0x525c18[_0x22e7('0x35')]=_['merge'](_0x525c18['where'],{'$or':_['map'](_0x20d5c6,function(_0x57aad1){if(_0x57aad1['type']!=='VIRTUAL'){var _0x5685c5={};_0x5685c5[_0x57aad1[_0x22e7('0x23')]]={'$like':'%'+_0x1ad8b9[_0x22e7('0x2b')][_0x22e7('0x36')]+'%'};return _0x5685c5;}})});}_0x525c18=_[_0x22e7('0x37')]({},_0x525c18,_0x1ad8b9['options']);var _0x2a9978={'where':_0x525c18[_0x22e7('0x35')]};return db[_0x22e7('0x38')]['count'](_0x2a9978)[_0x22e7('0x1e')](function(_0x15af78){_0xbd9fd6[_0x22e7('0x39')]=_0x15af78;if(_0x1ad8b9[_0x22e7('0x2b')][_0x22e7('0x3a')]){_0x525c18['include']=[{'all':!![]}];}return db['FaxQueueReport']['findAll'](_0x525c18);})['then'](function(_0x310f17){_0xbd9fd6[_0x22e7('0x3b')]=_0x310f17;return _0xbd9fd6;})[_0x22e7('0x1e')](respondWithFilteredResult(_0x232f99,_0x525c18))[_0x22e7('0x3c')](handleError(_0x232f99,null));};exports[_0x22e7('0x3d')]=function(_0x86e03f,_0x4ab2d5){var _0x1a208f={'raw':!![],'where':{'id':_0x86e03f['params']['id']}},_0x3b6b97={};_0x3b6b97[_0x22e7('0x28')]=_['keys'](db['FaxQueueReport'][_0x22e7('0x26')]);_0x3b6b97[_0x22e7('0x2b')]=_[_0x22e7('0x2a')](_0x86e03f[_0x22e7('0x2b')]);_0x3b6b97['filters']=_[_0x22e7('0x2d')](_0x3b6b97['model'],_0x3b6b97['query']);_0x1a208f['attributes']=_['intersection'](_0x3b6b97['model'],qs[_0x22e7('0x2e')](_0x86e03f[_0x22e7('0x2b')][_0x22e7('0x2e')]));_0x1a208f['attributes']=_0x1a208f[_0x22e7('0x2f')][_0x22e7('0x3e')]?_0x1a208f[_0x22e7('0x2f')]:_0x3b6b97[_0x22e7('0x28')];if(_0x86e03f['query'][_0x22e7('0x3a')]){_0x1a208f[_0x22e7('0x3f')]=[{'all':!![]}];}_0x1a208f=_[_0x22e7('0x37')]({},_0x1a208f,_0x86e03f[_0x22e7('0x40')]);return db[_0x22e7('0x38')][_0x22e7('0x41')](_0x1a208f)[_0x22e7('0x1e')](handleEntityNotFound(_0x4ab2d5,null))['then'](respondWithResult(_0x4ab2d5,null))[_0x22e7('0x3c')](handleError(_0x4ab2d5,null));};exports[_0x22e7('0x42')]=function(_0x17b92d,_0x1a3a19){return db[_0x22e7('0x38')][_0x22e7('0x42')](_0x17b92d[_0x22e7('0x43')],{})[_0x22e7('0x1e')](respondWithResult(_0x1a3a19,0xc9))[_0x22e7('0x3c')](handleError(_0x1a3a19,null));};exports[_0x22e7('0x1d')]=function(_0x14b310,_0x2331f3){if(_0x14b310[_0x22e7('0x43')]['id']){delete _0x14b310[_0x22e7('0x43')]['id'];}return db[_0x22e7('0x38')]['find']({'where':{'id':_0x14b310['params']['id']}})[_0x22e7('0x1e')](handleEntityNotFound(_0x2331f3,null))[_0x22e7('0x1e')](saveUpdates(_0x14b310[_0x22e7('0x43')],null))['then'](respondWithResult(_0x2331f3,null))[_0x22e7('0x3c')](handleError(_0x2331f3,null));};exports[_0x22e7('0x1f')]=function(_0xf5c0b7,_0x2f85ec){return db['FaxQueueReport'][_0x22e7('0x41')]({'where':{'id':_0xf5c0b7[_0x22e7('0x44')]['id']}})['then'](handleEntityNotFound(_0x2f85ec,null))['then'](removeEntity(_0x2f85ec,null))['catch'](handleError(_0x2f85ec,null));};exports[_0x22e7('0x45')]=function(_0x2f2dbd,_0x85ccb3){return db['FaxQueueReport'][_0x22e7('0x45')]()[_0x22e7('0x1e')](respondWithResult(_0x85ccb3,null))['catch'](handleError(_0x85ccb3,null));};