Built motion from commit (unavailable).|2.4.14
[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 _0x4024=['COUNT(DISTINCT\x20%s)','MAX(%s)','AVG(%s)','GROUP_CONCAT(%s)','GROUP_CONCAT(%s\x20ORDER\x20BY\x20%s\x20ASC)','GROUP_CONCAT(%s\x20ORDER\x20BY\x20%s\x20DESC)','getFields','groupBy','order','No\x20available\x20data','output','web','fullPath','%s-%s.%s','randomstring','generate','csv','default','AnalyticExtractedReport','cdr','.calldate\x20BETWEEN\x20?\x20AND\x20?','startDate','endDate','.createdAt\x20BETWEEN\x20?\x20AND\x20?','Run\x20Query:','child_process','fork','../../files/reports','select','run','runReport','debug','html-pdf','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','end','status','json','count','offset','limit','set','apply','reject','save','then','destroy','get','DefaultReports','UserProfileResource','stack','name','index','map','AnalyticDefaultReport','rawAttributes','key','model','query','filters','intersection','attributes','fields','length','hasOwnProperty','sort','where','filter','merge','type','VIRTUAL','rows','catch','show','params','keys','include','options','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','Reports','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','find','preview','join','right_join','cross_join','SUM(%s)','COUNT(%s)','MIN(%s)','SEC_TO_TIME(%s)','DATE(%s)','HOUR(%s)','ROUND(%s)','UNIX_TIMESTAMP(%s)','includes','IS\x20NULL','IS\x20NOT\x20NULL','IS\x20EMPTY','IS\x20NOT\x20EMPTY','rules','operator','group','condition','value','Sequelize','ValidationErrorItem','Please\x20insert\x20at\x20least\x20one\x20field','AnalyticMetric','findAll','keyBy','from','MetricId','field','replace','function','format','orderBy','DESC','alias','joins','parse','parentKey','foreignTable','foreignKey','%s.%s\x20=\x20%s.%s','table','conditions','clone','Limited\x20Query:','toString','sequelize','QueryTypes','SELECT','left_join'];(function(_0x1ffd87,_0xacf17d){var _0x5665b6=function(_0x474772){while(--_0x474772){_0x1ffd87['push'](_0x1ffd87['shift']());}};_0x5665b6(++_0xacf17d);}(_0x4024,0xc4));var _0x4402=function(_0x3994ba,_0x23ae01){_0x3994ba=_0x3994ba-0x0;var _0x4fa775=_0x4024[_0x3994ba];return _0x4fa775;};'use strict';var pdf=require(_0x4402('0x0'));var emlformat=require('eml-format');var rimraf=require(_0x4402('0x1'));var zipdir=require(_0x4402('0x2'));var jsonpatch=require(_0x4402('0x3'));var rp=require(_0x4402('0x4'));var moment=require(_0x4402('0x5'));var BPromise=require(_0x4402('0x6'));var Mustache=require(_0x4402('0x7'));var util=require(_0x4402('0x8'));var path=require(_0x4402('0x9'));var sox=require(_0x4402('0xa'));var csv=require('to-csv');var ejs=require(_0x4402('0xb'));var fs=require('fs');var _=require(_0x4402('0xc'));var squel=require(_0x4402('0xd'));var crypto=require(_0x4402('0xe'));var jsforce=require(_0x4402('0xf'));var deskjs=require(_0x4402('0x10'));var toCsv=require('to-csv');var querystring=require(_0x4402('0x11'));var Papa=require(_0x4402('0x12'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0x4402('0x13'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x4402('0x14'));var logger=require(_0x4402('0x15'))(_0x4402('0x16'));var utils=require(_0x4402('0x17'));var config=require(_0x4402('0x18'));var db=require(_0x4402('0x19'))['db'];function respondWithStatusCode(_0x3d1b85,_0x5a452d){_0x5a452d=_0x5a452d||0xcc;return function(_0x2a005f){if(_0x2a005f){return _0x3d1b85[_0x4402('0x1a')](_0x5a452d);}return _0x3d1b85['status'](_0x5a452d)[_0x4402('0x1b')]();};}function respondWithResult(_0x5ea30a,_0x308790){_0x308790=_0x308790||0xc8;return function(_0x26d1d7){if(_0x26d1d7){return _0x5ea30a[_0x4402('0x1c')](_0x308790)[_0x4402('0x1d')](_0x26d1d7);}};}function respondWithFilteredResult(_0xc084a0,_0x140f88){return function(_0x2ff1d8){if(_0x2ff1d8){var _0x51a0ae=_0x2ff1d8[_0x4402('0x1e')],_0x1f1ca8=_0x140f88[_0x4402('0x1f')],_0x4c9e0e=_0x140f88[_0x4402('0x1f')]+_0x140f88[_0x4402('0x20')],_0x1e43fc;if(_0x4c9e0e>=_0x51a0ae){_0x4c9e0e=_0x51a0ae;_0x1e43fc=0xc8;}else{_0x1e43fc=0xce;}_0xc084a0[_0x4402('0x1c')](_0x1e43fc);return _0xc084a0[_0x4402('0x21')]('Content-Range',_0x1f1ca8+'-'+_0x4c9e0e+'/'+_0x51a0ae)[_0x4402('0x1d')](_0x2ff1d8);}return null;};}function patchUpdates(_0x407129){return function(_0x37442f){try{jsonpatch[_0x4402('0x22')](_0x37442f,_0x407129,!![]);}catch(_0x21b333){return BPromise[_0x4402('0x23')](_0x21b333);}return _0x37442f[_0x4402('0x24')]();};}function saveUpdates(_0x4df34b,_0x119bc9){return function(_0xb0a2e5){if(_0xb0a2e5){return _0xb0a2e5['update'](_0x4df34b)[_0x4402('0x25')](function(_0x238d44){return _0x238d44;});}return null;};}function removeEntity(_0x5de6d1,_0x40fb74){return function(_0x53ddb6){if(_0x53ddb6){return _0x53ddb6[_0x4402('0x26')]()[_0x4402('0x25')](function(){var _0x60a4af=_0x53ddb6[_0x4402('0x27')]({'plain':!![]});var _0x1de5a1=_0x4402('0x28');return db[_0x4402('0x29')][_0x4402('0x26')]({'where':{'type':_0x1de5a1,'resourceId':_0x60a4af['id']}})[_0x4402('0x25')](function(){return _0x53ddb6;});})[_0x4402('0x25')](function(){_0x5de6d1['status'](0xcc)[_0x4402('0x1b')]();});}};}function handleEntityNotFound(_0x458b83,_0x2aac41){return function(_0x3b4daf){if(!_0x3b4daf){_0x458b83[_0x4402('0x1a')](0x194);}return _0x3b4daf;};}function handleError(_0x4779c5,_0x3178d9){_0x3178d9=_0x3178d9||0x1f4;return function(_0x5ae84e){logger['error'](_0x5ae84e[_0x4402('0x2a')]);if(_0x5ae84e[_0x4402('0x2b')]){delete _0x5ae84e[_0x4402('0x2b')];}_0x4779c5[_0x4402('0x1c')](_0x3178d9)['send'](_0x5ae84e);};}exports[_0x4402('0x2c')]=function(_0x393638,_0x340703){var _0x5abf5b={},_0x5b1fd9={},_0x1d5af4={'count':0x0,'rows':[]};var _0x7748ce=_[_0x4402('0x2d')](db[_0x4402('0x2e')][_0x4402('0x2f')],function(_0x67f535){return{'name':_0x67f535['fieldName'],'type':_0x67f535['type'][_0x4402('0x30')]};});_0x5b1fd9[_0x4402('0x31')]=_['map'](_0x7748ce,'name');_0x5b1fd9[_0x4402('0x32')]=_['keys'](_0x393638[_0x4402('0x32')]);_0x5b1fd9[_0x4402('0x33')]=_[_0x4402('0x34')](_0x5b1fd9[_0x4402('0x31')],_0x5b1fd9[_0x4402('0x32')]);_0x5abf5b[_0x4402('0x35')]=_['intersection'](_0x5b1fd9[_0x4402('0x31')],qs[_0x4402('0x36')](_0x393638[_0x4402('0x32')][_0x4402('0x36')]));_0x5abf5b['attributes']=_0x5abf5b[_0x4402('0x35')][_0x4402('0x37')]?_0x5abf5b[_0x4402('0x35')]:_0x5b1fd9[_0x4402('0x31')];if(!_0x393638[_0x4402('0x32')][_0x4402('0x38')]('nolimit')){_0x5abf5b[_0x4402('0x20')]=qs[_0x4402('0x20')](_0x393638['query'][_0x4402('0x20')]);_0x5abf5b['offset']=qs[_0x4402('0x1f')](_0x393638['query'][_0x4402('0x1f')]);}_0x5abf5b['order']=qs[_0x4402('0x39')](_0x393638['query'][_0x4402('0x39')]);_0x5abf5b[_0x4402('0x3a')]=qs[_0x4402('0x33')](_['pick'](_0x393638[_0x4402('0x32')],_0x5b1fd9[_0x4402('0x33')]));if(_0x393638[_0x4402('0x32')][_0x4402('0x3b')]){_0x5abf5b['where']=_[_0x4402('0x3c')](_0x5abf5b[_0x4402('0x3a')],{'$or':_[_0x4402('0x2d')](_0x7748ce,function(_0x378f58){if(_0x378f58[_0x4402('0x3d')]!==_0x4402('0x3e')){var _0x38b54d={};_0x38b54d[_0x378f58[_0x4402('0x2b')]]={'$like':'%'+_0x393638[_0x4402('0x32')][_0x4402('0x3b')]+'%'};return _0x38b54d;}})});}_0x5abf5b=_[_0x4402('0x3c')]({},_0x5abf5b,_0x393638['options']);var _0x322ced={'where':_0x5abf5b[_0x4402('0x3a')]};return db[_0x4402('0x2e')][_0x4402('0x1e')](_0x322ced)[_0x4402('0x25')](function(_0x3d50d0){_0x1d5af4[_0x4402('0x1e')]=_0x3d50d0;if(_0x393638['query']['includeAll']){_0x5abf5b['include']=[{'all':!![]}];}return db[_0x4402('0x2e')]['findAll'](_0x5abf5b);})[_0x4402('0x25')](function(_0x98b7a3){_0x1d5af4[_0x4402('0x3f')]=_0x98b7a3;return _0x1d5af4;})[_0x4402('0x25')](respondWithFilteredResult(_0x340703,_0x5abf5b))[_0x4402('0x40')](handleError(_0x340703,null));};exports[_0x4402('0x41')]=function(_0x479e66,_0x11ba62){var _0x28e810={'raw':!![],'where':{'id':_0x479e66[_0x4402('0x42')]['id']}},_0x4dedc6={};_0x4dedc6[_0x4402('0x31')]=_['keys'](db[_0x4402('0x2e')][_0x4402('0x2f')]);_0x4dedc6[_0x4402('0x32')]=_[_0x4402('0x43')](_0x479e66['query']);_0x4dedc6[_0x4402('0x33')]=_['intersection'](_0x4dedc6[_0x4402('0x31')],_0x4dedc6[_0x4402('0x32')]);_0x28e810[_0x4402('0x35')]=_['intersection'](_0x4dedc6[_0x4402('0x31')],qs[_0x4402('0x36')](_0x479e66['query']['fields']));_0x28e810[_0x4402('0x35')]=_0x28e810['attributes']['length']?_0x28e810[_0x4402('0x35')]:_0x4dedc6['model'];if(_0x479e66[_0x4402('0x32')]['includeAll']){_0x28e810[_0x4402('0x44')]=[{'all':!![]}];}_0x28e810=_[_0x4402('0x3c')]({},_0x28e810,_0x479e66[_0x4402('0x45')]);return db[_0x4402('0x2e')]['find'](_0x28e810)[_0x4402('0x25')](handleEntityNotFound(_0x11ba62,null))[_0x4402('0x25')](respondWithResult(_0x11ba62,null))[_0x4402('0x40')](handleError(_0x11ba62,null));};exports[_0x4402('0x46')]=function(_0x2821cd,_0x9ba9c6){return db[_0x4402('0x2e')]['create'](_0x2821cd[_0x4402('0x47')],{})['then'](function(_0x2cc265){var _0xaedd43=_0x2821cd[_0x4402('0x48')][_0x4402('0x27')]({'plain':!![]});if(!_0xaedd43)throw new Error(_0x4402('0x49'));if(_0xaedd43['role']===_0x4402('0x48')){var _0x3a0846=_0x2cc265[_0x4402('0x27')]({'plain':!![]});var _0x1ed8d6=_0x4402('0x4a');return db[_0x4402('0x4b')]['find']({'where':{'name':_0x1ed8d6,'userProfileId':_0xaedd43[_0x4402('0x4c')]},'raw':!![]})[_0x4402('0x25')](function(_0x3ba284){if(_0x3ba284&&_0x3ba284[_0x4402('0x4d')]===0x0){return db[_0x4402('0x29')][_0x4402('0x46')]({'name':_0x3a0846['name'],'resourceId':_0x3a0846['id'],'type':'DefaultReports','sectionId':_0x3ba284['id']},{})['then'](function(){return _0x2cc265;});}else{return _0x2cc265;}})[_0x4402('0x40')](function(_0x48f408){logger['error'](_0x4402('0x4e'),_0x48f408);throw _0x48f408;});}return _0x2cc265;})[_0x4402('0x25')](respondWithResult(_0x9ba9c6,0xc9))[_0x4402('0x40')](handleError(_0x9ba9c6,null));};exports['update']=function(_0x277107,_0x1c6149){if(_0x277107[_0x4402('0x47')]['id']){delete _0x277107[_0x4402('0x47')]['id'];}return db[_0x4402('0x2e')][_0x4402('0x4f')]({'where':{'id':_0x277107[_0x4402('0x42')]['id']}})[_0x4402('0x25')](handleEntityNotFound(_0x1c6149,null))[_0x4402('0x25')](saveUpdates(_0x277107[_0x4402('0x47')],null))['then'](respondWithResult(_0x1c6149,null))[_0x4402('0x40')](handleError(_0x1c6149,null));};exports['destroy']=function(_0x1d7cf2,_0x28612c){return db[_0x4402('0x2e')][_0x4402('0x4f')]({'where':{'id':_0x1d7cf2['params']['id']}})[_0x4402('0x25')](handleEntityNotFound(_0x28612c,null))[_0x4402('0x25')](removeEntity(_0x28612c,null))[_0x4402('0x40')](handleError(_0x28612c,null));};exports[_0x4402('0x50')]=function(_0x536642,_0x54656c){var _0xa64302=0xa;var _0x2f926d=[_0x4402('0x51'),'left_join',_0x4402('0x52'),_0x4402('0x53')];var _0x305dea={'SUM':_0x4402('0x54'),'COUNT':_0x4402('0x55'),'COUNT DISTINCT':'COUNT(DISTINCT\x20%s)','MAX':'MAX(%s)','MIN':_0x4402('0x56'),'AVG':'AVG(%s)','GROUP_CONCAT':'GROUP_CONCAT(%s)','GROUP_CONCAT ASC':'GROUP_CONCAT(%s\x20ORDER\x20BY\x20%s\x20ASC)','GROUP_CONCAT DESC':'GROUP_CONCAT(%s\x20ORDER\x20BY\x20%s\x20DESC)'};var _0x5c6fe7={'SEC_TO_TIME':_0x4402('0x57'),'DATE':_0x4402('0x58'),'HOUR':_0x4402('0x59'),'ROUND':_0x4402('0x5a'),'UNIX_TIMESTAMP':_0x4402('0x5b')};var _0x4f10ec=function(_0x15f24a){return!_[_0x4402('0x5c')]([_0x4402('0x5d'),_0x4402('0x5e'),_0x4402('0x5f'),_0x4402('0x60')],_0x15f24a);};var _0xc31333=function(_0x399584){if(!_0x399584||!_0x399584[_0x4402('0x61')][_0x4402('0x37')]){return'';}for(var _0x150436='(',_0x421189=0x0;_0x421189<_0x399584[_0x4402('0x61')][_0x4402('0x37')];_0x421189+=0x1){_0x421189>0x0&&(_0x150436+='\x20'+_0x399584[_0x4402('0x62')]+'\x20');_0x150436+=_0x399584[_0x4402('0x61')][_0x421189][_0x4402('0x63')]?_0xc31333(_0x399584[_0x4402('0x61')][_0x421189]['group']):_0x399584[_0x4402('0x61')][_0x421189]['field']+'\x20'+_0x399584['rules'][_0x421189]['condition']+(_0x4f10ec(_0x399584[_0x4402('0x61')][_0x421189][_0x4402('0x64')])?'\x20'+_0x399584[_0x4402('0x61')][_0x421189][_0x4402('0x65')]:'');}return _0x150436+')';};var _0x2e8c2d={'where':{'id':_0x536642[_0x4402('0x42')]['id']}},_0x50ee55,_0x559db1,_0x57729e,_0x1bde61,_0x5c5ecf;_0x2e8c2d=_[_0x4402('0x3c')]({},_0x2e8c2d,_0x536642['options']);return db[_0x4402('0x2e')][_0x4402('0x4f')](_0x2e8c2d)['then'](function(_0x4a9f16){if(_0x4a9f16){_0x50ee55=_0x4a9f16;return _0x4a9f16['getFields']();}return null;})['then'](function(_0x133613){if(_0x133613){if(!_0x133613[_0x4402('0x37')]){throw new db[(_0x4402('0x66'))][(_0x4402('0x67'))](_0x4402('0x68'),0x193);}_0x559db1=_0x133613;return db[_0x4402('0x69')][_0x4402('0x6a')]({'raw':!![]});}return null;})['then'](function(_0x424829){if(_0x424829){_0x57729e=_[_0x4402('0x6b')](_0x424829,'id');var _0x402c4d;var _0x4858d4=squel['select']();_0x4858d4[_0x4402('0x6c')](_0x50ee55['table']);for(var _0x58639d=0x0;_0x58639d<_0x559db1['length'];_0x58639d+=0x1){_0x402c4d=_0x559db1[_0x58639d][_0x4402('0x6d')]?_0x57729e[_0x559db1[_0x58639d][_0x4402('0x6d')]]['metric']:_0x559db1[_0x58639d][_0x4402('0x6e')];_0x402c4d=_0x559db1[_0x58639d]['function']?_[_0x4402('0x6f')](_0x305dea[_0x559db1[_0x58639d][_0x4402('0x70')]],'%s',_0x402c4d):_0x402c4d;_0x402c4d=_0x559db1[_0x58639d][_0x4402('0x71')]?_[_0x4402('0x6f')](_0x5c6fe7[_0x559db1[_0x58639d][_0x4402('0x71')]],'%s',_0x402c4d):_0x402c4d;if(_0x559db1[_0x58639d]['groupBy']){_0x4858d4[_0x4402('0x63')](_0x402c4d);}_0x559db1[_0x58639d]['orderBy']&&_0x4858d4['order'](_0x402c4d,_0x559db1[_0x58639d][_0x4402('0x72')]===_0x4402('0x73')?![]:!![]);_0x4858d4[_0x4402('0x6e')](_0x402c4d,_0x559db1[_0x58639d][_0x4402('0x74')]||_0x402c4d);}if(_0x50ee55[_0x4402('0x75')]){_0x50ee55[_0x4402('0x75')]=JSON[_0x4402('0x76')](_0x50ee55['joins']);for(var _0x4d448c=0x0;_0x4d448c<_0x50ee55[_0x4402('0x75')][_0x4402('0x37')];_0x4d448c+=0x1){if(_0x50ee55[_0x4402('0x75')][_0x4d448c][_0x4402('0x3d')]&&_[_0x4402('0x5c')](_0x2f926d,_0x50ee55[_0x4402('0x75')][_0x4d448c][_0x4402('0x3d')])&&_0x50ee55[_0x4402('0x75')][_0x4d448c][_0x4402('0x77')]&&_0x50ee55[_0x4402('0x75')][_0x4d448c][_0x4402('0x78')]&&_0x50ee55[_0x4402('0x75')][_0x4d448c][_0x4402('0x79')]){_0x4858d4[_0x50ee55[_0x4402('0x75')][_0x4d448c][_0x4402('0x3d')]](_0x50ee55[_0x4402('0x75')][_0x4d448c][_0x4402('0x78')],null,util[_0x4402('0x71')](_0x4402('0x7a'),_0x50ee55[_0x4402('0x7b')],_0x50ee55[_0x4402('0x75')][_0x4d448c][_0x4402('0x77')],_0x50ee55['joins'][_0x4d448c][_0x4402('0x78')],_0x50ee55[_0x4402('0x75')][_0x4d448c][_0x4402('0x79')]));}}}if(_0x50ee55[_0x4402('0x7c')]){_0x50ee55[_0x4402('0x7c')]=JSON['parse'](_0x50ee55[_0x4402('0x7c')]);_0x4858d4[_0x4402('0x3a')](_0xc31333(_0x50ee55[_0x4402('0x7c')][_0x4402('0x63')]));}_0x5c5ecf=_0x4858d4[_0x4402('0x7d')]();_0x4858d4[_0x4402('0x20')](_0xa64302);_0x4858d4[_0x4402('0x1f')](0x0);logger['debug'](_0x4402('0x7e'),_0x4858d4[_0x4402('0x7f')]());return db['sequelize'][_0x4402('0x32')](_0x4858d4[_0x4402('0x7f')](),{'type':db[_0x4402('0x80')][_0x4402('0x81')][_0x4402('0x82')]});}})['then'](respondWithResult(_0x54656c,null))['catch'](handleError(_0x54656c,null));};function runReport(_0x5365ab,_0x1d94f4,_0x9c984){var _0x1b79c6=_0x1d94f4[_0x4402('0x2b')];var _0x173d57=0xa;var _0x1d391c=[_0x4402('0x51'),_0x4402('0x83'),_0x4402('0x52'),'cross_join'];var _0x2583e5={'SUM':_0x4402('0x54'),'COUNT':'COUNT(%s)','COUNT DISTINCT':_0x4402('0x84'),'MAX':_0x4402('0x85'),'MIN':_0x4402('0x56'),'AVG':_0x4402('0x86'),'GROUP_CONCAT':_0x4402('0x87'),'GROUP_CONCAT ASC':_0x4402('0x88'),'GROUP_CONCAT DESC':_0x4402('0x89')};var _0x3ec130={'SEC_TO_TIME':'SEC_TO_TIME(%s)','DATE':_0x4402('0x58'),'HOUR':_0x4402('0x59'),'ROUND':_0x4402('0x5a'),'UNIX_TIMESTAMP':_0x4402('0x5b')};var _0x1b0980=function(_0x26d7a9){return!_[_0x4402('0x5c')](['IS\x20NULL','IS\x20NOT\x20NULL','IS\x20EMPTY','IS\x20NOT\x20EMPTY'],_0x26d7a9);};var _0x51b54a=function(_0x21d544){if(!_0x21d544||!_0x21d544['rules'][_0x4402('0x37')]){return'';}for(var _0x191a40='(',_0x4d8498=0x0;_0x4d8498<_0x21d544[_0x4402('0x61')][_0x4402('0x37')];_0x4d8498+=0x1){_0x4d8498>0x0&&(_0x191a40+='\x20'+_0x21d544[_0x4402('0x62')]+'\x20');_0x191a40+=_0x21d544['rules'][_0x4d8498][_0x4402('0x63')]?_0x51b54a(_0x21d544[_0x4402('0x61')][_0x4d8498][_0x4402('0x63')]):_0x21d544[_0x4402('0x61')][_0x4d8498][_0x4402('0x6e')]+'\x20'+_0x21d544[_0x4402('0x61')][_0x4d8498][_0x4402('0x64')]+(_0x1b0980(_0x21d544['rules'][_0x4d8498][_0x4402('0x64')])?'\x20'+_0x21d544['rules'][_0x4d8498][_0x4402('0x65')]:'');}return _0x191a40+')';};var _0x41b75d={'where':{'id':_0x5365ab['id']}},_0x2bd2f2,_0x4df828,_0x3e1e80,_0x176b3f,_0xc3c7fe;_0x41b75d=_[_0x4402('0x3c')]({},_0x41b75d,_0x9c984);return db[_0x4402('0x2e')][_0x4402('0x4f')](_0x41b75d)[_0x4402('0x25')](function(_0x11b1aa){if(_0x11b1aa){_0x2bd2f2=_0x11b1aa;return _0x11b1aa[_0x4402('0x8a')]();}return null;})[_0x4402('0x25')](function(_0x7ae123){if(_0x7ae123){if(!_0x7ae123[_0x4402('0x37')]){throw new db[(_0x4402('0x66'))][(_0x4402('0x67'))](_0x4402('0x68'),0x193);}_0x4df828=_0x7ae123;return db['AnalyticMetric'][_0x4402('0x6a')]({'raw':!![]});}return null;})[_0x4402('0x25')](function(_0xd59b4d){if(_0xd59b4d){_0x3e1e80=_['keyBy'](_0xd59b4d,'id');var _0x2a501a;var _0x2bbc0c=squel['select']();_0x2bbc0c[_0x4402('0x6c')](_0x2bd2f2[_0x4402('0x7b')]);for(var _0x5a2e33=0x0;_0x5a2e33<_0x4df828[_0x4402('0x37')];_0x5a2e33+=0x1){_0x2a501a=_0x4df828[_0x5a2e33][_0x4402('0x6d')]?_0x3e1e80[_0x4df828[_0x5a2e33]['MetricId']]['metric']:_0x4df828[_0x5a2e33]['field'];_0x2a501a=_0x4df828[_0x5a2e33][_0x4402('0x70')]?_[_0x4402('0x6f')](_0x2583e5[_0x4df828[_0x5a2e33]['function']],'%s',_0x2a501a):_0x2a501a;_0x2a501a=_0x4df828[_0x5a2e33][_0x4402('0x71')]?_['replace'](_0x3ec130[_0x4df828[_0x5a2e33]['format']],'%s',_0x2a501a):_0x2a501a;if(_0x4df828[_0x5a2e33][_0x4402('0x8b')]){_0x2bbc0c[_0x4402('0x63')](_0x2a501a);}_0x4df828[_0x5a2e33][_0x4402('0x72')]&&_0x2bbc0c[_0x4402('0x8c')](_0x2a501a,_0x4df828[_0x5a2e33][_0x4402('0x72')]===_0x4402('0x73')?![]:!![]);_0x2bbc0c[_0x4402('0x6e')](_0x2a501a,_0x4df828[_0x5a2e33]['alias']||_0x2a501a);}if(_0x2bd2f2[_0x4402('0x75')]){_0x2bd2f2[_0x4402('0x75')]=JSON[_0x4402('0x76')](_0x2bd2f2[_0x4402('0x75')]);for(var _0x1d393d=0x0;_0x1d393d<_0x2bd2f2[_0x4402('0x75')]['length'];_0x1d393d+=0x1){if(_0x2bd2f2['joins'][_0x1d393d][_0x4402('0x3d')]&&_[_0x4402('0x5c')](_0x1d391c,_0x2bd2f2['joins'][_0x1d393d][_0x4402('0x3d')])&&_0x2bd2f2[_0x4402('0x75')][_0x1d393d][_0x4402('0x77')]&&_0x2bd2f2[_0x4402('0x75')][_0x1d393d][_0x4402('0x78')]&&_0x2bd2f2[_0x4402('0x75')][_0x1d393d][_0x4402('0x79')]){_0x2bbc0c[_0x2bd2f2[_0x4402('0x75')][_0x1d393d]['type']](_0x2bd2f2[_0x4402('0x75')][_0x1d393d]['foreignTable'],null,util[_0x4402('0x71')](_0x4402('0x7a'),_0x2bd2f2[_0x4402('0x7b')],_0x2bd2f2[_0x4402('0x75')][_0x1d393d][_0x4402('0x77')],_0x2bd2f2['joins'][_0x1d393d][_0x4402('0x78')],_0x2bd2f2['joins'][_0x1d393d][_0x4402('0x79')]));}}}if(_0x2bd2f2[_0x4402('0x7c')]){_0x2bd2f2[_0x4402('0x7c')]=JSON['parse'](_0x2bd2f2[_0x4402('0x7c')]);_0x2bbc0c[_0x4402('0x3a')](_0x51b54a(_0x2bd2f2[_0x4402('0x7c')][_0x4402('0x63')]));}_0xc3c7fe=_0x2bbc0c[_0x4402('0x7d')]();_0x2bbc0c[_0x4402('0x20')](_0x173d57);_0x2bbc0c[_0x4402('0x1f')](0x0);logger['debug'](_0x4402('0x7e'),_0x2bbc0c[_0x4402('0x7f')]());return db[_0x4402('0x80')]['query'](_0x2bbc0c['toString'](),{'type':db['sequelize'][_0x4402('0x81')][_0x4402('0x82')]});}})[_0x4402('0x25')](function(_0x316e63){if(!_0x316e63[_0x4402('0x37')]){throw new db[(_0x4402('0x66'))][(_0x4402('0x67'))](_0x4402('0x8d'),0xcc);}if(_0x1d94f4[_0x4402('0x8e')]===_0x4402('0x8f')){return null;}var _0x1f5935=_[_0x4402('0x3c')](_0x1d94f4,{'name':_0x1d94f4[_0x4402('0x90')]||_0x1d94f4[_0x4402('0x2b')]||_0x2bd2f2[_0x4402('0x2b')],'basename':_0x1b79c6,'savename':util['format'](_0x4402('0x91'),_0x1d94f4['name']||_0x2bd2f2[_0x4402('0x2b')],require(_0x4402('0x92'))[_0x4402('0x93')](0x4),_0x1d94f4[_0x4402('0x8e')]||_0x4402('0x94')),'reportId':_0x2bd2f2['id'],'reportType':_0x4402('0x95')});return db[_0x4402('0x96')][_0x4402('0x46')](_0x1f5935,{'raw':!![]});})[_0x4402('0x25')](function(_0x31655e){if(_0x2bd2f2[_0x4402('0x7b')]===_0x4402('0x97')){_0xc3c7fe[_0x4402('0x3a')](_0x2bd2f2[_0x4402('0x7b')]+_0x4402('0x98'),_0x1d94f4[_0x4402('0x99')],_0x1d94f4[_0x4402('0x9a')]);}else{_0xc3c7fe['where'](_0x2bd2f2[_0x4402('0x7b')]+_0x4402('0x9b'),_0x1d94f4[_0x4402('0x99')],_0x1d94f4['endDate']);}if(_0x31655e){logger['info'](_0x4402('0x9c'),_0xc3c7fe[_0x4402('0x7f')]());require(_0x4402('0x9d'))[_0x4402('0x9e')](path[_0x4402('0x51')](__dirname,'../../components/export/',_0x31655e[_0x4402('0x8e')]),[_0x31655e['id'],_0xc3c7fe['toString'](),path['join'](__dirname,_0x4402('0x9f'),_0x31655e['savename']),_0x1b79c6]);return _0x31655e;}else{var _0x2a1955=squel[_0x4402('0xa0')]();_0x2a1955[_0x4402('0x6c')]('('+_0xc3c7fe[_0x4402('0x7f')]()+')','countTable');_0x2a1955[_0x4402('0x6e')]('COUNT(*)',_0x4402('0x1e'));_0xc3c7fe[_0x4402('0x20')](_0x1d94f4[_0x4402('0x20')]||_0x173d57);_0xc3c7fe[_0x4402('0x1f')](_0x1d94f4[_0x4402('0x1f')]||0x0);return db[_0x4402('0x80')]['query'](_0x2a1955[_0x4402('0x7f')](),{'type':db['sequelize'][_0x4402('0x81')][_0x4402('0x82')]})[_0x4402('0x25')](function(_0x349f0d){if(!_0x349f0d[_0x4402('0x37')]){_0x176b3f=0x0;}else{_0x176b3f=_0x349f0d[0x0][_0x4402('0x1e')]||0x0;}return db[_0x4402('0x80')][_0x4402('0x32')](_0xc3c7fe[_0x4402('0x7f')](),{'type':db[_0x4402('0x80')]['QueryTypes'][_0x4402('0x82')]});})[_0x4402('0x25')](function(_0x1a14c4){return{'rows':_0x1a14c4||[],'count':_0x176b3f};});}});}exports[_0x4402('0xa1')]=function(_0x19ace3,_0x38b045){return runReport(_0x19ace3[_0x4402('0x42')],_0x19ace3['query'],_0x19ace3[_0x4402('0x45')])[_0x4402('0x25')](respondWithResult(_0x38b045,null))['catch'](handleError(_0x38b045,null));};exports[_0x4402('0xa2')]=runReport;exports['query']=function(_0x16bd05,_0x9bde19){var _0x6288b1=0xa;var _0x197729=[_0x4402('0x51'),_0x4402('0x83'),_0x4402('0x52'),_0x4402('0x53')];var _0x25737b={'SUM':_0x4402('0x54'),'COUNT':_0x4402('0x55'),'COUNT DISTINCT':'COUNT(DISTINCT\x20%s)','MAX':'MAX(%s)','MIN':_0x4402('0x56'),'AVG':_0x4402('0x86'),'GROUP_CONCAT':_0x4402('0x87'),'GROUP_CONCAT ASC':_0x4402('0x88'),'GROUP_CONCAT DESC':'GROUP_CONCAT(%s\x20ORDER\x20BY\x20%s\x20DESC)'};var _0x3558a8={'SEC_TO_TIME':'SEC_TO_TIME(%s)','DATE':_0x4402('0x58'),'HOUR':_0x4402('0x59'),'ROUND':_0x4402('0x5a'),'UNIX_TIMESTAMP':_0x4402('0x5b')};var _0x1034a1=function(_0x2ba297){return!_['includes']([_0x4402('0x5d'),'IS\x20NOT\x20NULL',_0x4402('0x5f'),'IS\x20NOT\x20EMPTY'],_0x2ba297);};var _0x2a794a=function(_0x4aed9b){if(!_0x4aed9b||!_0x4aed9b[_0x4402('0x61')][_0x4402('0x37')]){return'';}for(var _0x1fb295='(',_0x5c9a46=0x0;_0x5c9a46<_0x4aed9b[_0x4402('0x61')][_0x4402('0x37')];_0x5c9a46+=0x1){_0x5c9a46>0x0&&(_0x1fb295+='\x20'+_0x4aed9b[_0x4402('0x62')]+'\x20');_0x1fb295+=_0x4aed9b[_0x4402('0x61')][_0x5c9a46][_0x4402('0x63')]?_0x2a794a(_0x4aed9b[_0x4402('0x61')][_0x5c9a46]['group']):_0x4aed9b[_0x4402('0x61')][_0x5c9a46][_0x4402('0x6e')]+'\x20'+_0x4aed9b[_0x4402('0x61')][_0x5c9a46][_0x4402('0x64')]+(_0x1034a1(_0x4aed9b['rules'][_0x5c9a46]['condition'])?'\x20'+_0x4aed9b[_0x4402('0x61')][_0x5c9a46]['value']:'');}return _0x1fb295+')';};var _0x466ecc={'where':{'id':_0x16bd05['params']['id']}},_0xd26934,_0xc9af19,_0x524be6,_0x2d5e67,_0x5cb717;_0x466ecc=_['merge']({},_0x466ecc,_0x16bd05[_0x4402('0x45')]);return db['AnalyticDefaultReport'][_0x4402('0x4f')](_0x466ecc)[_0x4402('0x25')](function(_0x128288){if(_0x128288){_0xd26934=_0x128288;return _0x128288['getFields']();}return null;})[_0x4402('0x25')](function(_0x1cf1c9){if(_0x1cf1c9){if(!_0x1cf1c9['length']){throw new db[(_0x4402('0x66'))][(_0x4402('0x67'))](_0x4402('0x68'),0x193);}_0xc9af19=_0x1cf1c9;return db[_0x4402('0x69')][_0x4402('0x6a')]({'raw':!![]});}return null;})[_0x4402('0x25')](function(_0x3aa223){if(_0x3aa223){_0x524be6=_['keyBy'](_0x3aa223,'id');var _0x59cc1b;var _0x1b644f=squel[_0x4402('0xa0')]();_0x1b644f[_0x4402('0x6c')](_0xd26934[_0x4402('0x7b')]);for(var _0xc0974f=0x0;_0xc0974f<_0xc9af19[_0x4402('0x37')];_0xc0974f+=0x1){_0x59cc1b=_0xc9af19[_0xc0974f]['MetricId']?_0x524be6[_0xc9af19[_0xc0974f][_0x4402('0x6d')]]['metric']:_0xc9af19[_0xc0974f][_0x4402('0x6e')];_0x59cc1b=_0xc9af19[_0xc0974f]['function']?_[_0x4402('0x6f')](_0x25737b[_0xc9af19[_0xc0974f]['function']],'%s',_0x59cc1b):_0x59cc1b;_0x59cc1b=_0xc9af19[_0xc0974f]['format']?_[_0x4402('0x6f')](_0x3558a8[_0xc9af19[_0xc0974f][_0x4402('0x71')]],'%s',_0x59cc1b):_0x59cc1b;if(_0xc9af19[_0xc0974f][_0x4402('0x8b')]){_0x1b644f['group'](_0x59cc1b);}_0xc9af19[_0xc0974f][_0x4402('0x72')]&&_0x1b644f[_0x4402('0x8c')](_0x59cc1b,_0xc9af19[_0xc0974f]['orderBy']==='DESC'?![]:!![]);_0x1b644f['field'](_0x59cc1b,_0xc9af19[_0xc0974f][_0x4402('0x74')]||_0x59cc1b);}if(_0xd26934['joins']){_0xd26934[_0x4402('0x75')]=JSON[_0x4402('0x76')](_0xd26934[_0x4402('0x75')]);for(var _0x43423f=0x0;_0x43423f<_0xd26934[_0x4402('0x75')][_0x4402('0x37')];_0x43423f+=0x1){if(_0xd26934['joins'][_0x43423f][_0x4402('0x3d')]&&_[_0x4402('0x5c')](_0x197729,_0xd26934[_0x4402('0x75')][_0x43423f][_0x4402('0x3d')])&&_0xd26934[_0x4402('0x75')][_0x43423f][_0x4402('0x77')]&&_0xd26934[_0x4402('0x75')][_0x43423f][_0x4402('0x78')]&&_0xd26934[_0x4402('0x75')][_0x43423f][_0x4402('0x79')]){_0x1b644f[_0xd26934['joins'][_0x43423f]['type']](_0xd26934[_0x4402('0x75')][_0x43423f][_0x4402('0x78')],null,util[_0x4402('0x71')](_0x4402('0x7a'),_0xd26934[_0x4402('0x7b')],_0xd26934['joins'][_0x43423f][_0x4402('0x77')],_0xd26934[_0x4402('0x75')][_0x43423f]['foreignTable'],_0xd26934[_0x4402('0x75')][_0x43423f][_0x4402('0x79')]));}}}if(_0xd26934[_0x4402('0x7c')]){_0xd26934['conditions']=JSON[_0x4402('0x76')](_0xd26934[_0x4402('0x7c')]);_0x1b644f[_0x4402('0x3a')](_0x2a794a(_0xd26934[_0x4402('0x7c')][_0x4402('0x63')]));}_0x5cb717=_0x1b644f[_0x4402('0x7d')]();_0x1b644f[_0x4402('0x20')](_0x6288b1);_0x1b644f['offset'](0x0);logger[_0x4402('0xa3')](_0x4402('0x7e'),_0x1b644f[_0x4402('0x7f')]());return db[_0x4402('0x80')][_0x4402('0x32')](_0x1b644f[_0x4402('0x7f')](),{'type':db['sequelize'][_0x4402('0x81')][_0x4402('0x82')]});}})[_0x4402('0x25')](function(){return{'sql':_0x5cb717['toString']()};})[_0x4402('0x25')](respondWithResult(_0x9bde19,null))['catch'](handleError(_0x9bde19,null));};