Built motion from commit (unavailable).|2.2.6
[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 _0x525e=['model','keys','filters','intersection','query','fields','attributes','length','hasOwnProperty','nolimit','order','sort','pick','filter','where','map','type','key','VIRTUAL','field','merge','options','includeAll','findAll','rows','catch','show','params','rawAttributes','include','find','create','body','describe','getVoiceQueuesReport','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','path','sox','lodash','crypto','jsforce','desk.js','to-csv','querystring','papaparse','ioredis','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','defaults','redis','localhost','socket.io-emitter','./voiceQueueReport.socket','register','sendStatus','end','status','json','count','offset','limit','set','Content-Range','reject','save','update','destroy','then','error','stack','name','send','index','VoiceQueueReport'];(function(_0x53c256,_0x382a24){var _0x25feb6=function(_0x2652fd){while(--_0x2652fd){_0x53c256['push'](_0x53c256['shift']());}};_0x25feb6(++_0x382a24);}(_0x525e,0x78));var _0xe525=function(_0x5c7713,_0x1c277b){_0x5c7713=_0x5c7713-0x0;var _0x6b9c1=_0x525e[_0x5c7713];return _0x6b9c1;};'use strict';var pdf=require(_0xe525('0x0'));var emlformat=require(_0xe525('0x1'));var rimraf=require(_0xe525('0x2'));var zipdir=require(_0xe525('0x3'));var jsonpatch=require(_0xe525('0x4'));var rp=require(_0xe525('0x5'));var moment=require(_0xe525('0x6'));var BPromise=require(_0xe525('0x7'));var Mustache=require('mustache');var util=require(_0xe525('0x8'));var path=require(_0xe525('0x9'));var sox=require(_0xe525('0xa'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var _=require(_0xe525('0xb'));var squel=require('squel');var crypto=require(_0xe525('0xc'));var jsforce=require(_0xe525('0xd'));var deskjs=require(_0xe525('0xe'));var toCsv=require(_0xe525('0xf'));var querystring=require(_0xe525('0x10'));var Papa=require(_0xe525('0x11'));var Redis=require(_0xe525('0x12'));var qs=require('../../components/parsers/qs');var logger=require(_0xe525('0x13'))(_0xe525('0x14'));var utils=require(_0xe525('0x15'));var config=require(_0xe525('0x16'));var db=require(_0xe525('0x17'))['db'];config['redis']=_[_0xe525('0x18')](config[_0xe525('0x19')],{'host':_0xe525('0x1a'),'port':0x18eb});var socket=require(_0xe525('0x1b'))(new Redis(config[_0xe525('0x19')]));require(_0xe525('0x1c'))[_0xe525('0x1d')](socket);function respondWithStatusCode(_0x222d90,_0xa275c4){_0xa275c4=_0xa275c4||0xcc;return function(_0x24e3cd){if(_0x24e3cd){return _0x222d90[_0xe525('0x1e')](_0xa275c4);}return _0x222d90['status'](_0xa275c4)[_0xe525('0x1f')]();};}function respondWithResult(_0x31e108,_0x1d7f16){_0x1d7f16=_0x1d7f16||0xc8;return function(_0x4ef025){if(_0x4ef025){return _0x31e108[_0xe525('0x20')](_0x1d7f16)[_0xe525('0x21')](_0x4ef025);}};}function respondWithFilteredResult(_0x23d220,_0x107f40){return function(_0xd150db){if(_0xd150db){var _0x4d9d7c=_0xd150db[_0xe525('0x22')],_0x5558d9=_0x107f40[_0xe525('0x23')],_0x228880=_0x107f40[_0xe525('0x23')]+_0x107f40[_0xe525('0x24')],_0x5035e0;if(_0x228880>=_0x4d9d7c){_0x228880=_0x4d9d7c;_0x5035e0=0xc8;}else{_0x5035e0=0xce;}_0x23d220[_0xe525('0x20')](_0x5035e0);return _0x23d220[_0xe525('0x25')](_0xe525('0x26'),_0x5558d9+'-'+_0x228880+'/'+_0x4d9d7c)['json'](_0xd150db);}return null;};}function patchUpdates(_0x5574e2){return function(_0x5b3a0b){try{jsonpatch['apply'](_0x5b3a0b,_0x5574e2,!![]);}catch(_0x1e6e22){return BPromise[_0xe525('0x27')](_0x1e6e22);}return _0x5b3a0b[_0xe525('0x28')]();};}function saveUpdates(_0x1f8bec,_0xdc1397){return function(_0x47a667){if(_0x47a667){return _0x47a667[_0xe525('0x29')](_0x1f8bec)['then'](function(_0x228e7d){return _0x228e7d;});}return null;};}function removeEntity(_0x1f0dd7,_0x510a46){return function(_0x350180){if(_0x350180){return _0x350180[_0xe525('0x2a')]()[_0xe525('0x2b')](function(){_0x1f0dd7['status'](0xcc)[_0xe525('0x1f')]();});}};}function handleEntityNotFound(_0x12ba35,_0x298209){return function(_0x121980){if(!_0x121980){_0x12ba35[_0xe525('0x1e')](0x194);}return _0x121980;};}function handleError(_0x4d5226,_0x39efc1){_0x39efc1=_0x39efc1||0x1f4;return function(_0x7629aa){logger[_0xe525('0x2c')](_0x7629aa[_0xe525('0x2d')]);if(_0x7629aa[_0xe525('0x2e')]){delete _0x7629aa['name'];}_0x4d5226[_0xe525('0x20')](_0x39efc1)[_0xe525('0x2f')](_0x7629aa);};}exports[_0xe525('0x30')]=function(_0x43a4da,_0x537728){var _0x1112a8={},_0x2d2623={},_0xc75d0f={'count':0x0,'rows':[]};var _0x4bccb3=db[_0xe525('0x31')]['rawAttributes'];_0x2d2623[_0xe525('0x32')]=_[_0xe525('0x33')](_0x4bccb3);_0x2d2623['query']=_[_0xe525('0x33')](_0x43a4da['query']);_0x2d2623[_0xe525('0x34')]=_[_0xe525('0x35')](_0x2d2623['model'],_0x2d2623[_0xe525('0x36')]);_0x1112a8['attributes']=_[_0xe525('0x35')](_0x2d2623[_0xe525('0x32')],qs[_0xe525('0x37')](_0x43a4da[_0xe525('0x36')][_0xe525('0x37')]));_0x1112a8[_0xe525('0x38')]=_0x1112a8[_0xe525('0x38')][_0xe525('0x39')]?_0x1112a8[_0xe525('0x38')]:_0x2d2623[_0xe525('0x32')];if(!_0x43a4da[_0xe525('0x36')][_0xe525('0x3a')](_0xe525('0x3b'))){_0x1112a8[_0xe525('0x24')]=qs[_0xe525('0x24')](_0x43a4da[_0xe525('0x36')]['limit']);_0x1112a8[_0xe525('0x23')]=qs[_0xe525('0x23')](_0x43a4da[_0xe525('0x36')]['offset']);}_0x1112a8[_0xe525('0x3c')]=qs['sort'](_0x43a4da['query'][_0xe525('0x3d')]);_0x1112a8['where']=qs['filters'](_[_0xe525('0x3e')](_0x43a4da[_0xe525('0x36')],_0x2d2623[_0xe525('0x34')]));if(_0x43a4da['query'][_0xe525('0x3f')]){_0x1112a8['where']=_['merge'](_0x1112a8[_0xe525('0x40')],{'$or':_[_0xe525('0x41')](_0x4bccb3,function(_0x3ae6dc){if(_0x3ae6dc[_0xe525('0x42')][_0xe525('0x43')]!==_0xe525('0x44')){var _0x111764={};_0x111764[_0x3ae6dc[_0xe525('0x45')]]={'$like':'%'+_0x43a4da[_0xe525('0x36')][_0xe525('0x3f')]+'%'};return _0x111764;}})});}_0x1112a8=_[_0xe525('0x46')]({},_0x1112a8,_0x43a4da[_0xe525('0x47')]);var _0x5e574e={'where':_0x1112a8[_0xe525('0x40')]};return db[_0xe525('0x31')][_0xe525('0x22')](_0x5e574e)['then'](function(_0x2edb12){_0xc75d0f[_0xe525('0x22')]=_0x2edb12;if(_0x43a4da['query'][_0xe525('0x48')]){_0x1112a8['include']=[{'all':!![]}];}return db[_0xe525('0x31')][_0xe525('0x49')](_0x1112a8);})[_0xe525('0x2b')](function(_0x112512){_0xc75d0f[_0xe525('0x4a')]=_0x112512;return _0xc75d0f;})[_0xe525('0x2b')](respondWithFilteredResult(_0x537728,_0x1112a8))[_0xe525('0x4b')](handleError(_0x537728,null));};exports[_0xe525('0x4c')]=function(_0x4b75de,_0x59ba25){var _0x4279bc={'raw':![],'where':{'id':_0x4b75de[_0xe525('0x4d')]['id']}},_0x4bbf97={};_0x4bbf97['model']=_[_0xe525('0x33')](db['VoiceQueueReport'][_0xe525('0x4e')]);_0x4bbf97[_0xe525('0x36')]=_['keys'](_0x4b75de['query']);_0x4bbf97[_0xe525('0x34')]=_[_0xe525('0x35')](_0x4bbf97['model'],_0x4bbf97[_0xe525('0x36')]);_0x4279bc[_0xe525('0x38')]=_[_0xe525('0x35')](_0x4bbf97[_0xe525('0x32')],qs['fields'](_0x4b75de[_0xe525('0x36')][_0xe525('0x37')]));_0x4279bc[_0xe525('0x38')]=_0x4279bc[_0xe525('0x38')][_0xe525('0x39')]?_0x4279bc['attributes']:_0x4bbf97[_0xe525('0x32')];if(_0x4b75de[_0xe525('0x36')][_0xe525('0x48')]){_0x4279bc[_0xe525('0x4f')]=[{'all':!![]}];}_0x4279bc=_[_0xe525('0x46')]({},_0x4279bc,_0x4b75de['options']);return db['VoiceQueueReport'][_0xe525('0x50')](_0x4279bc)[_0xe525('0x2b')](handleEntityNotFound(_0x59ba25,null))['then'](respondWithResult(_0x59ba25,null))[_0xe525('0x4b')](handleError(_0x59ba25,null));};exports[_0xe525('0x51')]=function(_0x7cdb1a,_0x12fb48){return db[_0xe525('0x31')][_0xe525('0x51')](_0x7cdb1a['body'],{})[_0xe525('0x2b')](respondWithResult(_0x12fb48,0xc9))[_0xe525('0x4b')](handleError(_0x12fb48,null));};exports[_0xe525('0x29')]=function(_0x162cee,_0x2211dd){if(_0x162cee[_0xe525('0x52')]['id']){delete _0x162cee[_0xe525('0x52')]['id'];}return db[_0xe525('0x31')][_0xe525('0x50')]({'where':{'id':_0x162cee[_0xe525('0x4d')]['id']}})[_0xe525('0x2b')](handleEntityNotFound(_0x2211dd,null))[_0xe525('0x2b')](saveUpdates(_0x162cee['body'],null))[_0xe525('0x2b')](respondWithResult(_0x2211dd,null))['catch'](handleError(_0x2211dd,null));};exports[_0xe525('0x2a')]=function(_0x1eb4aa,_0x52ec40){return db[_0xe525('0x31')][_0xe525('0x50')]({'where':{'id':_0x1eb4aa[_0xe525('0x4d')]['id']}})[_0xe525('0x2b')](handleEntityNotFound(_0x52ec40,null))[_0xe525('0x2b')](removeEntity(_0x52ec40,null))[_0xe525('0x4b')](handleError(_0x52ec40,null));};exports[_0xe525('0x53')]=function(_0x1d6ed5,_0x26edda){return db[_0xe525('0x31')][_0xe525('0x53')]()[_0xe525('0x2b')](respondWithResult(_0x26edda,null))[_0xe525('0x4b')](handleError(_0x26edda,null));};exports[_0xe525('0x54')]=function(_0x367626,_0x450c0d){var _0xda178c={},_0x11c85a={},_0x414931={'count':0x0,'rows':[]};_0x11c85a['model']=_[_0xe525('0x33')](db[_0xe525('0x31')][_0xe525('0x4e')]);_0x11c85a[_0xe525('0x36')]=_[_0xe525('0x33')](_0x367626[_0xe525('0x36')]);_0x11c85a[_0xe525('0x34')]=_[_0xe525('0x35')](_0x11c85a['model'],_0x11c85a[_0xe525('0x36')]);_0xda178c[_0xe525('0x38')]=_['intersection'](_0x11c85a['model'],qs['fields'](_0x367626[_0xe525('0x36')][_0xe525('0x37')]));_0xda178c[_0xe525('0x38')]=_0xda178c['attributes'][_0xe525('0x39')]?_0xda178c[_0xe525('0x38')]:_0x11c85a[_0xe525('0x32')];if(!_0x367626['query'][_0xe525('0x3a')]('nolimit')){_0xda178c[_0xe525('0x24')]=qs[_0xe525('0x24')](_0x367626[_0xe525('0x36')][_0xe525('0x24')]);_0xda178c[_0xe525('0x23')]=qs[_0xe525('0x23')](_0x367626['query'][_0xe525('0x23')]);}_0xda178c['order']=qs['sort'](_0x367626['query'][_0xe525('0x3d')]);_0xda178c[_0xe525('0x40')]=qs['filters'](_[_0xe525('0x3e')](_0x367626[_0xe525('0x36')],_0x11c85a[_0xe525('0x34')]));if(_0x367626[_0xe525('0x36')]['filter']){_0xda178c['where']=_[_0xe525('0x46')](_0xda178c[_0xe525('0x40')],{'$or':_[_0xe525('0x41')](_0xda178c[_0xe525('0x38')],function(_0x198295){var _0x3658d4={};_0x3658d4[_0x198295]={'$like':'%'+_0x367626['query'][_0xe525('0x3f')]+'%'};return _0x3658d4;})});}_0xda178c=_[_0xe525('0x46')]({},_0xda178c,_0x367626[_0xe525('0x47')]);var _0x11b167={'where':_0xda178c[_0xe525('0x40')]};return db[_0xe525('0x31')][_0xe525('0x22')](_0x11b167)['then'](function(_0x3a04a0){_0x414931[_0xe525('0x22')]=_0x3a04a0;if(_0x367626['query']['includeAll']){_0xda178c['include']=[{'all':!![]}];}return db[_0xe525('0x31')][_0xe525('0x49')](_0xda178c);})['then'](function(_0x5a8fbc){_0x414931[_0xe525('0x4a')]=_0x5a8fbc;return _0x414931;})['then'](respondWithFilteredResult(_0x450c0d,_0xda178c,'getVoiceQueuesReport'))[_0xe525('0x4b')](handleError(_0x450c0d,null,'getVoiceQueuesReport'));};