f22df835a80d4a62ac7d3210a1a4eb039f066432
[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 _0x2767=['../../mysqldb','sendStatus','status','end','count','offset','limit','set','json','reject','save','destroy','stack','name','send','FaxQueueReport','rawAttributes','fieldName','key','model','map','query','keys','filters','attributes','intersection','fields','length','hasOwnProperty','order','sort','where','pick','filter','merge','type','VIRTUAL','options','then','includeAll','include','catch','show','params','find','create','body','describe','html-pdf','rimraf','zip-dir','fast-json-patch','moment','bluebird','mustache','util','path','sox','to-csv','ejs','squel','desk.js','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','api','../../config/utils','../../config/environment','../../config/license/util'];(function(_0x87eb,_0x3170ce){var _0x28ea38=function(_0x1526bd){while(--_0x1526bd){_0x87eb['push'](_0x87eb['shift']());}};_0x28ea38(++_0x3170ce);}(_0x2767,0x189));var _0x7276=function(_0x144d87,_0x59ae31){_0x144d87=_0x144d87-0x0;var _0x1adc66=_0x2767[_0x144d87];return _0x1adc66;};'use strict';var pdf=require(_0x7276('0x0'));var emlformat=require('eml-format');var rimraf=require(_0x7276('0x1'));var zipdir=require(_0x7276('0x2'));var jsonpatch=require(_0x7276('0x3'));var rp=require('request-promise');var moment=require(_0x7276('0x4'));var BPromise=require(_0x7276('0x5'));var Mustache=require(_0x7276('0x6'));var util=require(_0x7276('0x7'));var path=require(_0x7276('0x8'));var sox=require(_0x7276('0x9'));var csv=require(_0x7276('0xa'));var ejs=require(_0x7276('0xb'));var fs=require('fs');var _=require('lodash');var squel=require(_0x7276('0xc'));var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require(_0x7276('0xd'));var toCsv=require(_0x7276('0xa'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0x7276('0xe'));var qs=require(_0x7276('0xf'));var as=require(_0x7276('0x10'));var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0x7276('0x11'));var utils=require(_0x7276('0x12'));var config=require(_0x7276('0x13'));var licenseUtil=require(_0x7276('0x14'));var db=require(_0x7276('0x15'))['db'];function respondWithStatusCode(_0x49874a,_0x1f1486){_0x1f1486=_0x1f1486||0xcc;return function(_0x4e05b6){if(_0x4e05b6){return _0x49874a[_0x7276('0x16')](_0x1f1486);}return _0x49874a[_0x7276('0x17')](_0x1f1486)[_0x7276('0x18')]();};}function respondWithResult(_0x2407f7,_0x2dba71){_0x2dba71=_0x2dba71||0xc8;return function(_0x3104b0){if(_0x3104b0){return _0x2407f7[_0x7276('0x17')](_0x2dba71)['json'](_0x3104b0);}};}function respondWithFilteredResult(_0x48a6e9,_0x4435ce){return function(_0x1bd59f){if(_0x1bd59f){var _0x27665b=_0x1bd59f[_0x7276('0x19')],_0x597b10=_0x4435ce[_0x7276('0x1a')],_0x3b2e50=_0x4435ce[_0x7276('0x1a')]+_0x4435ce[_0x7276('0x1b')],_0x218eb2;if(_0x3b2e50>=_0x27665b){_0x3b2e50=_0x27665b;_0x218eb2=0xc8;}else{_0x218eb2=0xce;}_0x48a6e9[_0x7276('0x17')](_0x218eb2);return _0x48a6e9[_0x7276('0x1c')]('Content-Range',_0x597b10+'-'+_0x3b2e50+'/'+_0x27665b)[_0x7276('0x1d')](_0x1bd59f);}return null;};}function patchUpdates(_0x53b080){return function(_0xd03815){try{jsonpatch['apply'](_0xd03815,_0x53b080,!![]);}catch(_0x49c6d7){return BPromise[_0x7276('0x1e')](_0x49c6d7);}return _0xd03815[_0x7276('0x1f')]();};}function saveUpdates(_0x381f7f,_0x288658){return function(_0xcb747c){if(_0xcb747c){return _0xcb747c['update'](_0x381f7f)['then'](function(_0x4dfcca){return _0x4dfcca;});}return null;};}function removeEntity(_0x3dc39f,_0x45d491){return function(_0xbb7987){if(_0xbb7987){return _0xbb7987[_0x7276('0x20')]()['then'](function(){_0x3dc39f[_0x7276('0x17')](0xcc)[_0x7276('0x18')]();});}};}function handleEntityNotFound(_0x1578db,_0xa68622){return function(_0x92fc3e){if(!_0x92fc3e){_0x1578db[_0x7276('0x16')](0x194);}return _0x92fc3e;};}function handleError(_0x2edf9e,_0x21d0eb){_0x21d0eb=_0x21d0eb||0x1f4;return function(_0x2bcf7a){logger['error'](_0x2bcf7a[_0x7276('0x21')]);if(_0x2bcf7a[_0x7276('0x22')]){delete _0x2bcf7a[_0x7276('0x22')];}_0x2edf9e[_0x7276('0x17')](_0x21d0eb)[_0x7276('0x23')](_0x2bcf7a);};}exports['index']=function(_0x3d9b3b,_0x4346b8){var _0x1343a0={},_0x2aa183={},_0x4ecfa0={'count':0x0,'rows':[]};var _0x2d15ef=_['map'](db[_0x7276('0x24')][_0x7276('0x25')],function(_0xae1105){return{'name':_0xae1105[_0x7276('0x26')],'type':_0xae1105['type'][_0x7276('0x27')]};});_0x2aa183[_0x7276('0x28')]=_[_0x7276('0x29')](_0x2d15ef,_0x7276('0x22'));_0x2aa183[_0x7276('0x2a')]=_[_0x7276('0x2b')](_0x3d9b3b[_0x7276('0x2a')]);_0x2aa183[_0x7276('0x2c')]=_['intersection'](_0x2aa183['model'],_0x2aa183[_0x7276('0x2a')]);_0x1343a0[_0x7276('0x2d')]=_[_0x7276('0x2e')](_0x2aa183[_0x7276('0x28')],qs[_0x7276('0x2f')](_0x3d9b3b[_0x7276('0x2a')]['fields']));_0x1343a0[_0x7276('0x2d')]=_0x1343a0[_0x7276('0x2d')][_0x7276('0x30')]?_0x1343a0[_0x7276('0x2d')]:_0x2aa183['model'];if(!_0x3d9b3b[_0x7276('0x2a')][_0x7276('0x31')]('nolimit')){_0x1343a0[_0x7276('0x1b')]=qs[_0x7276('0x1b')](_0x3d9b3b[_0x7276('0x2a')]['limit']);_0x1343a0[_0x7276('0x1a')]=qs[_0x7276('0x1a')](_0x3d9b3b[_0x7276('0x2a')]['offset']);}_0x1343a0[_0x7276('0x32')]=qs[_0x7276('0x33')](_0x3d9b3b[_0x7276('0x2a')][_0x7276('0x33')]);_0x1343a0[_0x7276('0x34')]=qs[_0x7276('0x2c')](_[_0x7276('0x35')](_0x3d9b3b['query'],_0x2aa183[_0x7276('0x2c')]),_0x2d15ef);if(_0x3d9b3b[_0x7276('0x2a')][_0x7276('0x36')]){_0x1343a0[_0x7276('0x34')]=_[_0x7276('0x37')](_0x1343a0[_0x7276('0x34')],{'$or':_['map'](_0x2d15ef,function(_0x53aa17){if(_0x53aa17[_0x7276('0x38')]!==_0x7276('0x39')){var _0x4e14c0={};_0x4e14c0[_0x53aa17['name']]={'$like':'%'+_0x3d9b3b[_0x7276('0x2a')]['filter']+'%'};return _0x4e14c0;}})});}_0x1343a0=_['merge']({},_0x1343a0,_0x3d9b3b[_0x7276('0x3a')]);var _0x27d29f={'where':_0x1343a0[_0x7276('0x34')]};return db['FaxQueueReport'][_0x7276('0x19')](_0x27d29f)[_0x7276('0x3b')](function(_0x186283){_0x4ecfa0[_0x7276('0x19')]=_0x186283;if(_0x3d9b3b[_0x7276('0x2a')][_0x7276('0x3c')]){_0x1343a0[_0x7276('0x3d')]=[{'all':!![]}];}return db[_0x7276('0x24')]['findAll'](_0x1343a0);})[_0x7276('0x3b')](function(_0x51c7a5){_0x4ecfa0['rows']=_0x51c7a5;return _0x4ecfa0;})['then'](respondWithFilteredResult(_0x4346b8,_0x1343a0))[_0x7276('0x3e')](handleError(_0x4346b8,null));};exports[_0x7276('0x3f')]=function(_0x32675a,_0x356bc3){var _0x16477d={'raw':!![],'where':{'id':_0x32675a[_0x7276('0x40')]['id']}},_0x317b29={};_0x317b29[_0x7276('0x28')]=_[_0x7276('0x2b')](db[_0x7276('0x24')]['rawAttributes']);_0x317b29[_0x7276('0x2a')]=_[_0x7276('0x2b')](_0x32675a['query']);_0x317b29['filters']=_[_0x7276('0x2e')](_0x317b29[_0x7276('0x28')],_0x317b29[_0x7276('0x2a')]);_0x16477d[_0x7276('0x2d')]=_[_0x7276('0x2e')](_0x317b29[_0x7276('0x28')],qs['fields'](_0x32675a['query'][_0x7276('0x2f')]));_0x16477d[_0x7276('0x2d')]=_0x16477d['attributes'][_0x7276('0x30')]?_0x16477d[_0x7276('0x2d')]:_0x317b29[_0x7276('0x28')];if(_0x32675a['query'][_0x7276('0x3c')]){_0x16477d[_0x7276('0x3d')]=[{'all':!![]}];}_0x16477d=_[_0x7276('0x37')]({},_0x16477d,_0x32675a[_0x7276('0x3a')]);return db['FaxQueueReport'][_0x7276('0x41')](_0x16477d)[_0x7276('0x3b')](handleEntityNotFound(_0x356bc3,null))[_0x7276('0x3b')](respondWithResult(_0x356bc3,null))[_0x7276('0x3e')](handleError(_0x356bc3,null));};exports[_0x7276('0x42')]=function(_0x43af18,_0x542fff){return db[_0x7276('0x24')][_0x7276('0x42')](_0x43af18[_0x7276('0x43')],{})['then'](respondWithResult(_0x542fff,0xc9))[_0x7276('0x3e')](handleError(_0x542fff,null));};exports['update']=function(_0x444e38,_0x4f2963){if(_0x444e38[_0x7276('0x43')]['id']){delete _0x444e38[_0x7276('0x43')]['id'];}return db['FaxQueueReport'][_0x7276('0x41')]({'where':{'id':_0x444e38[_0x7276('0x40')]['id']}})[_0x7276('0x3b')](handleEntityNotFound(_0x4f2963,null))[_0x7276('0x3b')](saveUpdates(_0x444e38[_0x7276('0x43')],null))['then'](respondWithResult(_0x4f2963,null))[_0x7276('0x3e')](handleError(_0x4f2963,null));};exports[_0x7276('0x20')]=function(_0x509be7,_0x51eb90){return db[_0x7276('0x24')][_0x7276('0x41')]({'where':{'id':_0x509be7[_0x7276('0x40')]['id']}})['then'](handleEntityNotFound(_0x51eb90,null))[_0x7276('0x3b')](removeEntity(_0x51eb90,null))[_0x7276('0x3e')](handleError(_0x51eb90,null));};exports[_0x7276('0x44')]=function(_0x4afa10,_0x25b1c6){return db['FaxQueueReport'][_0x7276('0x44')]()[_0x7276('0x3b')](respondWithResult(_0x25b1c6,null))[_0x7276('0x3e')](handleError(_0x25b1c6,null));};