Built motion from commit (unavailable).|2.5.31
[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 _0x0ac2=['options','rows','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','fs-extra','squel','crypto','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','localhost','socket.io-emitter','redis','./voiceQueueReport.socket','register','sendStatus','status','end','offset','undefined','limit','count','set','Content-Range','json','apply','reject','save','update','then','destroy','name','send','index','map','rawAttributes','fieldName','key','model','keys','query','filters','intersection','fields','attributes','length','nolimit','sort','where','filter','merge','type','VoiceQueueReport','findAll','catch','show','params','includeAll','include','find','create','body','describe','getVoiceQueuesReport','hasOwnProperty','order','pick'];(function(_0x156fae,_0x1ceac2){var _0x5148b7=function(_0x3ba822){while(--_0x3ba822){_0x156fae['push'](_0x156fae['shift']());}};_0x5148b7(++_0x1ceac2);}(_0x0ac2,0xac));var _0x20ac=function(_0xa464c9,_0x7c86d8){_0xa464c9=_0xa464c9-0x0;var _0x3d73c4=_0x0ac2[_0xa464c9];return _0x3d73c4;};'use strict';var emlformat=require(_0x20ac('0x0'));var rimraf=require(_0x20ac('0x1'));var zipdir=require(_0x20ac('0x2'));var jsonpatch=require(_0x20ac('0x3'));var rp=require(_0x20ac('0x4'));var moment=require(_0x20ac('0x5'));var BPromise=require(_0x20ac('0x6'));var Mustache=require(_0x20ac('0x7'));var util=require(_0x20ac('0x8'));var path=require(_0x20ac('0x9'));var sox=require(_0x20ac('0xa'));var csv=require(_0x20ac('0xb'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x20ac('0xc'));var _=require('lodash');var squel=require(_0x20ac('0xd'));var crypto=require(_0x20ac('0xe'));var jsforce=require('jsforce');var deskjs=require(_0x20ac('0xf'));var toCsv=require(_0x20ac('0xb'));var querystring=require('querystring');var Papa=require(_0x20ac('0x10'));var Redis=require(_0x20ac('0x11'));var authService=require(_0x20ac('0x12'));var qs=require('../../components/parsers/qs');var as=require(_0x20ac('0x13'));var hardwareService=require(_0x20ac('0x14'));var logger=require('../../config/logger')(_0x20ac('0x15'));var utils=require(_0x20ac('0x16'));var config=require(_0x20ac('0x17'));var licenseUtil=require(_0x20ac('0x18'));var db=require(_0x20ac('0x19'))['db'];config['redis']=_['defaults'](config['redis'],{'host':_0x20ac('0x1a'),'port':0x18eb});var socket=require(_0x20ac('0x1b'))(new Redis(config[_0x20ac('0x1c')]));require(_0x20ac('0x1d'))[_0x20ac('0x1e')](socket);function respondWithStatusCode(_0x4959be,_0x5364f2){_0x5364f2=_0x5364f2||0xcc;return function(_0x4f3681){if(_0x4f3681){return _0x4959be[_0x20ac('0x1f')](_0x5364f2);}return _0x4959be[_0x20ac('0x20')](_0x5364f2)[_0x20ac('0x21')]();};}function respondWithResult(_0xa98494,_0x872ac9){_0x872ac9=_0x872ac9||0xc8;return function(_0x29eae5){if(_0x29eae5){return _0xa98494[_0x20ac('0x20')](_0x872ac9)['json'](_0x29eae5);}};}function respondWithFilteredResult(_0x18bc81,_0x5dc925){return function(_0x1db8e7){if(_0x1db8e7){var _0x370283=typeof _0x5dc925[_0x20ac('0x22')]===_0x20ac('0x23')&&typeof _0x5dc925[_0x20ac('0x24')]===_0x20ac('0x23');var _0x20b89b=_0x1db8e7[_0x20ac('0x25')];var _0x2ed71a=_0x370283?0x0:_0x5dc925[_0x20ac('0x22')];var _0x235e7d=_0x370283?_0x1db8e7[_0x20ac('0x25')]:_0x5dc925[_0x20ac('0x22')]+_0x5dc925[_0x20ac('0x24')];var _0x3b14c8;if(_0x235e7d>=_0x20b89b){_0x235e7d=_0x20b89b;_0x3b14c8=0xc8;}else{_0x3b14c8=0xce;}_0x18bc81[_0x20ac('0x20')](_0x3b14c8);return _0x18bc81[_0x20ac('0x26')](_0x20ac('0x27'),_0x2ed71a+'-'+_0x235e7d+'/'+_0x20b89b)[_0x20ac('0x28')](_0x1db8e7);}return null;};}function patchUpdates(_0xf819){return function(_0x450f4b){try{jsonpatch[_0x20ac('0x29')](_0x450f4b,_0xf819,!![]);}catch(_0xc4b685){return BPromise[_0x20ac('0x2a')](_0xc4b685);}return _0x450f4b[_0x20ac('0x2b')]();};}function saveUpdates(_0x26cf96,_0x23c0e6){return function(_0x4b2cce){if(_0x4b2cce){return _0x4b2cce[_0x20ac('0x2c')](_0x26cf96)[_0x20ac('0x2d')](function(_0x31d0b9){return _0x31d0b9;});}return null;};}function removeEntity(_0x55f2ba,_0x45afe0){return function(_0xb3ca93){if(_0xb3ca93){return _0xb3ca93[_0x20ac('0x2e')]()[_0x20ac('0x2d')](function(){_0x55f2ba[_0x20ac('0x20')](0xcc)['end']();});}};}function handleEntityNotFound(_0x27b018,_0x5ad2a3){return function(_0x1bb231){if(!_0x1bb231){_0x27b018['sendStatus'](0x194);}return _0x1bb231;};}function handleError(_0x4f5e00,_0x1e2f84){_0x1e2f84=_0x1e2f84||0x1f4;return function(_0x4666b7){logger['error'](_0x4666b7['stack']);if(_0x4666b7['name']){delete _0x4666b7[_0x20ac('0x2f')];}_0x4f5e00['status'](_0x1e2f84)[_0x20ac('0x30')](_0x4666b7);};}exports[_0x20ac('0x31')]=function(_0xeae52,_0xad9a1c){var _0xc26ad2={},_0x35abd7={},_0x282fef={'count':0x0,'rows':[]};var _0x28cba6=_[_0x20ac('0x32')](db['VoiceQueueReport'][_0x20ac('0x33')],function(_0xb6cfa){return{'name':_0xb6cfa[_0x20ac('0x34')],'type':_0xb6cfa['type'][_0x20ac('0x35')]};});_0x35abd7[_0x20ac('0x36')]=_[_0x20ac('0x32')](_0x28cba6,_0x20ac('0x2f'));_0x35abd7['query']=_[_0x20ac('0x37')](_0xeae52[_0x20ac('0x38')]);_0x35abd7[_0x20ac('0x39')]=_[_0x20ac('0x3a')](_0x35abd7['model'],_0x35abd7[_0x20ac('0x38')]);_0xc26ad2['attributes']=_[_0x20ac('0x3a')](_0x35abd7[_0x20ac('0x36')],qs[_0x20ac('0x3b')](_0xeae52[_0x20ac('0x38')][_0x20ac('0x3b')]));_0xc26ad2[_0x20ac('0x3c')]=_0xc26ad2['attributes'][_0x20ac('0x3d')]?_0xc26ad2[_0x20ac('0x3c')]:_0x35abd7[_0x20ac('0x36')];if(!_0xeae52['query']['hasOwnProperty'](_0x20ac('0x3e'))){_0xc26ad2[_0x20ac('0x24')]=qs[_0x20ac('0x24')](_0xeae52[_0x20ac('0x38')][_0x20ac('0x24')]);_0xc26ad2[_0x20ac('0x22')]=qs[_0x20ac('0x22')](_0xeae52[_0x20ac('0x38')][_0x20ac('0x22')]);}_0xc26ad2['order']=qs[_0x20ac('0x3f')](_0xeae52['query'][_0x20ac('0x3f')]);_0xc26ad2[_0x20ac('0x40')]=qs[_0x20ac('0x39')](_['pick'](_0xeae52[_0x20ac('0x38')],_0x35abd7[_0x20ac('0x39')]),_0x28cba6);if(_0xeae52[_0x20ac('0x38')][_0x20ac('0x41')]){_0xc26ad2[_0x20ac('0x40')]=_[_0x20ac('0x42')](_0xc26ad2['where'],{'$or':_[_0x20ac('0x32')](_0x28cba6,function(_0xfe37ae){if(_0xfe37ae[_0x20ac('0x43')]!=='VIRTUAL'){var _0x1c7a19={};_0x1c7a19[_0xfe37ae[_0x20ac('0x2f')]]={'$like':'%'+_0xeae52[_0x20ac('0x38')][_0x20ac('0x41')]+'%'};return _0x1c7a19;}})});}_0xc26ad2=_[_0x20ac('0x42')]({},_0xc26ad2,_0xeae52['options']);var _0x43cc37={'where':_0xc26ad2[_0x20ac('0x40')]};return db[_0x20ac('0x44')][_0x20ac('0x25')](_0x43cc37)['then'](function(_0x5ccebe){_0x282fef['count']=_0x5ccebe;if(_0xeae52[_0x20ac('0x38')]['includeAll']){_0xc26ad2['include']=[{'all':!![]}];}return db[_0x20ac('0x44')][_0x20ac('0x45')](_0xc26ad2);})['then'](function(_0x3feb1f){_0x282fef['rows']=_0x3feb1f;return _0x282fef;})[_0x20ac('0x2d')](respondWithFilteredResult(_0xad9a1c,_0xc26ad2))[_0x20ac('0x46')](handleError(_0xad9a1c,null));};exports[_0x20ac('0x47')]=function(_0x5ba77c,_0x362029){var _0xe2190d={'raw':![],'where':{'id':_0x5ba77c[_0x20ac('0x48')]['id']}},_0x49b49f={};_0x49b49f['model']=_[_0x20ac('0x37')](db[_0x20ac('0x44')][_0x20ac('0x33')]);_0x49b49f[_0x20ac('0x38')]=_[_0x20ac('0x37')](_0x5ba77c[_0x20ac('0x38')]);_0x49b49f[_0x20ac('0x39')]=_[_0x20ac('0x3a')](_0x49b49f[_0x20ac('0x36')],_0x49b49f['query']);_0xe2190d[_0x20ac('0x3c')]=_[_0x20ac('0x3a')](_0x49b49f[_0x20ac('0x36')],qs[_0x20ac('0x3b')](_0x5ba77c[_0x20ac('0x38')][_0x20ac('0x3b')]));_0xe2190d[_0x20ac('0x3c')]=_0xe2190d[_0x20ac('0x3c')][_0x20ac('0x3d')]?_0xe2190d[_0x20ac('0x3c')]:_0x49b49f[_0x20ac('0x36')];if(_0x5ba77c[_0x20ac('0x38')][_0x20ac('0x49')]){_0xe2190d[_0x20ac('0x4a')]=[{'all':!![]}];}_0xe2190d=_[_0x20ac('0x42')]({},_0xe2190d,_0x5ba77c['options']);return db[_0x20ac('0x44')][_0x20ac('0x4b')](_0xe2190d)[_0x20ac('0x2d')](handleEntityNotFound(_0x362029,null))[_0x20ac('0x2d')](respondWithResult(_0x362029,null))[_0x20ac('0x46')](handleError(_0x362029,null));};exports[_0x20ac('0x4c')]=function(_0x358042,_0x39764e){return db[_0x20ac('0x44')][_0x20ac('0x4c')](_0x358042[_0x20ac('0x4d')],{})[_0x20ac('0x2d')](respondWithResult(_0x39764e,0xc9))[_0x20ac('0x46')](handleError(_0x39764e,null));};exports[_0x20ac('0x2c')]=function(_0x23adc8,_0x12ce8b){if(_0x23adc8[_0x20ac('0x4d')]['id']){delete _0x23adc8[_0x20ac('0x4d')]['id'];}return db[_0x20ac('0x44')][_0x20ac('0x4b')]({'where':{'id':_0x23adc8[_0x20ac('0x48')]['id']}})[_0x20ac('0x2d')](handleEntityNotFound(_0x12ce8b,null))[_0x20ac('0x2d')](saveUpdates(_0x23adc8[_0x20ac('0x4d')],null))[_0x20ac('0x2d')](respondWithResult(_0x12ce8b,null))[_0x20ac('0x46')](handleError(_0x12ce8b,null));};exports['destroy']=function(_0x416977,_0x42b441){return db[_0x20ac('0x44')]['find']({'where':{'id':_0x416977[_0x20ac('0x48')]['id']}})[_0x20ac('0x2d')](handleEntityNotFound(_0x42b441,null))['then'](removeEntity(_0x42b441,null))['catch'](handleError(_0x42b441,null));};exports[_0x20ac('0x4e')]=function(_0x5995a0,_0x1e3796){return db['VoiceQueueReport'][_0x20ac('0x4e')]()[_0x20ac('0x2d')](respondWithResult(_0x1e3796,null))[_0x20ac('0x46')](handleError(_0x1e3796,null));};exports[_0x20ac('0x4f')]=function(_0x245c8a,_0x563b74){var _0x2089ff={},_0x4b18b8={},_0x43de64={'count':0x0,'rows':[]};_0x4b18b8[_0x20ac('0x36')]=_['keys'](db[_0x20ac('0x44')][_0x20ac('0x33')]);_0x4b18b8[_0x20ac('0x38')]=_[_0x20ac('0x37')](_0x245c8a[_0x20ac('0x38')]);_0x4b18b8[_0x20ac('0x39')]=_[_0x20ac('0x3a')](_0x4b18b8['model'],_0x4b18b8[_0x20ac('0x38')]);_0x2089ff[_0x20ac('0x3c')]=_['intersection'](_0x4b18b8[_0x20ac('0x36')],qs[_0x20ac('0x3b')](_0x245c8a[_0x20ac('0x38')][_0x20ac('0x3b')]));_0x2089ff[_0x20ac('0x3c')]=_0x2089ff['attributes'][_0x20ac('0x3d')]?_0x2089ff[_0x20ac('0x3c')]:_0x4b18b8[_0x20ac('0x36')];if(!_0x245c8a[_0x20ac('0x38')][_0x20ac('0x50')](_0x20ac('0x3e'))){_0x2089ff['limit']=qs[_0x20ac('0x24')](_0x245c8a[_0x20ac('0x38')][_0x20ac('0x24')]);_0x2089ff['offset']=qs[_0x20ac('0x22')](_0x245c8a['query']['offset']);}_0x2089ff[_0x20ac('0x51')]=qs[_0x20ac('0x3f')](_0x245c8a[_0x20ac('0x38')]['sort']);_0x2089ff[_0x20ac('0x40')]=qs[_0x20ac('0x39')](_[_0x20ac('0x52')](_0x245c8a[_0x20ac('0x38')],_0x4b18b8[_0x20ac('0x39')]));if(_0x245c8a[_0x20ac('0x38')][_0x20ac('0x41')]){_0x2089ff[_0x20ac('0x40')]=_['merge'](_0x2089ff['where'],{'$or':_[_0x20ac('0x32')](_0x2089ff[_0x20ac('0x3c')],function(_0x5493bd){var _0x55a281={};_0x55a281[_0x5493bd]={'$like':'%'+_0x245c8a[_0x20ac('0x38')]['filter']+'%'};return _0x55a281;})});}_0x2089ff=_[_0x20ac('0x42')]({},_0x2089ff,_0x245c8a[_0x20ac('0x53')]);var _0x3c1093={'where':_0x2089ff['where']};return db[_0x20ac('0x44')]['count'](_0x3c1093)[_0x20ac('0x2d')](function(_0x14b993){_0x43de64[_0x20ac('0x25')]=_0x14b993;if(_0x245c8a['query'][_0x20ac('0x49')]){_0x2089ff[_0x20ac('0x4a')]=[{'all':!![]}];}return db[_0x20ac('0x44')]['findAll'](_0x2089ff);})['then'](function(_0x8560f5){_0x43de64[_0x20ac('0x54')]=_0x8560f5;return _0x43de64;})['then'](respondWithFilteredResult(_0x563b74,_0x2089ff,_0x20ac('0x4f')))[_0x20ac('0x46')](handleError(_0x563b74,null,_0x20ac('0x4f')));};