Built motion from commit (unavailable).|2.5.2
[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 _0x31af=['then','get','DefaultReports','stack','name','send','index','map','AnalyticDefaultReport','rawAttributes','fieldName','type','key','model','query','filters','intersection','attributes','fields','limit','order','sort','where','pick','filter','merge','options','include','rows','catch','params','keys','length','includeAll','create','body','user','role','Reports','UserProfileSection','find','autoAssociation','UserProfileResource','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','preview','left_join','right_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)','DATE(%s)','HOUR(%s)','ROUND(%s)','UNIX_TIMESTAMP(%s)','includes','IS\x20NULL','IS\x20NOT\x20NULL','IS\x20NOT\x20EMPTY','rules','operator','group','field','condition','value','Sequelize','ValidationErrorItem','Please\x20insert\x20at\x20least\x20one\x20field','AnalyticMetric','findAll','keyBy','select','from','MetricId','metric','function','format','groupBy','orderBy','DESC','joins','parse','parentKey','foreignKey','foreignTable','%s.%s\x20=\x20%s.%s','table','conditions','toString','sequelize','QueryTypes','SELECT','join','COUNT(%s)','MAX(%s)','IS\x20EMPTY','getFields','clone','debug','Limited\x20Query:','No\x20available\x20data','output','web','fullPath','%s-%s.%s','randomstring','generate','csv','default','cdr','.calldate\x20BETWEEN\x20?\x20AND\x20?','startDate','info','Run\x20Query:','fork','../../components/export/','../../files/reports','countTable','COUNT(*)','run','SEC_TO_TIME(%s)','replace','alias','html-pdf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','util','sox','ejs','lodash','squel','crypto','desk.js','to-csv','querystring','papaparse','ioredis','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','../../mysqldb','dbH','sendStatus','status','end','json','count','offset','Content-Range','apply','reject','save','update','destroy'];(function(_0x465a0c,_0x19d4d5){var _0x1e202e=function(_0x27bd8a){while(--_0x27bd8a){_0x465a0c['push'](_0x465a0c['shift']());}};_0x1e202e(++_0x19d4d5);}(_0x31af,0x7f));var _0xf31a=function(_0x1f869b,_0x416b00){_0x1f869b=_0x1f869b-0x0;var _0x581c6b=_0x31af[_0x1f869b];return _0x581c6b;};'use strict';var pdf=require(_0xf31a('0x0'));var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require(_0xf31a('0x1'));var jsonpatch=require(_0xf31a('0x2'));var rp=require(_0xf31a('0x3'));var moment=require('moment');var BPromise=require(_0xf31a('0x4'));var Mustache=require(_0xf31a('0x5'));var util=require(_0xf31a('0x6'));var path=require('path');var sox=require(_0xf31a('0x7'));var csv=require('to-csv');var ejs=require(_0xf31a('0x8'));var fs=require('fs');var _=require(_0xf31a('0x9'));var squel=require(_0xf31a('0xa'));var crypto=require(_0xf31a('0xb'));var jsforce=require('jsforce');var deskjs=require(_0xf31a('0xc'));var toCsv=require(_0xf31a('0xd'));var querystring=require(_0xf31a('0xe'));var Papa=require(_0xf31a('0xf'));var Redis=require(_0xf31a('0x10'));var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require(_0xf31a('0x11'));var hardwareService=require(_0xf31a('0x12'));var logger=require('../../config/logger')(_0xf31a('0x13'));var utils=require(_0xf31a('0x14'));var config=require(_0xf31a('0x15'));var db=require(_0xf31a('0x16'))['db'];var dbH=require(_0xf31a('0x16'))[_0xf31a('0x17')];function respondWithStatusCode(_0x3200da,_0x3061aa){_0x3061aa=_0x3061aa||0xcc;return function(_0x26808c){if(_0x26808c){return _0x3200da[_0xf31a('0x18')](_0x3061aa);}return _0x3200da[_0xf31a('0x19')](_0x3061aa)[_0xf31a('0x1a')]();};}function respondWithResult(_0x356289,_0x2b497e){_0x2b497e=_0x2b497e||0xc8;return function(_0x306691){if(_0x306691){return _0x356289[_0xf31a('0x19')](_0x2b497e)[_0xf31a('0x1b')](_0x306691);}};}function respondWithFilteredResult(_0x55b6b6,_0x3126ad){return function(_0x5ef28b){if(_0x5ef28b){var _0x176b18=_0x5ef28b[_0xf31a('0x1c')],_0x15d0bd=_0x3126ad['offset'],_0x23fbb0=_0x3126ad[_0xf31a('0x1d')]+_0x3126ad['limit'],_0x2cc1ee;if(_0x23fbb0>=_0x176b18){_0x23fbb0=_0x176b18;_0x2cc1ee=0xc8;}else{_0x2cc1ee=0xce;}_0x55b6b6['status'](_0x2cc1ee);return _0x55b6b6['set'](_0xf31a('0x1e'),_0x15d0bd+'-'+_0x23fbb0+'/'+_0x176b18)[_0xf31a('0x1b')](_0x5ef28b);}return null;};}function patchUpdates(_0x1ea515){return function(_0x998dba){try{jsonpatch[_0xf31a('0x1f')](_0x998dba,_0x1ea515,!![]);}catch(_0x1072fc){return BPromise[_0xf31a('0x20')](_0x1072fc);}return _0x998dba[_0xf31a('0x21')]();};}function saveUpdates(_0x655035,_0x1f8975){return function(_0x47dd49){if(_0x47dd49){return _0x47dd49[_0xf31a('0x22')](_0x655035)['then'](function(_0x282ba5){return _0x282ba5;});}return null;};}function removeEntity(_0x2eb6a2,_0xd19e63){return function(_0x1859a8){if(_0x1859a8){return _0x1859a8[_0xf31a('0x23')]()[_0xf31a('0x24')](function(){var _0x3420e4=_0x1859a8[_0xf31a('0x25')]({'plain':!![]});var _0x82b9dc=_0xf31a('0x26');return db['UserProfileResource'][_0xf31a('0x23')]({'where':{'type':_0x82b9dc,'resourceId':_0x3420e4['id']}})['then'](function(){return _0x1859a8;});})['then'](function(){_0x2eb6a2[_0xf31a('0x19')](0xcc)[_0xf31a('0x1a')]();});}};}function handleEntityNotFound(_0x13e74e,_0x96279c){return function(_0x3bda34){if(!_0x3bda34){_0x13e74e[_0xf31a('0x18')](0x194);}return _0x3bda34;};}function handleError(_0x3efa76,_0x4a2798){_0x4a2798=_0x4a2798||0x1f4;return function(_0xb17cc){logger['error'](_0xb17cc[_0xf31a('0x27')]);if(_0xb17cc[_0xf31a('0x28')]){delete _0xb17cc[_0xf31a('0x28')];}_0x3efa76['status'](_0x4a2798)[_0xf31a('0x29')](_0xb17cc);};}exports[_0xf31a('0x2a')]=function(_0x17ce57,_0x2bb836){var _0x4579d6={},_0xf45692={},_0x385a9b={'count':0x0,'rows':[]};var _0x2f9b70=_[_0xf31a('0x2b')](db[_0xf31a('0x2c')][_0xf31a('0x2d')],function(_0x3a8989){return{'name':_0x3a8989[_0xf31a('0x2e')],'type':_0x3a8989[_0xf31a('0x2f')][_0xf31a('0x30')]};});_0xf45692[_0xf31a('0x31')]=_[_0xf31a('0x2b')](_0x2f9b70,_0xf31a('0x28'));_0xf45692['query']=_['keys'](_0x17ce57[_0xf31a('0x32')]);_0xf45692[_0xf31a('0x33')]=_[_0xf31a('0x34')](_0xf45692['model'],_0xf45692[_0xf31a('0x32')]);_0x4579d6[_0xf31a('0x35')]=_['intersection'](_0xf45692[_0xf31a('0x31')],qs[_0xf31a('0x36')](_0x17ce57[_0xf31a('0x32')]['fields']));_0x4579d6['attributes']=_0x4579d6[_0xf31a('0x35')]['length']?_0x4579d6[_0xf31a('0x35')]:_0xf45692[_0xf31a('0x31')];if(!_0x17ce57['query']['hasOwnProperty']('nolimit')){_0x4579d6[_0xf31a('0x37')]=qs[_0xf31a('0x37')](_0x17ce57[_0xf31a('0x32')][_0xf31a('0x37')]);_0x4579d6[_0xf31a('0x1d')]=qs['offset'](_0x17ce57[_0xf31a('0x32')][_0xf31a('0x1d')]);}_0x4579d6[_0xf31a('0x38')]=qs[_0xf31a('0x39')](_0x17ce57['query'][_0xf31a('0x39')]);_0x4579d6[_0xf31a('0x3a')]=qs[_0xf31a('0x33')](_[_0xf31a('0x3b')](_0x17ce57[_0xf31a('0x32')],_0xf45692[_0xf31a('0x33')]),_0x2f9b70);if(_0x17ce57[_0xf31a('0x32')][_0xf31a('0x3c')]){_0x4579d6[_0xf31a('0x3a')]=_[_0xf31a('0x3d')](_0x4579d6['where'],{'$or':_[_0xf31a('0x2b')](_0x2f9b70,function(_0x2e87e4){if(_0x2e87e4[_0xf31a('0x2f')]!=='VIRTUAL'){var _0x5a371d={};_0x5a371d[_0x2e87e4[_0xf31a('0x28')]]={'$like':'%'+_0x17ce57[_0xf31a('0x32')][_0xf31a('0x3c')]+'%'};return _0x5a371d;}})});}_0x4579d6=_[_0xf31a('0x3d')]({},_0x4579d6,_0x17ce57[_0xf31a('0x3e')]);var _0x56ac81={'where':_0x4579d6[_0xf31a('0x3a')]};return db['AnalyticDefaultReport']['count'](_0x56ac81)[_0xf31a('0x24')](function(_0x27f95e){_0x385a9b[_0xf31a('0x1c')]=_0x27f95e;if(_0x17ce57['query']['includeAll']){_0x4579d6[_0xf31a('0x3f')]=[{'all':!![]}];}return db[_0xf31a('0x2c')]['findAll'](_0x4579d6);})[_0xf31a('0x24')](function(_0x543ac5){_0x385a9b[_0xf31a('0x40')]=_0x543ac5;return _0x385a9b;})[_0xf31a('0x24')](respondWithFilteredResult(_0x2bb836,_0x4579d6))[_0xf31a('0x41')](handleError(_0x2bb836,null));};exports['show']=function(_0x316a83,_0x5a97e5){var _0x1895d2={'raw':!![],'where':{'id':_0x316a83[_0xf31a('0x42')]['id']}},_0x5a5f79={};_0x5a5f79[_0xf31a('0x31')]=_[_0xf31a('0x43')](db[_0xf31a('0x2c')][_0xf31a('0x2d')]);_0x5a5f79[_0xf31a('0x32')]=_[_0xf31a('0x43')](_0x316a83[_0xf31a('0x32')]);_0x5a5f79['filters']=_['intersection'](_0x5a5f79[_0xf31a('0x31')],_0x5a5f79['query']);_0x1895d2[_0xf31a('0x35')]=_[_0xf31a('0x34')](_0x5a5f79[_0xf31a('0x31')],qs[_0xf31a('0x36')](_0x316a83[_0xf31a('0x32')][_0xf31a('0x36')]));_0x1895d2[_0xf31a('0x35')]=_0x1895d2[_0xf31a('0x35')][_0xf31a('0x44')]?_0x1895d2[_0xf31a('0x35')]:_0x5a5f79[_0xf31a('0x31')];if(_0x316a83['query'][_0xf31a('0x45')]){_0x1895d2[_0xf31a('0x3f')]=[{'all':!![]}];}_0x1895d2=_[_0xf31a('0x3d')]({},_0x1895d2,_0x316a83[_0xf31a('0x3e')]);return db['AnalyticDefaultReport']['find'](_0x1895d2)[_0xf31a('0x24')](handleEntityNotFound(_0x5a97e5,null))[_0xf31a('0x24')](respondWithResult(_0x5a97e5,null))[_0xf31a('0x41')](handleError(_0x5a97e5,null));};exports[_0xf31a('0x46')]=function(_0x4c9d77,_0x4aa585){return db['AnalyticDefaultReport'][_0xf31a('0x46')](_0x4c9d77[_0xf31a('0x47')],{})[_0xf31a('0x24')](function(_0x852928){var _0x7971c6=_0x4c9d77[_0xf31a('0x48')][_0xf31a('0x25')]({'plain':!![]});if(!_0x7971c6)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x7971c6[_0xf31a('0x49')]===_0xf31a('0x48')){var _0x44e05a=_0x852928['get']({'plain':!![]});var _0xfdb78f=_0xf31a('0x4a');return db[_0xf31a('0x4b')][_0xf31a('0x4c')]({'where':{'name':_0xfdb78f,'userProfileId':_0x7971c6['userProfileId']},'raw':!![]})['then'](function(_0x9bac44){if(_0x9bac44&&_0x9bac44[_0xf31a('0x4d')]===0x0){return db[_0xf31a('0x4e')][_0xf31a('0x46')]({'name':_0x44e05a[_0xf31a('0x28')],'resourceId':_0x44e05a['id'],'type':_0xf31a('0x26'),'sectionId':_0x9bac44['id']},{})['then'](function(){return _0x852928;});}else{return _0x852928;}})[_0xf31a('0x41')](function(_0x29ddea){logger['error'](_0xf31a('0x4f'),_0x29ddea);throw _0x29ddea;});}return _0x852928;})[_0xf31a('0x24')](respondWithResult(_0x4aa585,0xc9))[_0xf31a('0x41')](handleError(_0x4aa585,null));};exports[_0xf31a('0x22')]=function(_0x1bf306,_0x29d01e){if(_0x1bf306[_0xf31a('0x47')]['id']){delete _0x1bf306['body']['id'];}return db['AnalyticDefaultReport'][_0xf31a('0x4c')]({'where':{'id':_0x1bf306[_0xf31a('0x42')]['id']}})[_0xf31a('0x24')](handleEntityNotFound(_0x29d01e,null))[_0xf31a('0x24')](saveUpdates(_0x1bf306[_0xf31a('0x47')],null))[_0xf31a('0x24')](respondWithResult(_0x29d01e,null))[_0xf31a('0x41')](handleError(_0x29d01e,null));};exports[_0xf31a('0x23')]=function(_0x49f9ee,_0x1be556){return db['AnalyticDefaultReport'][_0xf31a('0x4c')]({'where':{'id':_0x49f9ee[_0xf31a('0x42')]['id']}})[_0xf31a('0x24')](handleEntityNotFound(_0x1be556,null))[_0xf31a('0x24')](removeEntity(_0x1be556,null))[_0xf31a('0x41')](handleError(_0x1be556,null));};exports[_0xf31a('0x50')]=function(_0x446e84,_0x4d693e){var _0x45239e=0xa;var _0x29f1fb=['join',_0xf31a('0x51'),_0xf31a('0x52'),_0xf31a('0x53')];var _0x70b268={'SUM':_0xf31a('0x54'),'COUNT':'COUNT(%s)','COUNT DISTINCT':_0xf31a('0x55'),'MAX':'MAX(%s)','MIN':_0xf31a('0x56'),'AVG':_0xf31a('0x57'),'GROUP_CONCAT':_0xf31a('0x58'),'GROUP_CONCAT ASC':_0xf31a('0x59'),'GROUP_CONCAT DESC':_0xf31a('0x5a')};var _0x4f9634={'SEC_TO_TIME':'SEC_TO_TIME(%s)','DATE':_0xf31a('0x5b'),'HOUR':_0xf31a('0x5c'),'ROUND':_0xf31a('0x5d'),'UNIX_TIMESTAMP':_0xf31a('0x5e')};var _0x5ae860=function(_0x22d1e1){return!_[_0xf31a('0x5f')]([_0xf31a('0x60'),_0xf31a('0x61'),'IS\x20EMPTY',_0xf31a('0x62')],_0x22d1e1);};var _0x23cd27=function(_0x2475fb){if(!_0x2475fb||!_0x2475fb[_0xf31a('0x63')][_0xf31a('0x44')]){return'';}for(var _0xdfff5a='(',_0x1672b=0x0;_0x1672b<_0x2475fb['rules'][_0xf31a('0x44')];_0x1672b+=0x1){_0x1672b>0x0&&(_0xdfff5a+='\x20'+_0x2475fb[_0xf31a('0x64')]+'\x20');_0xdfff5a+=_0x2475fb[_0xf31a('0x63')][_0x1672b]['group']?_0x23cd27(_0x2475fb['rules'][_0x1672b][_0xf31a('0x65')]):_0x2475fb[_0xf31a('0x63')][_0x1672b][_0xf31a('0x66')]+'\x20'+_0x2475fb[_0xf31a('0x63')][_0x1672b][_0xf31a('0x67')]+(_0x5ae860(_0x2475fb[_0xf31a('0x63')][_0x1672b][_0xf31a('0x67')])?'\x20'+_0x2475fb[_0xf31a('0x63')][_0x1672b][_0xf31a('0x68')]:'');}return _0xdfff5a+')';};var _0x43eabf={'where':{'id':_0x446e84[_0xf31a('0x42')]['id']}},_0x36165c,_0x4ebc15,_0x30d4ad,_0x4aa211,_0xf7c061;_0x43eabf=_['merge']({},_0x43eabf,_0x446e84[_0xf31a('0x3e')]);return db[_0xf31a('0x2c')][_0xf31a('0x4c')](_0x43eabf)[_0xf31a('0x24')](function(_0x320dba){if(_0x320dba){_0x36165c=_0x320dba;return _0x320dba['getFields']();}return null;})[_0xf31a('0x24')](function(_0x562126){if(_0x562126){if(!_0x562126[_0xf31a('0x44')]){throw new db[(_0xf31a('0x69'))][(_0xf31a('0x6a'))](_0xf31a('0x6b'),0x193);}_0x4ebc15=_0x562126;return db[_0xf31a('0x6c')][_0xf31a('0x6d')]({'raw':!![]});}return null;})[_0xf31a('0x24')](function(_0x2546e7){if(_0x2546e7){_0x30d4ad=_[_0xf31a('0x6e')](_0x2546e7,'id');var _0x56d9d3;var _0x266a24=squel[_0xf31a('0x6f')]();_0x266a24[_0xf31a('0x70')](_0x36165c['table']);for(var _0x379c53=0x0;_0x379c53<_0x4ebc15[_0xf31a('0x44')];_0x379c53+=0x1){_0x56d9d3=_0x4ebc15[_0x379c53]['MetricId']?_0x30d4ad[_0x4ebc15[_0x379c53][_0xf31a('0x71')]][_0xf31a('0x72')]:_0x4ebc15[_0x379c53][_0xf31a('0x66')];_0x56d9d3=_0x4ebc15[_0x379c53][_0xf31a('0x73')]?_['replace'](_0x70b268[_0x4ebc15[_0x379c53][_0xf31a('0x73')]],'%s',_0x56d9d3):_0x56d9d3;_0x56d9d3=_0x4ebc15[_0x379c53][_0xf31a('0x74')]?_['replace'](_0x4f9634[_0x4ebc15[_0x379c53]['format']],'%s',_0x56d9d3):_0x56d9d3;if(_0x4ebc15[_0x379c53][_0xf31a('0x75')]){_0x266a24[_0xf31a('0x65')](_0x56d9d3);}_0x4ebc15[_0x379c53]['orderBy']&&_0x266a24[_0xf31a('0x38')](_0x56d9d3,_0x4ebc15[_0x379c53][_0xf31a('0x76')]===_0xf31a('0x77')?![]:!![]);_0x266a24[_0xf31a('0x66')](_0x56d9d3,_0x4ebc15[_0x379c53]['alias']||_0x56d9d3);}if(_0x36165c[_0xf31a('0x78')]){_0x36165c[_0xf31a('0x78')]=JSON[_0xf31a('0x79')](_0x36165c[_0xf31a('0x78')]);for(var _0xa4853b=0x0;_0xa4853b<_0x36165c[_0xf31a('0x78')][_0xf31a('0x44')];_0xa4853b+=0x1){if(_0x36165c[_0xf31a('0x78')][_0xa4853b][_0xf31a('0x2f')]&&_[_0xf31a('0x5f')](_0x29f1fb,_0x36165c['joins'][_0xa4853b][_0xf31a('0x2f')])&&_0x36165c[_0xf31a('0x78')][_0xa4853b][_0xf31a('0x7a')]&&_0x36165c['joins'][_0xa4853b]['foreignTable']&&_0x36165c[_0xf31a('0x78')][_0xa4853b][_0xf31a('0x7b')]){_0x266a24[_0x36165c['joins'][_0xa4853b][_0xf31a('0x2f')]](_0x36165c[_0xf31a('0x78')][_0xa4853b][_0xf31a('0x7c')],null,util['format'](_0xf31a('0x7d'),_0x36165c[_0xf31a('0x7e')],_0x36165c['joins'][_0xa4853b][_0xf31a('0x7a')],_0x36165c[_0xf31a('0x78')][_0xa4853b][_0xf31a('0x7c')],_0x36165c['joins'][_0xa4853b][_0xf31a('0x7b')]));}}}if(_0x36165c[_0xf31a('0x7f')]){_0x36165c['conditions']=JSON[_0xf31a('0x79')](_0x36165c[_0xf31a('0x7f')]);_0x266a24[_0xf31a('0x3a')](_0x23cd27(_0x36165c[_0xf31a('0x7f')][_0xf31a('0x65')]));}_0xf7c061=_0x266a24['clone']();_0x266a24['limit'](_0x45239e);_0x266a24[_0xf31a('0x1d')](0x0);logger['debug']('Limited\x20Query:',_0x266a24['toString']());return db['sequelize'][_0xf31a('0x32')](_0x266a24[_0xf31a('0x80')](),{'type':db[_0xf31a('0x81')][_0xf31a('0x82')][_0xf31a('0x83')]});}})['then'](respondWithResult(_0x4d693e,null))[_0xf31a('0x41')](handleError(_0x4d693e,null));};function runReport(_0x1fa926,_0x24592e,_0x2c096a){var _0x5199e7=_0x24592e['name'];var _0x1b22df=0xa;var _0x10f82c=[_0xf31a('0x84'),'left_join',_0xf31a('0x52'),_0xf31a('0x53')];var _0x4bcc21={'SUM':_0xf31a('0x54'),'COUNT':_0xf31a('0x85'),'COUNT DISTINCT':_0xf31a('0x55'),'MAX':_0xf31a('0x86'),'MIN':_0xf31a('0x56'),'AVG':_0xf31a('0x57'),'GROUP_CONCAT':_0xf31a('0x58'),'GROUP_CONCAT ASC':_0xf31a('0x59'),'GROUP_CONCAT DESC':_0xf31a('0x5a')};var _0x1b638d={'SEC_TO_TIME':'SEC_TO_TIME(%s)','DATE':_0xf31a('0x5b'),'HOUR':_0xf31a('0x5c'),'ROUND':_0xf31a('0x5d'),'UNIX_TIMESTAMP':_0xf31a('0x5e')};var _0x18e6bc=function(_0x14b37c){return!_[_0xf31a('0x5f')]([_0xf31a('0x60'),'IS\x20NOT\x20NULL',_0xf31a('0x87'),'IS\x20NOT\x20EMPTY'],_0x14b37c);};var _0x3d5c67=function(_0x2eed92){if(!_0x2eed92||!_0x2eed92[_0xf31a('0x63')][_0xf31a('0x44')]){return'';}for(var _0x5e5683='(',_0x5dcd63=0x0;_0x5dcd63<_0x2eed92[_0xf31a('0x63')]['length'];_0x5dcd63+=0x1){_0x5dcd63>0x0&&(_0x5e5683+='\x20'+_0x2eed92[_0xf31a('0x64')]+'\x20');_0x5e5683+=_0x2eed92[_0xf31a('0x63')][_0x5dcd63]['group']?_0x3d5c67(_0x2eed92[_0xf31a('0x63')][_0x5dcd63][_0xf31a('0x65')]):_0x2eed92[_0xf31a('0x63')][_0x5dcd63][_0xf31a('0x66')]+'\x20'+_0x2eed92[_0xf31a('0x63')][_0x5dcd63][_0xf31a('0x67')]+(_0x18e6bc(_0x2eed92['rules'][_0x5dcd63]['condition'])?'\x20'+_0x2eed92['rules'][_0x5dcd63][_0xf31a('0x68')]:'');}return _0x5e5683+')';};var _0x2ca1e9={'where':{'id':_0x1fa926['id']}},_0x3d430f,_0x3e570c,_0x20e875,_0x1cc6b9,_0x1c9ffb;_0x2ca1e9=_[_0xf31a('0x3d')]({},_0x2ca1e9,_0x2c096a);return db[_0xf31a('0x2c')][_0xf31a('0x4c')](_0x2ca1e9)[_0xf31a('0x24')](function(_0x1d4377){if(_0x1d4377){_0x3d430f=_0x1d4377;return _0x1d4377[_0xf31a('0x88')]();}return null;})[_0xf31a('0x24')](function(_0x2d0b4b){if(_0x2d0b4b){if(!_0x2d0b4b[_0xf31a('0x44')]){throw new db[(_0xf31a('0x69'))][(_0xf31a('0x6a'))](_0xf31a('0x6b'),0x193);}_0x3e570c=_0x2d0b4b;return db[_0xf31a('0x6c')]['findAll']({'raw':!![]});}return null;})[_0xf31a('0x24')](function(_0x589ac8){if(_0x589ac8){_0x20e875=_[_0xf31a('0x6e')](_0x589ac8,'id');var _0x16596d;var _0x41b97a=squel[_0xf31a('0x6f')]();_0x41b97a[_0xf31a('0x70')](_0x3d430f[_0xf31a('0x7e')]);for(var _0x489215=0x0;_0x489215<_0x3e570c[_0xf31a('0x44')];_0x489215+=0x1){_0x16596d=_0x3e570c[_0x489215]['MetricId']?_0x20e875[_0x3e570c[_0x489215][_0xf31a('0x71')]][_0xf31a('0x72')]:_0x3e570c[_0x489215][_0xf31a('0x66')];_0x16596d=_0x3e570c[_0x489215]['function']?_['replace'](_0x4bcc21[_0x3e570c[_0x489215][_0xf31a('0x73')]],'%s',_0x16596d):_0x16596d;_0x16596d=_0x3e570c[_0x489215]['format']?_['replace'](_0x1b638d[_0x3e570c[_0x489215][_0xf31a('0x74')]],'%s',_0x16596d):_0x16596d;if(_0x3e570c[_0x489215][_0xf31a('0x75')]){_0x41b97a[_0xf31a('0x65')](_0x16596d);}_0x3e570c[_0x489215][_0xf31a('0x76')]&&_0x41b97a[_0xf31a('0x38')](_0x16596d,_0x3e570c[_0x489215][_0xf31a('0x76')]===_0xf31a('0x77')?![]:!![]);_0x41b97a[_0xf31a('0x66')](_0x16596d,_0x3e570c[_0x489215]['alias']||_0x16596d);}if(_0x3d430f[_0xf31a('0x78')]){_0x3d430f[_0xf31a('0x78')]=JSON[_0xf31a('0x79')](_0x3d430f[_0xf31a('0x78')]);for(var _0x4e7b1c=0x0;_0x4e7b1c<_0x3d430f[_0xf31a('0x78')][_0xf31a('0x44')];_0x4e7b1c+=0x1){if(_0x3d430f[_0xf31a('0x78')][_0x4e7b1c]['type']&&_[_0xf31a('0x5f')](_0x10f82c,_0x3d430f[_0xf31a('0x78')][_0x4e7b1c][_0xf31a('0x2f')])&&_0x3d430f[_0xf31a('0x78')][_0x4e7b1c][_0xf31a('0x7a')]&&_0x3d430f[_0xf31a('0x78')][_0x4e7b1c][_0xf31a('0x7c')]&&_0x3d430f[_0xf31a('0x78')][_0x4e7b1c][_0xf31a('0x7b')]){_0x41b97a[_0x3d430f[_0xf31a('0x78')][_0x4e7b1c][_0xf31a('0x2f')]](_0x3d430f[_0xf31a('0x78')][_0x4e7b1c][_0xf31a('0x7c')],null,util[_0xf31a('0x74')]('%s.%s\x20=\x20%s.%s',_0x3d430f[_0xf31a('0x7e')],_0x3d430f[_0xf31a('0x78')][_0x4e7b1c][_0xf31a('0x7a')],_0x3d430f[_0xf31a('0x78')][_0x4e7b1c][_0xf31a('0x7c')],_0x3d430f[_0xf31a('0x78')][_0x4e7b1c][_0xf31a('0x7b')]));}}}if(_0x3d430f[_0xf31a('0x7f')]){_0x3d430f['conditions']=JSON['parse'](_0x3d430f[_0xf31a('0x7f')]);_0x41b97a[_0xf31a('0x3a')](_0x3d5c67(_0x3d430f['conditions'][_0xf31a('0x65')]));}_0x1c9ffb=_0x41b97a[_0xf31a('0x89')]();_0x41b97a[_0xf31a('0x37')](_0x1b22df);_0x41b97a[_0xf31a('0x1d')](0x0);logger[_0xf31a('0x8a')](_0xf31a('0x8b'),_0x41b97a[_0xf31a('0x80')]());return db[_0xf31a('0x81')]['query'](_0x41b97a[_0xf31a('0x80')](),{'type':db[_0xf31a('0x81')][_0xf31a('0x82')][_0xf31a('0x83')]});}})['then'](function(_0x3ce85f){if(!_0x3ce85f[_0xf31a('0x44')]){throw new db[(_0xf31a('0x69'))][(_0xf31a('0x6a'))](_0xf31a('0x8c'),0xcc);}if(_0x24592e[_0xf31a('0x8d')]===_0xf31a('0x8e')){return null;}var _0x1689b0=_[_0xf31a('0x3d')](_0x24592e,{'name':_0x24592e[_0xf31a('0x8f')]||_0x24592e[_0xf31a('0x28')]||_0x3d430f['name'],'basename':_0x5199e7,'savename':util['format'](_0xf31a('0x90'),_0x24592e[_0xf31a('0x28')]||_0x3d430f[_0xf31a('0x28')],require(_0xf31a('0x91'))[_0xf31a('0x92')](0x4),_0x24592e['output']||_0xf31a('0x93')),'reportId':_0x3d430f['id'],'reportType':_0xf31a('0x94')});return db['AnalyticExtractedReport'][_0xf31a('0x46')](_0x1689b0,{'raw':!![]});})[_0xf31a('0x24')](function(_0x45dafd){if(_0x3d430f[_0xf31a('0x7e')]===_0xf31a('0x95')){_0x1c9ffb[_0xf31a('0x3a')](_0x3d430f[_0xf31a('0x7e')]+_0xf31a('0x96'),_0x24592e[_0xf31a('0x97')],_0x24592e['endDate']);}else{_0x1c9ffb[_0xf31a('0x3a')](_0x3d430f[_0xf31a('0x7e')]+'.createdAt\x20BETWEEN\x20?\x20AND\x20?',_0x24592e[_0xf31a('0x97')],_0x24592e['endDate']);}if(_0x45dafd){logger[_0xf31a('0x98')](_0xf31a('0x99'),_0x1c9ffb[_0xf31a('0x80')]());require('child_process')[_0xf31a('0x9a')](path[_0xf31a('0x84')](__dirname,_0xf31a('0x9b'),_0x45dafd[_0xf31a('0x8d')]),[_0x45dafd['id'],_0x1c9ffb[_0xf31a('0x80')](),path[_0xf31a('0x84')](__dirname,_0xf31a('0x9c'),_0x45dafd['savename']),_0x5199e7]);return _0x45dafd;}else{var _0x3a4fa2=squel[_0xf31a('0x6f')]();_0x3a4fa2[_0xf31a('0x70')]('('+_0x1c9ffb[_0xf31a('0x80')]()+')',_0xf31a('0x9d'));_0x3a4fa2['field'](_0xf31a('0x9e'),_0xf31a('0x1c'));_0x1c9ffb[_0xf31a('0x37')](_0x24592e[_0xf31a('0x37')]||_0x1b22df);_0x1c9ffb['offset'](_0x24592e['offset']||0x0);return dbH[_0xf31a('0x81')][_0xf31a('0x32')](_0x3a4fa2[_0xf31a('0x80')](),{'type':dbH['sequelize'][_0xf31a('0x82')][_0xf31a('0x83')]})[_0xf31a('0x24')](function(_0x125bfb){if(!_0x125bfb[_0xf31a('0x44')]){_0x1cc6b9=0x0;}else{_0x1cc6b9=_0x125bfb[0x0][_0xf31a('0x1c')]||0x0;}return dbH[_0xf31a('0x81')][_0xf31a('0x32')](_0x1c9ffb[_0xf31a('0x80')](),{'type':dbH['sequelize'][_0xf31a('0x82')][_0xf31a('0x83')]});})['then'](function(_0x5e5293){return{'rows':_0x5e5293||[],'count':_0x1cc6b9};});}});}exports[_0xf31a('0x9f')]=function(_0x556b11,_0xea37af){return runReport(_0x556b11['params'],_0x556b11['query'],_0x556b11[_0xf31a('0x3e')])[_0xf31a('0x24')](respondWithResult(_0xea37af,null))[_0xf31a('0x41')](handleError(_0xea37af,null));};exports['runReport']=runReport;exports[_0xf31a('0x32')]=function(_0x5237c1,_0x9b470b){var _0x36d30b=0xa;var _0x57c4b1=['join',_0xf31a('0x51'),_0xf31a('0x52'),_0xf31a('0x53')];var _0x29a807={'SUM':_0xf31a('0x54'),'COUNT':_0xf31a('0x85'),'COUNT DISTINCT':'COUNT(DISTINCT\x20%s)','MAX':_0xf31a('0x86'),'MIN':_0xf31a('0x56'),'AVG':_0xf31a('0x57'),'GROUP_CONCAT':_0xf31a('0x58'),'GROUP_CONCAT ASC':'GROUP_CONCAT(%s\x20ORDER\x20BY\x20%s\x20ASC)','GROUP_CONCAT DESC':_0xf31a('0x5a')};var _0x2fae82={'SEC_TO_TIME':_0xf31a('0xa0'),'DATE':_0xf31a('0x5b'),'HOUR':_0xf31a('0x5c'),'ROUND':'ROUND(%s)','UNIX_TIMESTAMP':_0xf31a('0x5e')};var _0x4e6b7d=function(_0x2f5d59){return!_[_0xf31a('0x5f')]([_0xf31a('0x60'),_0xf31a('0x61'),_0xf31a('0x87'),_0xf31a('0x62')],_0x2f5d59);};var _0x268727=function(_0x569f7c){if(!_0x569f7c||!_0x569f7c[_0xf31a('0x63')]['length']){return'';}for(var _0x1a8826='(',_0x5a3b2d=0x0;_0x5a3b2d<_0x569f7c[_0xf31a('0x63')][_0xf31a('0x44')];_0x5a3b2d+=0x1){_0x5a3b2d>0x0&&(_0x1a8826+='\x20'+_0x569f7c[_0xf31a('0x64')]+'\x20');_0x1a8826+=_0x569f7c[_0xf31a('0x63')][_0x5a3b2d]['group']?_0x268727(_0x569f7c['rules'][_0x5a3b2d][_0xf31a('0x65')]):_0x569f7c['rules'][_0x5a3b2d][_0xf31a('0x66')]+'\x20'+_0x569f7c['rules'][_0x5a3b2d][_0xf31a('0x67')]+(_0x4e6b7d(_0x569f7c[_0xf31a('0x63')][_0x5a3b2d][_0xf31a('0x67')])?'\x20'+_0x569f7c[_0xf31a('0x63')][_0x5a3b2d][_0xf31a('0x68')]:'');}return _0x1a8826+')';};var _0x32eede={'where':{'id':_0x5237c1['params']['id']}},_0x321e3a,_0x421dc1,_0x2657f9,_0x15fb5b,_0x381dc1;_0x32eede=_['merge']({},_0x32eede,_0x5237c1['options']);return db[_0xf31a('0x2c')][_0xf31a('0x4c')](_0x32eede)[_0xf31a('0x24')](function(_0x2b0c0f){if(_0x2b0c0f){_0x321e3a=_0x2b0c0f;return _0x2b0c0f['getFields']();}return null;})[_0xf31a('0x24')](function(_0x1febb5){if(_0x1febb5){if(!_0x1febb5[_0xf31a('0x44')]){throw new db[(_0xf31a('0x69'))][(_0xf31a('0x6a'))](_0xf31a('0x6b'),0x193);}_0x421dc1=_0x1febb5;return db[_0xf31a('0x6c')][_0xf31a('0x6d')]({'raw':!![]});}return null;})[_0xf31a('0x24')](function(_0x31bb63){if(_0x31bb63){_0x2657f9=_[_0xf31a('0x6e')](_0x31bb63,'id');var _0xf35c04;var _0x2726be=squel['select']();_0x2726be['from'](_0x321e3a[_0xf31a('0x7e')]);for(var _0x1b0aca=0x0;_0x1b0aca<_0x421dc1[_0xf31a('0x44')];_0x1b0aca+=0x1){_0xf35c04=_0x421dc1[_0x1b0aca]['MetricId']?_0x2657f9[_0x421dc1[_0x1b0aca][_0xf31a('0x71')]]['metric']:_0x421dc1[_0x1b0aca][_0xf31a('0x66')];_0xf35c04=_0x421dc1[_0x1b0aca]['function']?_[_0xf31a('0xa1')](_0x29a807[_0x421dc1[_0x1b0aca][_0xf31a('0x73')]],'%s',_0xf35c04):_0xf35c04;_0xf35c04=_0x421dc1[_0x1b0aca][_0xf31a('0x74')]?_[_0xf31a('0xa1')](_0x2fae82[_0x421dc1[_0x1b0aca][_0xf31a('0x74')]],'%s',_0xf35c04):_0xf35c04;if(_0x421dc1[_0x1b0aca][_0xf31a('0x75')]){_0x2726be[_0xf31a('0x65')](_0xf35c04);}_0x421dc1[_0x1b0aca]['orderBy']&&_0x2726be[_0xf31a('0x38')](_0xf35c04,_0x421dc1[_0x1b0aca][_0xf31a('0x76')]===_0xf31a('0x77')?![]:!![]);_0x2726be[_0xf31a('0x66')](_0xf35c04,_0x421dc1[_0x1b0aca][_0xf31a('0xa2')]||_0xf35c04);}if(_0x321e3a['joins']){_0x321e3a[_0xf31a('0x78')]=JSON[_0xf31a('0x79')](_0x321e3a[_0xf31a('0x78')]);for(var _0x4e4560=0x0;_0x4e4560<_0x321e3a[_0xf31a('0x78')]['length'];_0x4e4560+=0x1){if(_0x321e3a[_0xf31a('0x78')][_0x4e4560][_0xf31a('0x2f')]&&_[_0xf31a('0x5f')](_0x57c4b1,_0x321e3a[_0xf31a('0x78')][_0x4e4560]['type'])&&_0x321e3a[_0xf31a('0x78')][_0x4e4560]['parentKey']&&_0x321e3a[_0xf31a('0x78')][_0x4e4560][_0xf31a('0x7c')]&&_0x321e3a[_0xf31a('0x78')][_0x4e4560][_0xf31a('0x7b')]){_0x2726be[_0x321e3a[_0xf31a('0x78')][_0x4e4560][_0xf31a('0x2f')]](_0x321e3a[_0xf31a('0x78')][_0x4e4560]['foreignTable'],null,util[_0xf31a('0x74')](_0xf31a('0x7d'),_0x321e3a[_0xf31a('0x7e')],_0x321e3a[_0xf31a('0x78')][_0x4e4560][_0xf31a('0x7a')],_0x321e3a[_0xf31a('0x78')][_0x4e4560][_0xf31a('0x7c')],_0x321e3a['joins'][_0x4e4560][_0xf31a('0x7b')]));}}}if(_0x321e3a[_0xf31a('0x7f')]){_0x321e3a['conditions']=JSON['parse'](_0x321e3a['conditions']);_0x2726be['where'](_0x268727(_0x321e3a[_0xf31a('0x7f')][_0xf31a('0x65')]));}_0x381dc1=_0x2726be[_0xf31a('0x89')]();_0x2726be[_0xf31a('0x37')](_0x36d30b);_0x2726be['offset'](0x0);logger[_0xf31a('0x8a')](_0xf31a('0x8b'),_0x2726be[_0xf31a('0x80')]());return db['sequelize']['query'](_0x2726be['toString'](),{'type':db[_0xf31a('0x81')]['QueryTypes'][_0xf31a('0x83')]});}})[_0xf31a('0x24')](function(){return{'sql':_0x381dc1[_0xf31a('0x80')]()};})[_0xf31a('0x24')](respondWithResult(_0x9b470b,null))[_0xf31a('0x41')](handleError(_0x9b470b,null));};