Built motion from commit (unavailable).|2.4.20
[motion2.git] / server / api / voiceQueueReport / voiceQueueReport.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 _0x1261=['includeAll','find','catch','create','body','describe','getVoiceQueuesReport','hasOwnProperty','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','ejs','lodash','crypto','jsforce','desk.js','to-csv','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/utils','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./voiceQueueReport.socket','register','sendStatus','status','json','offset','set','Content-Range','reject','save','update','destroy','then','end','error','name','index','map','rawAttributes','key','model','query','keys','filters','intersection','fields','attributes','length','nolimit','limit','order','sort','pick','filter','merge','where','type','options','VoiceQueueReport','count','include','findAll','rows','params'];(function(_0x3f7f4e,_0x438c6b){var _0x38fabe=function(_0x286924){while(--_0x286924){_0x3f7f4e['push'](_0x3f7f4e['shift']());}};_0x38fabe(++_0x438c6b);}(_0x1261,0x144));var _0x1126=function(_0x2e6b07,_0x581517){_0x2e6b07=_0x2e6b07-0x0;var _0x113ea9=_0x1261[_0x2e6b07];return _0x113ea9;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x1126('0x0'));var rimraf=require(_0x1126('0x1'));var zipdir=require(_0x1126('0x2'));var jsonpatch=require(_0x1126('0x3'));var rp=require(_0x1126('0x4'));var moment=require(_0x1126('0x5'));var BPromise=require(_0x1126('0x6'));var Mustache=require(_0x1126('0x7'));var util=require(_0x1126('0x8'));var path=require(_0x1126('0x9'));var sox=require('sox');var csv=require('to-csv');var ejs=require(_0x1126('0xa'));var fs=require('fs');var _=require(_0x1126('0xb'));var squel=require('squel');var crypto=require(_0x1126('0xc'));var jsforce=require(_0x1126('0xd'));var deskjs=require(_0x1126('0xe'));var toCsv=require(_0x1126('0xf'));var querystring=require(_0x1126('0x10'));var Papa=require('papaparse');var Redis=require(_0x1126('0x11'));var authService=require(_0x1126('0x12'));var qs=require(_0x1126('0x13'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x1126('0x14'));var logger=require('../../config/logger')('api');var utils=require(_0x1126('0x15'));var config=require('../../config/environment');var db=require(_0x1126('0x16'))['db'];config[_0x1126('0x17')]=_[_0x1126('0x18')](config[_0x1126('0x17')],{'host':_0x1126('0x19'),'port':0x18eb});var socket=require(_0x1126('0x1a'))(new Redis(config[_0x1126('0x17')]));require(_0x1126('0x1b'))[_0x1126('0x1c')](socket);function respondWithStatusCode(_0x53a8f0,_0x5de9a7){_0x5de9a7=_0x5de9a7||0xcc;return function(_0x1af673){if(_0x1af673){return _0x53a8f0[_0x1126('0x1d')](_0x5de9a7);}return _0x53a8f0[_0x1126('0x1e')](_0x5de9a7)['end']();};}function respondWithResult(_0x45149c,_0x4794a7){_0x4794a7=_0x4794a7||0xc8;return function(_0x35fe9f){if(_0x35fe9f){return _0x45149c[_0x1126('0x1e')](_0x4794a7)[_0x1126('0x1f')](_0x35fe9f);}};}function respondWithFilteredResult(_0x4e1c97,_0x245cd7){return function(_0x1695f6){if(_0x1695f6){var _0x4a7b49=_0x1695f6['count'],_0x4d2b38=_0x245cd7['offset'],_0x22ae0b=_0x245cd7[_0x1126('0x20')]+_0x245cd7['limit'],_0x2b2487;if(_0x22ae0b>=_0x4a7b49){_0x22ae0b=_0x4a7b49;_0x2b2487=0xc8;}else{_0x2b2487=0xce;}_0x4e1c97[_0x1126('0x1e')](_0x2b2487);return _0x4e1c97[_0x1126('0x21')](_0x1126('0x22'),_0x4d2b38+'-'+_0x22ae0b+'/'+_0x4a7b49)['json'](_0x1695f6);}return null;};}function patchUpdates(_0x2a08ba){return function(_0x49d209){try{jsonpatch['apply'](_0x49d209,_0x2a08ba,!![]);}catch(_0x30f6b3){return BPromise[_0x1126('0x23')](_0x30f6b3);}return _0x49d209[_0x1126('0x24')]();};}function saveUpdates(_0x36d254,_0x526ca1){return function(_0x29ab60){if(_0x29ab60){return _0x29ab60[_0x1126('0x25')](_0x36d254)['then'](function(_0x2175fa){return _0x2175fa;});}return null;};}function removeEntity(_0x59cd8e,_0x529dd9){return function(_0x4b57ab){if(_0x4b57ab){return _0x4b57ab[_0x1126('0x26')]()[_0x1126('0x27')](function(){_0x59cd8e[_0x1126('0x1e')](0xcc)[_0x1126('0x28')]();});}};}function handleEntityNotFound(_0x566c09,_0x1b07a7){return function(_0xea0971){if(!_0xea0971){_0x566c09[_0x1126('0x1d')](0x194);}return _0xea0971;};}function handleError(_0x589725,_0x35eec3){_0x35eec3=_0x35eec3||0x1f4;return function(_0x375e59){logger[_0x1126('0x29')](_0x375e59['stack']);if(_0x375e59['name']){delete _0x375e59[_0x1126('0x2a')];}_0x589725[_0x1126('0x1e')](_0x35eec3)['send'](_0x375e59);};}exports[_0x1126('0x2b')]=function(_0x23d2bc,_0x4a334a){var _0x3fa694={},_0x4bf807={},_0xc62460={'count':0x0,'rows':[]};var _0x4bd50b=_[_0x1126('0x2c')](db['VoiceQueueReport'][_0x1126('0x2d')],function(_0x5f2611){return{'name':_0x5f2611['fieldName'],'type':_0x5f2611['type'][_0x1126('0x2e')]};});_0x4bf807[_0x1126('0x2f')]=_[_0x1126('0x2c')](_0x4bd50b,'name');_0x4bf807[_0x1126('0x30')]=_[_0x1126('0x31')](_0x23d2bc['query']);_0x4bf807[_0x1126('0x32')]=_[_0x1126('0x33')](_0x4bf807[_0x1126('0x2f')],_0x4bf807[_0x1126('0x30')]);_0x3fa694['attributes']=_['intersection'](_0x4bf807[_0x1126('0x2f')],qs[_0x1126('0x34')](_0x23d2bc[_0x1126('0x30')][_0x1126('0x34')]));_0x3fa694['attributes']=_0x3fa694[_0x1126('0x35')][_0x1126('0x36')]?_0x3fa694[_0x1126('0x35')]:_0x4bf807[_0x1126('0x2f')];if(!_0x23d2bc[_0x1126('0x30')]['hasOwnProperty'](_0x1126('0x37'))){_0x3fa694[_0x1126('0x38')]=qs[_0x1126('0x38')](_0x23d2bc[_0x1126('0x30')]['limit']);_0x3fa694['offset']=qs[_0x1126('0x20')](_0x23d2bc[_0x1126('0x30')]['offset']);}_0x3fa694[_0x1126('0x39')]=qs[_0x1126('0x3a')](_0x23d2bc[_0x1126('0x30')]['sort']);_0x3fa694['where']=qs[_0x1126('0x32')](_[_0x1126('0x3b')](_0x23d2bc[_0x1126('0x30')],_0x4bf807[_0x1126('0x32')]));if(_0x23d2bc['query'][_0x1126('0x3c')]){_0x3fa694['where']=_[_0x1126('0x3d')](_0x3fa694[_0x1126('0x3e')],{'$or':_[_0x1126('0x2c')](_0x4bd50b,function(_0x1ea702){if(_0x1ea702[_0x1126('0x3f')]!=='VIRTUAL'){var _0x1da59f={};_0x1da59f[_0x1ea702[_0x1126('0x2a')]]={'$like':'%'+_0x23d2bc[_0x1126('0x30')][_0x1126('0x3c')]+'%'};return _0x1da59f;}})});}_0x3fa694=_[_0x1126('0x3d')]({},_0x3fa694,_0x23d2bc[_0x1126('0x40')]);var _0x3052f9={'where':_0x3fa694['where']};return db[_0x1126('0x41')][_0x1126('0x42')](_0x3052f9)[_0x1126('0x27')](function(_0xf3a0bd){_0xc62460[_0x1126('0x42')]=_0xf3a0bd;if(_0x23d2bc['query']['includeAll']){_0x3fa694[_0x1126('0x43')]=[{'all':!![]}];}return db[_0x1126('0x41')][_0x1126('0x44')](_0x3fa694);})[_0x1126('0x27')](function(_0x18b496){_0xc62460[_0x1126('0x45')]=_0x18b496;return _0xc62460;})['then'](respondWithFilteredResult(_0x4a334a,_0x3fa694))['catch'](handleError(_0x4a334a,null));};exports['show']=function(_0xb8054e,_0x5d4194){var _0xf84005={'raw':![],'where':{'id':_0xb8054e[_0x1126('0x46')]['id']}},_0x462da8={};_0x462da8[_0x1126('0x2f')]=_['keys'](db['VoiceQueueReport'][_0x1126('0x2d')]);_0x462da8[_0x1126('0x30')]=_[_0x1126('0x31')](_0xb8054e['query']);_0x462da8[_0x1126('0x32')]=_['intersection'](_0x462da8[_0x1126('0x2f')],_0x462da8['query']);_0xf84005[_0x1126('0x35')]=_[_0x1126('0x33')](_0x462da8[_0x1126('0x2f')],qs['fields'](_0xb8054e[_0x1126('0x30')][_0x1126('0x34')]));_0xf84005[_0x1126('0x35')]=_0xf84005['attributes']['length']?_0xf84005['attributes']:_0x462da8[_0x1126('0x2f')];if(_0xb8054e['query'][_0x1126('0x47')]){_0xf84005['include']=[{'all':!![]}];}_0xf84005=_[_0x1126('0x3d')]({},_0xf84005,_0xb8054e[_0x1126('0x40')]);return db[_0x1126('0x41')][_0x1126('0x48')](_0xf84005)[_0x1126('0x27')](handleEntityNotFound(_0x5d4194,null))['then'](respondWithResult(_0x5d4194,null))[_0x1126('0x49')](handleError(_0x5d4194,null));};exports[_0x1126('0x4a')]=function(_0x5111d3,_0x1a15f8){return db[_0x1126('0x41')]['create'](_0x5111d3[_0x1126('0x4b')],{})[_0x1126('0x27')](respondWithResult(_0x1a15f8,0xc9))['catch'](handleError(_0x1a15f8,null));};exports[_0x1126('0x25')]=function(_0xbdde58,_0x213a76){if(_0xbdde58['body']['id']){delete _0xbdde58[_0x1126('0x4b')]['id'];}return db[_0x1126('0x41')][_0x1126('0x48')]({'where':{'id':_0xbdde58[_0x1126('0x46')]['id']}})[_0x1126('0x27')](handleEntityNotFound(_0x213a76,null))[_0x1126('0x27')](saveUpdates(_0xbdde58[_0x1126('0x4b')],null))[_0x1126('0x27')](respondWithResult(_0x213a76,null))['catch'](handleError(_0x213a76,null));};exports[_0x1126('0x26')]=function(_0x5a2287,_0x40168e){return db[_0x1126('0x41')]['find']({'where':{'id':_0x5a2287['params']['id']}})[_0x1126('0x27')](handleEntityNotFound(_0x40168e,null))[_0x1126('0x27')](removeEntity(_0x40168e,null))[_0x1126('0x49')](handleError(_0x40168e,null));};exports['describe']=function(_0x3cb44c,_0x3506d7){return db[_0x1126('0x41')][_0x1126('0x4c')]()['then'](respondWithResult(_0x3506d7,null))[_0x1126('0x49')](handleError(_0x3506d7,null));};exports[_0x1126('0x4d')]=function(_0x5c36b9,_0x4bcc08){var _0x4abb4d={},_0x526b07={},_0x386c10={'count':0x0,'rows':[]};_0x526b07[_0x1126('0x2f')]=_['keys'](db[_0x1126('0x41')][_0x1126('0x2d')]);_0x526b07[_0x1126('0x30')]=_[_0x1126('0x31')](_0x5c36b9[_0x1126('0x30')]);_0x526b07['filters']=_[_0x1126('0x33')](_0x526b07[_0x1126('0x2f')],_0x526b07['query']);_0x4abb4d[_0x1126('0x35')]=_[_0x1126('0x33')](_0x526b07[_0x1126('0x2f')],qs[_0x1126('0x34')](_0x5c36b9[_0x1126('0x30')]['fields']));_0x4abb4d[_0x1126('0x35')]=_0x4abb4d['attributes'][_0x1126('0x36')]?_0x4abb4d[_0x1126('0x35')]:_0x526b07[_0x1126('0x2f')];if(!_0x5c36b9['query'][_0x1126('0x4e')](_0x1126('0x37'))){_0x4abb4d['limit']=qs[_0x1126('0x38')](_0x5c36b9[_0x1126('0x30')][_0x1126('0x38')]);_0x4abb4d['offset']=qs[_0x1126('0x20')](_0x5c36b9[_0x1126('0x30')][_0x1126('0x20')]);}_0x4abb4d[_0x1126('0x39')]=qs[_0x1126('0x3a')](_0x5c36b9[_0x1126('0x30')][_0x1126('0x3a')]);_0x4abb4d[_0x1126('0x3e')]=qs['filters'](_[_0x1126('0x3b')](_0x5c36b9[_0x1126('0x30')],_0x526b07[_0x1126('0x32')]));if(_0x5c36b9[_0x1126('0x30')][_0x1126('0x3c')]){_0x4abb4d['where']=_[_0x1126('0x3d')](_0x4abb4d[_0x1126('0x3e')],{'$or':_['map'](_0x4abb4d[_0x1126('0x35')],function(_0x5246aa){var _0x272274={};_0x272274[_0x5246aa]={'$like':'%'+_0x5c36b9[_0x1126('0x30')]['filter']+'%'};return _0x272274;})});}_0x4abb4d=_[_0x1126('0x3d')]({},_0x4abb4d,_0x5c36b9[_0x1126('0x40')]);var _0x375b76={'where':_0x4abb4d['where']};return db[_0x1126('0x41')]['count'](_0x375b76)['then'](function(_0xbdc58){_0x386c10[_0x1126('0x42')]=_0xbdc58;if(_0x5c36b9[_0x1126('0x30')][_0x1126('0x47')]){_0x4abb4d[_0x1126('0x43')]=[{'all':!![]}];}return db[_0x1126('0x41')][_0x1126('0x44')](_0x4abb4d);})['then'](function(_0x191307){_0x386c10[_0x1126('0x45')]=_0x191307;return _0x386c10;})[_0x1126('0x27')](respondWithFilteredResult(_0x4bcc08,_0x4abb4d,_0x1126('0x4d')))[_0x1126('0x49')](handleError(_0x4bcc08,null,_0x1126('0x4d')));};