Built motion from commit (unavailable).|2.5.8
[motion2.git] / server / api / analyticDefaultReport / analyticDefaultReport.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 _0xe2e2=['field','condition','value','getFields','Sequelize','Please\x20insert\x20at\x20least\x20one\x20field','AnalyticMetric','keyBy','from','table','MetricId','metric','function','replace','format','groupBy','orderBy','alias','joins','parse','parentKey','foreignKey','foreignTable','conditions','clone','debug','toString','sequelize','right_join','COUNT(%s)','MAX(%s)','includes','select','order','DESC','%s.%s\x20=\x20%s.%s','Limited\x20Query:','ValidationErrorItem','No\x20available\x20data','output','web','fullPath','randomstring','csv','.calldate\x20BETWEEN\x20?\x20AND\x20?','startDate','endDate','.createdAt\x20BETWEEN\x20?\x20AND\x20?','info','child_process','fork','../../components/export/','../../files/reports','countTable','COUNT(*)','QueryTypes','SELECT','run','runReport','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','../../mysqldb','status','end','count','offset','Content-Range','json','apply','reject','update','then','destroy','get','DefaultReports','UserProfileResource','sendStatus','stack','name','send','index','AnalyticDefaultReport','rawAttributes','fieldName','type','key','map','query','attributes','intersection','model','fields','length','hasOwnProperty','limit','sort','filters','pick','where','merge','filter','include','findAll','rows','catch','show','keys','includeAll','options','find','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','Reports','UserProfileSection','userProfileId','autoAssociation','error','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','params','preview','join','left_join','cross_join','SUM(%s)','COUNT(DISTINCT\x20%s)','MIN(%s)','AVG(%s)','GROUP_CONCAT(%s)','GROUP_CONCAT(%s\x20ORDER\x20BY\x20%s\x20ASC)','GROUP_CONCAT(%s\x20ORDER\x20BY\x20%s\x20DESC)','SEC_TO_TIME(%s)','DATE(%s)','HOUR(%s)','ROUND(%s)','UNIX_TIMESTAMP(%s)','IS\x20NULL','IS\x20NOT\x20NULL','IS\x20EMPTY','IS\x20NOT\x20EMPTY','rules','operator','group'];(function(_0xf382e5,_0x4c8690){var _0x3272b6=function(_0x42a6d2){while(--_0x42a6d2){_0xf382e5['push'](_0xf382e5['shift']());}};_0x3272b6(++_0x4c8690);}(_0xe2e2,0xe4));var _0x2e2e=function(_0x394a9b,_0x493274){_0x394a9b=_0x394a9b-0x0;var _0x443c07=_0xe2e2[_0x394a9b];return _0x443c07;};'use strict';var pdf=require(_0x2e2e('0x0'));var emlformat=require(_0x2e2e('0x1'));var rimraf=require(_0x2e2e('0x2'));var zipdir=require(_0x2e2e('0x3'));var jsonpatch=require(_0x2e2e('0x4'));var rp=require(_0x2e2e('0x5'));var moment=require(_0x2e2e('0x6'));var BPromise=require(_0x2e2e('0x7'));var Mustache=require('mustache');var util=require(_0x2e2e('0x8'));var path=require(_0x2e2e('0x9'));var sox=require(_0x2e2e('0xa'));var csv=require(_0x2e2e('0xb'));var ejs=require(_0x2e2e('0xc'));var fs=require('fs');var _=require(_0x2e2e('0xd'));var squel=require(_0x2e2e('0xe'));var crypto=require(_0x2e2e('0xf'));var jsforce=require(_0x2e2e('0x10'));var deskjs=require(_0x2e2e('0x11'));var toCsv=require(_0x2e2e('0xb'));var querystring=require('querystring');var Papa=require(_0x2e2e('0x12'));var Redis=require(_0x2e2e('0x13'));var authService=require('../../components/auth/service');var qs=require(_0x2e2e('0x14'));var as=require(_0x2e2e('0x15'));var hardwareService=require(_0x2e2e('0x16'));var logger=require('../../config/logger')(_0x2e2e('0x17'));var utils=require(_0x2e2e('0x18'));var config=require(_0x2e2e('0x19'));var licenseUtil=require('../../config/license/util');var db=require(_0x2e2e('0x1a'))['db'];var dbH=require(_0x2e2e('0x1a'))['dbH'];function respondWithStatusCode(_0x3f7b39,_0x245abf){_0x245abf=_0x245abf||0xcc;return function(_0x3cd149){if(_0x3cd149){return _0x3f7b39['sendStatus'](_0x245abf);}return _0x3f7b39[_0x2e2e('0x1b')](_0x245abf)[_0x2e2e('0x1c')]();};}function respondWithResult(_0x4882ee,_0x3f4648){_0x3f4648=_0x3f4648||0xc8;return function(_0x297eb0){if(_0x297eb0){return _0x4882ee['status'](_0x3f4648)['json'](_0x297eb0);}};}function respondWithFilteredResult(_0xb106f3,_0x10aace){return function(_0x429217){if(_0x429217){var _0x5b3532=_0x429217[_0x2e2e('0x1d')],_0x124329=_0x10aace[_0x2e2e('0x1e')],_0x42f45e=_0x10aace[_0x2e2e('0x1e')]+_0x10aace['limit'],_0x26eff4;if(_0x42f45e>=_0x5b3532){_0x42f45e=_0x5b3532;_0x26eff4=0xc8;}else{_0x26eff4=0xce;}_0xb106f3['status'](_0x26eff4);return _0xb106f3['set'](_0x2e2e('0x1f'),_0x124329+'-'+_0x42f45e+'/'+_0x5b3532)[_0x2e2e('0x20')](_0x429217);}return null;};}function patchUpdates(_0x1098a6){return function(_0x5294ec){try{jsonpatch[_0x2e2e('0x21')](_0x5294ec,_0x1098a6,!![]);}catch(_0x230fb5){return BPromise[_0x2e2e('0x22')](_0x230fb5);}return _0x5294ec['save']();};}function saveUpdates(_0x28164a,_0x5698ea){return function(_0x852f8e){if(_0x852f8e){return _0x852f8e[_0x2e2e('0x23')](_0x28164a)[_0x2e2e('0x24')](function(_0x13676a){return _0x13676a;});}return null;};}function removeEntity(_0x5a750a,_0x221f8f){return function(_0x462666){if(_0x462666){return _0x462666[_0x2e2e('0x25')]()[_0x2e2e('0x24')](function(){var _0x152ea6=_0x462666[_0x2e2e('0x26')]({'plain':!![]});var _0x2d5db1=_0x2e2e('0x27');return db[_0x2e2e('0x28')][_0x2e2e('0x25')]({'where':{'type':_0x2d5db1,'resourceId':_0x152ea6['id']}})[_0x2e2e('0x24')](function(){return _0x462666;});})[_0x2e2e('0x24')](function(){_0x5a750a[_0x2e2e('0x1b')](0xcc)['end']();});}};}function handleEntityNotFound(_0x26a12e,_0x564801){return function(_0x134663){if(!_0x134663){_0x26a12e[_0x2e2e('0x29')](0x194);}return _0x134663;};}function handleError(_0x9337b7,_0x42abe0){_0x42abe0=_0x42abe0||0x1f4;return function(_0x17bb49){logger['error'](_0x17bb49[_0x2e2e('0x2a')]);if(_0x17bb49[_0x2e2e('0x2b')]){delete _0x17bb49[_0x2e2e('0x2b')];}_0x9337b7[_0x2e2e('0x1b')](_0x42abe0)[_0x2e2e('0x2c')](_0x17bb49);};}exports[_0x2e2e('0x2d')]=function(_0x51671d,_0x326559){var _0x1a968f={},_0xc388a6={},_0x58d194={'count':0x0,'rows':[]};var _0x2ded83=_['map'](db[_0x2e2e('0x2e')][_0x2e2e('0x2f')],function(_0x4a1b04){return{'name':_0x4a1b04[_0x2e2e('0x30')],'type':_0x4a1b04[_0x2e2e('0x31')][_0x2e2e('0x32')]};});_0xc388a6['model']=_[_0x2e2e('0x33')](_0x2ded83,_0x2e2e('0x2b'));_0xc388a6[_0x2e2e('0x34')]=_['keys'](_0x51671d[_0x2e2e('0x34')]);_0xc388a6['filters']=_['intersection'](_0xc388a6['model'],_0xc388a6[_0x2e2e('0x34')]);_0x1a968f[_0x2e2e('0x35')]=_[_0x2e2e('0x36')](_0xc388a6[_0x2e2e('0x37')],qs['fields'](_0x51671d[_0x2e2e('0x34')][_0x2e2e('0x38')]));_0x1a968f[_0x2e2e('0x35')]=_0x1a968f['attributes'][_0x2e2e('0x39')]?_0x1a968f['attributes']:_0xc388a6[_0x2e2e('0x37')];if(!_0x51671d[_0x2e2e('0x34')][_0x2e2e('0x3a')]('nolimit')){_0x1a968f[_0x2e2e('0x3b')]=qs[_0x2e2e('0x3b')](_0x51671d[_0x2e2e('0x34')][_0x2e2e('0x3b')]);_0x1a968f['offset']=qs[_0x2e2e('0x1e')](_0x51671d['query'][_0x2e2e('0x1e')]);}_0x1a968f['order']=qs['sort'](_0x51671d[_0x2e2e('0x34')][_0x2e2e('0x3c')]);_0x1a968f['where']=qs[_0x2e2e('0x3d')](_[_0x2e2e('0x3e')](_0x51671d[_0x2e2e('0x34')],_0xc388a6['filters']),_0x2ded83);if(_0x51671d[_0x2e2e('0x34')]['filter']){_0x1a968f[_0x2e2e('0x3f')]=_[_0x2e2e('0x40')](_0x1a968f[_0x2e2e('0x3f')],{'$or':_[_0x2e2e('0x33')](_0x2ded83,function(_0x3bda09){if(_0x3bda09[_0x2e2e('0x31')]!=='VIRTUAL'){var _0x4173a9={};_0x4173a9[_0x3bda09[_0x2e2e('0x2b')]]={'$like':'%'+_0x51671d['query'][_0x2e2e('0x41')]+'%'};return _0x4173a9;}})});}_0x1a968f=_['merge']({},_0x1a968f,_0x51671d['options']);var _0x2edfd3={'where':_0x1a968f[_0x2e2e('0x3f')]};return db[_0x2e2e('0x2e')][_0x2e2e('0x1d')](_0x2edfd3)[_0x2e2e('0x24')](function(_0x39e3fc){_0x58d194[_0x2e2e('0x1d')]=_0x39e3fc;if(_0x51671d['query']['includeAll']){_0x1a968f[_0x2e2e('0x42')]=[{'all':!![]}];}return db[_0x2e2e('0x2e')][_0x2e2e('0x43')](_0x1a968f);})[_0x2e2e('0x24')](function(_0x246703){_0x58d194[_0x2e2e('0x44')]=_0x246703;return _0x58d194;})[_0x2e2e('0x24')](respondWithFilteredResult(_0x326559,_0x1a968f))[_0x2e2e('0x45')](handleError(_0x326559,null));};exports[_0x2e2e('0x46')]=function(_0x3abd2b,_0x39a00f){var _0x5cfdaa={'raw':!![],'where':{'id':_0x3abd2b['params']['id']}},_0x15aa6c={};_0x15aa6c[_0x2e2e('0x37')]=_['keys'](db[_0x2e2e('0x2e')][_0x2e2e('0x2f')]);_0x15aa6c['query']=_[_0x2e2e('0x47')](_0x3abd2b[_0x2e2e('0x34')]);_0x15aa6c[_0x2e2e('0x3d')]=_[_0x2e2e('0x36')](_0x15aa6c[_0x2e2e('0x37')],_0x15aa6c[_0x2e2e('0x34')]);_0x5cfdaa['attributes']=_[_0x2e2e('0x36')](_0x15aa6c[_0x2e2e('0x37')],qs[_0x2e2e('0x38')](_0x3abd2b[_0x2e2e('0x34')][_0x2e2e('0x38')]));_0x5cfdaa[_0x2e2e('0x35')]=_0x5cfdaa[_0x2e2e('0x35')][_0x2e2e('0x39')]?_0x5cfdaa[_0x2e2e('0x35')]:_0x15aa6c[_0x2e2e('0x37')];if(_0x3abd2b[_0x2e2e('0x34')][_0x2e2e('0x48')]){_0x5cfdaa[_0x2e2e('0x42')]=[{'all':!![]}];}_0x5cfdaa=_[_0x2e2e('0x40')]({},_0x5cfdaa,_0x3abd2b[_0x2e2e('0x49')]);return db[_0x2e2e('0x2e')][_0x2e2e('0x4a')](_0x5cfdaa)[_0x2e2e('0x24')](handleEntityNotFound(_0x39a00f,null))[_0x2e2e('0x24')](respondWithResult(_0x39a00f,null))[_0x2e2e('0x45')](handleError(_0x39a00f,null));};exports[_0x2e2e('0x4b')]=function(_0x2528f9,_0x45e620){return db[_0x2e2e('0x2e')]['create'](_0x2528f9[_0x2e2e('0x4c')],{})[_0x2e2e('0x24')](function(_0x5a3ce4){var _0x5d5a33=_0x2528f9[_0x2e2e('0x4d')][_0x2e2e('0x26')]({'plain':!![]});if(!_0x5d5a33)throw new Error(_0x2e2e('0x4e'));if(_0x5d5a33[_0x2e2e('0x4f')]==='user'){var _0x497de9=_0x5a3ce4['get']({'plain':!![]});var _0x58d517=_0x2e2e('0x50');return db[_0x2e2e('0x51')][_0x2e2e('0x4a')]({'where':{'name':_0x58d517,'userProfileId':_0x5d5a33[_0x2e2e('0x52')]},'raw':!![]})[_0x2e2e('0x24')](function(_0x19de65){if(_0x19de65&&_0x19de65[_0x2e2e('0x53')]===0x0){return db[_0x2e2e('0x28')][_0x2e2e('0x4b')]({'name':_0x497de9[_0x2e2e('0x2b')],'resourceId':_0x497de9['id'],'type':_0x2e2e('0x27'),'sectionId':_0x19de65['id']},{})[_0x2e2e('0x24')](function(){return _0x5a3ce4;});}else{return _0x5a3ce4;}})[_0x2e2e('0x45')](function(_0x2594b0){logger[_0x2e2e('0x54')](_0x2e2e('0x55'),_0x2594b0);throw _0x2594b0;});}return _0x5a3ce4;})[_0x2e2e('0x24')](respondWithResult(_0x45e620,0xc9))['catch'](handleError(_0x45e620,null));};exports['update']=function(_0x49ba40,_0x28bfe5){if(_0x49ba40[_0x2e2e('0x4c')]['id']){delete _0x49ba40[_0x2e2e('0x4c')]['id'];}return db[_0x2e2e('0x2e')][_0x2e2e('0x4a')]({'where':{'id':_0x49ba40[_0x2e2e('0x56')]['id']}})['then'](handleEntityNotFound(_0x28bfe5,null))[_0x2e2e('0x24')](saveUpdates(_0x49ba40[_0x2e2e('0x4c')],null))['then'](respondWithResult(_0x28bfe5,null))[_0x2e2e('0x45')](handleError(_0x28bfe5,null));};exports[_0x2e2e('0x25')]=function(_0x258ed1,_0x10b851){return db['AnalyticDefaultReport'][_0x2e2e('0x4a')]({'where':{'id':_0x258ed1[_0x2e2e('0x56')]['id']}})[_0x2e2e('0x24')](handleEntityNotFound(_0x10b851,null))[_0x2e2e('0x24')](removeEntity(_0x10b851,null))[_0x2e2e('0x45')](handleError(_0x10b851,null));};exports[_0x2e2e('0x57')]=function(_0xf67cb1,_0x5086ff){var _0x46b3a7=0xa;var _0x3b742a=[_0x2e2e('0x58'),_0x2e2e('0x59'),'right_join',_0x2e2e('0x5a')];var _0xca91b5={'SUM':_0x2e2e('0x5b'),'COUNT':'COUNT(%s)','COUNT DISTINCT':_0x2e2e('0x5c'),'MAX':'MAX(%s)','MIN':_0x2e2e('0x5d'),'AVG':_0x2e2e('0x5e'),'GROUP_CONCAT':_0x2e2e('0x5f'),'GROUP_CONCAT ASC':_0x2e2e('0x60'),'GROUP_CONCAT DESC':_0x2e2e('0x61')};var _0x2d9d2a={'SEC_TO_TIME':_0x2e2e('0x62'),'DATE':_0x2e2e('0x63'),'HOUR':_0x2e2e('0x64'),'ROUND':_0x2e2e('0x65'),'UNIX_TIMESTAMP':_0x2e2e('0x66')};var _0x53f034=function(_0x4396ed){return!_['includes']([_0x2e2e('0x67'),_0x2e2e('0x68'),_0x2e2e('0x69'),_0x2e2e('0x6a')],_0x4396ed);};var _0x3792b9=function(_0xd7677f){if(!_0xd7677f||!_0xd7677f[_0x2e2e('0x6b')][_0x2e2e('0x39')]){return'';}for(var _0x5c3af6='(',_0xabd633=0x0;_0xabd633<_0xd7677f['rules'][_0x2e2e('0x39')];_0xabd633+=0x1){_0xabd633>0x0&&(_0x5c3af6+='\x20'+_0xd7677f[_0x2e2e('0x6c')]+'\x20');_0x5c3af6+=_0xd7677f[_0x2e2e('0x6b')][_0xabd633][_0x2e2e('0x6d')]?_0x3792b9(_0xd7677f[_0x2e2e('0x6b')][_0xabd633]['group']):_0xd7677f['rules'][_0xabd633][_0x2e2e('0x6e')]+'\x20'+_0xd7677f[_0x2e2e('0x6b')][_0xabd633][_0x2e2e('0x6f')]+(_0x53f034(_0xd7677f['rules'][_0xabd633][_0x2e2e('0x6f')])?'\x20'+_0xd7677f[_0x2e2e('0x6b')][_0xabd633][_0x2e2e('0x70')]:'');}return _0x5c3af6+')';};var _0x20ab15={'where':{'id':_0xf67cb1[_0x2e2e('0x56')]['id']}},_0x2d920f,_0x706955,_0x2baeb1,_0x3a38ed,_0x53a8e7;_0x20ab15=_[_0x2e2e('0x40')]({},_0x20ab15,_0xf67cb1[_0x2e2e('0x49')]);return db['AnalyticDefaultReport']['find'](_0x20ab15)['then'](function(_0x45be45){if(_0x45be45){_0x2d920f=_0x45be45;return _0x45be45[_0x2e2e('0x71')]();}return null;})['then'](function(_0x311088){if(_0x311088){if(!_0x311088[_0x2e2e('0x39')]){throw new db[(_0x2e2e('0x72'))]['ValidationErrorItem'](_0x2e2e('0x73'),0x193);}_0x706955=_0x311088;return db[_0x2e2e('0x74')][_0x2e2e('0x43')]({'raw':!![]});}return null;})[_0x2e2e('0x24')](function(_0x1bfa51){if(_0x1bfa51){_0x2baeb1=_[_0x2e2e('0x75')](_0x1bfa51,'id');var _0x5b5c82;var _0x5b1406=squel['select']();_0x5b1406[_0x2e2e('0x76')](_0x2d920f[_0x2e2e('0x77')]);for(var _0x2d5e4d=0x0;_0x2d5e4d<_0x706955[_0x2e2e('0x39')];_0x2d5e4d+=0x1){_0x5b5c82=_0x706955[_0x2d5e4d][_0x2e2e('0x78')]?_0x2baeb1[_0x706955[_0x2d5e4d][_0x2e2e('0x78')]][_0x2e2e('0x79')]:_0x706955[_0x2d5e4d][_0x2e2e('0x6e')];_0x5b5c82=_0x706955[_0x2d5e4d][_0x2e2e('0x7a')]?_[_0x2e2e('0x7b')](_0xca91b5[_0x706955[_0x2d5e4d][_0x2e2e('0x7a')]],'%s',_0x5b5c82):_0x5b5c82;_0x5b5c82=_0x706955[_0x2d5e4d]['format']?_[_0x2e2e('0x7b')](_0x2d9d2a[_0x706955[_0x2d5e4d][_0x2e2e('0x7c')]],'%s',_0x5b5c82):_0x5b5c82;if(_0x706955[_0x2d5e4d][_0x2e2e('0x7d')]){_0x5b1406['group'](_0x5b5c82);}_0x706955[_0x2d5e4d]['orderBy']&&_0x5b1406['order'](_0x5b5c82,_0x706955[_0x2d5e4d][_0x2e2e('0x7e')]==='DESC'?![]:!![]);_0x5b1406[_0x2e2e('0x6e')](_0x5b5c82,_0x706955[_0x2d5e4d][_0x2e2e('0x7f')]||_0x5b5c82);}if(_0x2d920f[_0x2e2e('0x80')]){_0x2d920f[_0x2e2e('0x80')]=JSON[_0x2e2e('0x81')](_0x2d920f['joins']);for(var _0x3361df=0x0;_0x3361df<_0x2d920f['joins']['length'];_0x3361df+=0x1){if(_0x2d920f[_0x2e2e('0x80')][_0x3361df][_0x2e2e('0x31')]&&_['includes'](_0x3b742a,_0x2d920f['joins'][_0x3361df][_0x2e2e('0x31')])&&_0x2d920f['joins'][_0x3361df][_0x2e2e('0x82')]&&_0x2d920f[_0x2e2e('0x80')][_0x3361df]['foreignTable']&&_0x2d920f[_0x2e2e('0x80')][_0x3361df][_0x2e2e('0x83')]){_0x5b1406[_0x2d920f[_0x2e2e('0x80')][_0x3361df][_0x2e2e('0x31')]](_0x2d920f['joins'][_0x3361df][_0x2e2e('0x84')],null,util[_0x2e2e('0x7c')]('%s.%s\x20=\x20%s.%s',_0x2d920f[_0x2e2e('0x77')],_0x2d920f[_0x2e2e('0x80')][_0x3361df][_0x2e2e('0x82')],_0x2d920f['joins'][_0x3361df]['foreignTable'],_0x2d920f[_0x2e2e('0x80')][_0x3361df]['foreignKey']));}}}if(_0x2d920f['conditions']){_0x2d920f[_0x2e2e('0x85')]=JSON[_0x2e2e('0x81')](_0x2d920f[_0x2e2e('0x85')]);_0x5b1406[_0x2e2e('0x3f')](_0x3792b9(_0x2d920f[_0x2e2e('0x85')][_0x2e2e('0x6d')]));}_0x53a8e7=_0x5b1406[_0x2e2e('0x86')]();_0x5b1406[_0x2e2e('0x3b')](_0x46b3a7);_0x5b1406[_0x2e2e('0x1e')](0x0);logger[_0x2e2e('0x87')]('Limited\x20Query:',_0x5b1406[_0x2e2e('0x88')]());return db[_0x2e2e('0x89')][_0x2e2e('0x34')](_0x5b1406[_0x2e2e('0x88')](),{'type':db['sequelize']['QueryTypes']['SELECT']});}})[_0x2e2e('0x24')](respondWithResult(_0x5086ff,null))[_0x2e2e('0x45')](handleError(_0x5086ff,null));};function runReport(_0x7d9d24,_0x489831,_0x38e791){var _0x3d7c1b=_0x489831['name'];var _0xb578e5=0xa;var _0x70fb8d=[_0x2e2e('0x58'),'left_join',_0x2e2e('0x8a'),_0x2e2e('0x5a')];var _0x3ee85a={'SUM':_0x2e2e('0x5b'),'COUNT':_0x2e2e('0x8b'),'COUNT DISTINCT':_0x2e2e('0x5c'),'MAX':_0x2e2e('0x8c'),'MIN':'MIN(%s)','AVG':_0x2e2e('0x5e'),'GROUP_CONCAT':_0x2e2e('0x5f'),'GROUP_CONCAT ASC':_0x2e2e('0x60'),'GROUP_CONCAT DESC':_0x2e2e('0x61')};var _0x2edd90={'SEC_TO_TIME':_0x2e2e('0x62'),'DATE':_0x2e2e('0x63'),'HOUR':_0x2e2e('0x64'),'ROUND':'ROUND(%s)','UNIX_TIMESTAMP':_0x2e2e('0x66')};var _0x1e0606=function(_0x4d07a4){return!_[_0x2e2e('0x8d')]([_0x2e2e('0x67'),_0x2e2e('0x68'),'IS\x20EMPTY',_0x2e2e('0x6a')],_0x4d07a4);};var _0xa56652=function(_0x13ecb1){if(!_0x13ecb1||!_0x13ecb1[_0x2e2e('0x6b')][_0x2e2e('0x39')]){return'';}for(var _0x1b55d1='(',_0x3b4336=0x0;_0x3b4336<_0x13ecb1[_0x2e2e('0x6b')][_0x2e2e('0x39')];_0x3b4336+=0x1){_0x3b4336>0x0&&(_0x1b55d1+='\x20'+_0x13ecb1[_0x2e2e('0x6c')]+'\x20');_0x1b55d1+=_0x13ecb1['rules'][_0x3b4336][_0x2e2e('0x6d')]?_0xa56652(_0x13ecb1[_0x2e2e('0x6b')][_0x3b4336][_0x2e2e('0x6d')]):_0x13ecb1[_0x2e2e('0x6b')][_0x3b4336]['field']+'\x20'+_0x13ecb1[_0x2e2e('0x6b')][_0x3b4336][_0x2e2e('0x6f')]+(_0x1e0606(_0x13ecb1[_0x2e2e('0x6b')][_0x3b4336][_0x2e2e('0x6f')])?'\x20'+_0x13ecb1[_0x2e2e('0x6b')][_0x3b4336][_0x2e2e('0x70')]:'');}return _0x1b55d1+')';};var _0x500430={'where':{'id':_0x7d9d24['id']}},_0x4e218d,_0x4860f4,_0x30e30e,_0x198997,_0x1ec901;_0x500430=_[_0x2e2e('0x40')]({},_0x500430,_0x38e791);return db[_0x2e2e('0x2e')][_0x2e2e('0x4a')](_0x500430)[_0x2e2e('0x24')](function(_0x3873ee){if(_0x3873ee){_0x4e218d=_0x3873ee;return _0x3873ee['getFields']();}return null;})[_0x2e2e('0x24')](function(_0x5a0855){if(_0x5a0855){if(!_0x5a0855[_0x2e2e('0x39')]){throw new db['Sequelize']['ValidationErrorItem'](_0x2e2e('0x73'),0x193);}_0x4860f4=_0x5a0855;return db[_0x2e2e('0x74')][_0x2e2e('0x43')]({'raw':!![]});}return null;})['then'](function(_0x38171f){if(_0x38171f){_0x30e30e=_[_0x2e2e('0x75')](_0x38171f,'id');var _0x3477c0;var _0x1b6689=squel[_0x2e2e('0x8e')]();_0x1b6689[_0x2e2e('0x76')](_0x4e218d[_0x2e2e('0x77')]);for(var _0x5ae79e=0x0;_0x5ae79e<_0x4860f4[_0x2e2e('0x39')];_0x5ae79e+=0x1){_0x3477c0=_0x4860f4[_0x5ae79e]['MetricId']?_0x30e30e[_0x4860f4[_0x5ae79e][_0x2e2e('0x78')]][_0x2e2e('0x79')]:_0x4860f4[_0x5ae79e][_0x2e2e('0x6e')];_0x3477c0=_0x4860f4[_0x5ae79e][_0x2e2e('0x7a')]?_[_0x2e2e('0x7b')](_0x3ee85a[_0x4860f4[_0x5ae79e]['function']],'%s',_0x3477c0):_0x3477c0;_0x3477c0=_0x4860f4[_0x5ae79e][_0x2e2e('0x7c')]?_[_0x2e2e('0x7b')](_0x2edd90[_0x4860f4[_0x5ae79e][_0x2e2e('0x7c')]],'%s',_0x3477c0):_0x3477c0;if(_0x4860f4[_0x5ae79e][_0x2e2e('0x7d')]){_0x1b6689[_0x2e2e('0x6d')](_0x3477c0);}_0x4860f4[_0x5ae79e][_0x2e2e('0x7e')]&&_0x1b6689[_0x2e2e('0x8f')](_0x3477c0,_0x4860f4[_0x5ae79e][_0x2e2e('0x7e')]===_0x2e2e('0x90')?![]:!![]);_0x1b6689['field'](_0x3477c0,_0x4860f4[_0x5ae79e][_0x2e2e('0x7f')]||_0x3477c0);}if(_0x4e218d[_0x2e2e('0x80')]){_0x4e218d[_0x2e2e('0x80')]=JSON[_0x2e2e('0x81')](_0x4e218d['joins']);for(var _0x3b6b97=0x0;_0x3b6b97<_0x4e218d[_0x2e2e('0x80')][_0x2e2e('0x39')];_0x3b6b97+=0x1){if(_0x4e218d[_0x2e2e('0x80')][_0x3b6b97][_0x2e2e('0x31')]&&_[_0x2e2e('0x8d')](_0x70fb8d,_0x4e218d[_0x2e2e('0x80')][_0x3b6b97][_0x2e2e('0x31')])&&_0x4e218d[_0x2e2e('0x80')][_0x3b6b97][_0x2e2e('0x82')]&&_0x4e218d[_0x2e2e('0x80')][_0x3b6b97][_0x2e2e('0x84')]&&_0x4e218d['joins'][_0x3b6b97][_0x2e2e('0x83')]){_0x1b6689[_0x4e218d['joins'][_0x3b6b97]['type']](_0x4e218d[_0x2e2e('0x80')][_0x3b6b97][_0x2e2e('0x84')],null,util[_0x2e2e('0x7c')](_0x2e2e('0x91'),_0x4e218d[_0x2e2e('0x77')],_0x4e218d[_0x2e2e('0x80')][_0x3b6b97]['parentKey'],_0x4e218d[_0x2e2e('0x80')][_0x3b6b97][_0x2e2e('0x84')],_0x4e218d[_0x2e2e('0x80')][_0x3b6b97]['foreignKey']));}}}if(_0x4e218d[_0x2e2e('0x85')]){_0x4e218d[_0x2e2e('0x85')]=JSON[_0x2e2e('0x81')](_0x4e218d[_0x2e2e('0x85')]);_0x1b6689[_0x2e2e('0x3f')](_0xa56652(_0x4e218d['conditions'][_0x2e2e('0x6d')]));}_0x1ec901=_0x1b6689['clone']();_0x1b6689['limit'](_0xb578e5);_0x1b6689[_0x2e2e('0x1e')](0x0);logger[_0x2e2e('0x87')](_0x2e2e('0x92'),_0x1b6689[_0x2e2e('0x88')]());return db[_0x2e2e('0x89')][_0x2e2e('0x34')](_0x1b6689['toString'](),{'type':db[_0x2e2e('0x89')]['QueryTypes']['SELECT']});}})['then'](function(_0x10852a){if(!_0x10852a[_0x2e2e('0x39')]){throw new db[(_0x2e2e('0x72'))][(_0x2e2e('0x93'))](_0x2e2e('0x94'),0xcc);}if(_0x489831[_0x2e2e('0x95')]===_0x2e2e('0x96')){return null;}var _0x2fd33a=_[_0x2e2e('0x40')](_0x489831,{'name':_0x489831[_0x2e2e('0x97')]||_0x489831[_0x2e2e('0x2b')]||_0x4e218d['name'],'basename':_0x3d7c1b,'savename':util['format']('%s-%s.%s',_0x489831[_0x2e2e('0x2b')]||_0x4e218d[_0x2e2e('0x2b')],require(_0x2e2e('0x98'))['generate'](0x4),_0x489831[_0x2e2e('0x95')]||_0x2e2e('0x99')),'reportId':_0x4e218d['id'],'reportType':'default'});return db['AnalyticExtractedReport']['create'](_0x2fd33a,{'raw':!![]});})[_0x2e2e('0x24')](function(_0x2ba85e){if(_0x4e218d[_0x2e2e('0x77')]==='cdr'){_0x1ec901[_0x2e2e('0x3f')](_0x4e218d['table']+_0x2e2e('0x9a'),_0x489831[_0x2e2e('0x9b')],_0x489831[_0x2e2e('0x9c')]);}else{_0x1ec901[_0x2e2e('0x3f')](_0x4e218d[_0x2e2e('0x77')]+_0x2e2e('0x9d'),_0x489831[_0x2e2e('0x9b')],_0x489831[_0x2e2e('0x9c')]);}if(_0x2ba85e){logger[_0x2e2e('0x9e')]('Run\x20Query:',_0x1ec901[_0x2e2e('0x88')]());require(_0x2e2e('0x9f'))[_0x2e2e('0xa0')](path['join'](__dirname,_0x2e2e('0xa1'),_0x2ba85e['output']),[_0x2ba85e['id'],_0x1ec901[_0x2e2e('0x88')](),path[_0x2e2e('0x58')](__dirname,_0x2e2e('0xa2'),_0x2ba85e['savename']),_0x3d7c1b]);return _0x2ba85e;}else{var _0x6389c9=squel[_0x2e2e('0x8e')]();_0x6389c9[_0x2e2e('0x76')]('('+_0x1ec901[_0x2e2e('0x88')]()+')',_0x2e2e('0xa3'));_0x6389c9['field'](_0x2e2e('0xa4'),_0x2e2e('0x1d'));_0x1ec901[_0x2e2e('0x3b')](_0x489831['limit']||_0xb578e5);_0x1ec901[_0x2e2e('0x1e')](_0x489831[_0x2e2e('0x1e')]||0x0);return dbH['sequelize'][_0x2e2e('0x34')](_0x6389c9[_0x2e2e('0x88')](),{'type':dbH[_0x2e2e('0x89')][_0x2e2e('0xa5')][_0x2e2e('0xa6')]})['then'](function(_0x44fe58){if(!_0x44fe58[_0x2e2e('0x39')]){_0x198997=0x0;}else{_0x198997=_0x44fe58[0x0][_0x2e2e('0x1d')]||0x0;}return dbH[_0x2e2e('0x89')]['query'](_0x1ec901[_0x2e2e('0x88')](),{'type':dbH[_0x2e2e('0x89')]['QueryTypes'][_0x2e2e('0xa6')]});})[_0x2e2e('0x24')](function(_0x1ba48f){return{'rows':_0x1ba48f||[],'count':_0x198997};});}});}exports[_0x2e2e('0xa7')]=function(_0x1751ee,_0x2cc436){return runReport(_0x1751ee['params'],_0x1751ee['query'],_0x1751ee[_0x2e2e('0x49')])[_0x2e2e('0x24')](respondWithResult(_0x2cc436,null))[_0x2e2e('0x45')](handleError(_0x2cc436,null));};exports[_0x2e2e('0xa8')]=runReport;exports[_0x2e2e('0x34')]=function(_0x16e673,_0x13990a){var _0x4341d6=0xa;var _0x24807f=['join',_0x2e2e('0x59'),_0x2e2e('0x8a'),_0x2e2e('0x5a')];var _0x47f74d={'SUM':_0x2e2e('0x5b'),'COUNT':_0x2e2e('0x8b'),'COUNT DISTINCT':_0x2e2e('0x5c'),'MAX':_0x2e2e('0x8c'),'MIN':_0x2e2e('0x5d'),'AVG':_0x2e2e('0x5e'),'GROUP_CONCAT':_0x2e2e('0x5f'),'GROUP_CONCAT ASC':_0x2e2e('0x60'),'GROUP_CONCAT DESC':_0x2e2e('0x61')};var _0x5d3d6b={'SEC_TO_TIME':'SEC_TO_TIME(%s)','DATE':'DATE(%s)','HOUR':_0x2e2e('0x64'),'ROUND':_0x2e2e('0x65'),'UNIX_TIMESTAMP':_0x2e2e('0x66')};var _0x5d88ab=function(_0x381526){return!_['includes']([_0x2e2e('0x67'),_0x2e2e('0x68'),_0x2e2e('0x69'),_0x2e2e('0x6a')],_0x381526);};var _0x2f9d0a=function(_0x553481){if(!_0x553481||!_0x553481[_0x2e2e('0x6b')][_0x2e2e('0x39')]){return'';}for(var _0x50e455='(',_0x273c4c=0x0;_0x273c4c<_0x553481[_0x2e2e('0x6b')][_0x2e2e('0x39')];_0x273c4c+=0x1){_0x273c4c>0x0&&(_0x50e455+='\x20'+_0x553481[_0x2e2e('0x6c')]+'\x20');_0x50e455+=_0x553481[_0x2e2e('0x6b')][_0x273c4c]['group']?_0x2f9d0a(_0x553481['rules'][_0x273c4c][_0x2e2e('0x6d')]):_0x553481[_0x2e2e('0x6b')][_0x273c4c]['field']+'\x20'+_0x553481[_0x2e2e('0x6b')][_0x273c4c]['condition']+(_0x5d88ab(_0x553481[_0x2e2e('0x6b')][_0x273c4c][_0x2e2e('0x6f')])?'\x20'+_0x553481[_0x2e2e('0x6b')][_0x273c4c][_0x2e2e('0x70')]:'');}return _0x50e455+')';};var _0x3b000f={'where':{'id':_0x16e673['params']['id']}},_0x282f9e,_0x3c71f3,_0x23daca,_0x11f5e7,_0xf063ba;_0x3b000f=_[_0x2e2e('0x40')]({},_0x3b000f,_0x16e673[_0x2e2e('0x49')]);return db[_0x2e2e('0x2e')]['find'](_0x3b000f)[_0x2e2e('0x24')](function(_0x55d1f7){if(_0x55d1f7){_0x282f9e=_0x55d1f7;return _0x55d1f7[_0x2e2e('0x71')]();}return null;})[_0x2e2e('0x24')](function(_0xb0c7fe){if(_0xb0c7fe){if(!_0xb0c7fe['length']){throw new db[(_0x2e2e('0x72'))]['ValidationErrorItem'](_0x2e2e('0x73'),0x193);}_0x3c71f3=_0xb0c7fe;return db[_0x2e2e('0x74')][_0x2e2e('0x43')]({'raw':!![]});}return null;})[_0x2e2e('0x24')](function(_0x14b974){if(_0x14b974){_0x23daca=_[_0x2e2e('0x75')](_0x14b974,'id');var _0x2001b5;var _0x15dfc7=squel['select']();_0x15dfc7[_0x2e2e('0x76')](_0x282f9e[_0x2e2e('0x77')]);for(var _0x20e07f=0x0;_0x20e07f<_0x3c71f3[_0x2e2e('0x39')];_0x20e07f+=0x1){_0x2001b5=_0x3c71f3[_0x20e07f][_0x2e2e('0x78')]?_0x23daca[_0x3c71f3[_0x20e07f][_0x2e2e('0x78')]][_0x2e2e('0x79')]:_0x3c71f3[_0x20e07f]['field'];_0x2001b5=_0x3c71f3[_0x20e07f][_0x2e2e('0x7a')]?_[_0x2e2e('0x7b')](_0x47f74d[_0x3c71f3[_0x20e07f][_0x2e2e('0x7a')]],'%s',_0x2001b5):_0x2001b5;_0x2001b5=_0x3c71f3[_0x20e07f][_0x2e2e('0x7c')]?_[_0x2e2e('0x7b')](_0x5d3d6b[_0x3c71f3[_0x20e07f][_0x2e2e('0x7c')]],'%s',_0x2001b5):_0x2001b5;if(_0x3c71f3[_0x20e07f][_0x2e2e('0x7d')]){_0x15dfc7[_0x2e2e('0x6d')](_0x2001b5);}_0x3c71f3[_0x20e07f][_0x2e2e('0x7e')]&&_0x15dfc7['order'](_0x2001b5,_0x3c71f3[_0x20e07f][_0x2e2e('0x7e')]===_0x2e2e('0x90')?![]:!![]);_0x15dfc7['field'](_0x2001b5,_0x3c71f3[_0x20e07f][_0x2e2e('0x7f')]||_0x2001b5);}if(_0x282f9e[_0x2e2e('0x80')]){_0x282f9e[_0x2e2e('0x80')]=JSON[_0x2e2e('0x81')](_0x282f9e[_0x2e2e('0x80')]);for(var _0x1688b7=0x0;_0x1688b7<_0x282f9e[_0x2e2e('0x80')]['length'];_0x1688b7+=0x1){if(_0x282f9e[_0x2e2e('0x80')][_0x1688b7][_0x2e2e('0x31')]&&_[_0x2e2e('0x8d')](_0x24807f,_0x282f9e[_0x2e2e('0x80')][_0x1688b7]['type'])&&_0x282f9e[_0x2e2e('0x80')][_0x1688b7][_0x2e2e('0x82')]&&_0x282f9e['joins'][_0x1688b7][_0x2e2e('0x84')]&&_0x282f9e[_0x2e2e('0x80')][_0x1688b7][_0x2e2e('0x83')]){_0x15dfc7[_0x282f9e[_0x2e2e('0x80')][_0x1688b7][_0x2e2e('0x31')]](_0x282f9e['joins'][_0x1688b7][_0x2e2e('0x84')],null,util[_0x2e2e('0x7c')]('%s.%s\x20=\x20%s.%s',_0x282f9e[_0x2e2e('0x77')],_0x282f9e[_0x2e2e('0x80')][_0x1688b7][_0x2e2e('0x82')],_0x282f9e[_0x2e2e('0x80')][_0x1688b7][_0x2e2e('0x84')],_0x282f9e[_0x2e2e('0x80')][_0x1688b7][_0x2e2e('0x83')]));}}}if(_0x282f9e[_0x2e2e('0x85')]){_0x282f9e[_0x2e2e('0x85')]=JSON[_0x2e2e('0x81')](_0x282f9e[_0x2e2e('0x85')]);_0x15dfc7['where'](_0x2f9d0a(_0x282f9e[_0x2e2e('0x85')][_0x2e2e('0x6d')]));}_0xf063ba=_0x15dfc7[_0x2e2e('0x86')]();_0x15dfc7[_0x2e2e('0x3b')](_0x4341d6);_0x15dfc7[_0x2e2e('0x1e')](0x0);logger[_0x2e2e('0x87')](_0x2e2e('0x92'),_0x15dfc7[_0x2e2e('0x88')]());return db['sequelize'][_0x2e2e('0x34')](_0x15dfc7[_0x2e2e('0x88')](),{'type':db[_0x2e2e('0x89')][_0x2e2e('0xa5')][_0x2e2e('0xa6')]});}})[_0x2e2e('0x24')](function(){return{'sql':_0xf063ba['toString']()};})[_0x2e2e('0x24')](respondWithResult(_0x13990a,null))[_0x2e2e('0x45')](handleError(_0x13990a,null));};