Built motion from commit (unavailable).|2.5.7
[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 _0x7612=['ROUND(%s)','UNIX_TIMESTAMP(%s)','includes','IS\x20NULL','IS\x20NOT\x20NULL','IS\x20EMPTY','rules','operator','group','field','condition','value','getFields','Sequelize','ValidationErrorItem','Please\x20insert\x20at\x20least\x20one\x20field','AnalyticMetric','keyBy','select','from','table','MetricId','metric','function','replace','format','groupBy','orderBy','alias','joins','parentKey','foreignTable','%s.%s\x20=\x20%s.%s','foreignKey','conditions','parse','clone','Limited\x20Query:','toString','sequelize','QueryTypes','SELECT','DATE(%s)','IS\x20NOT\x20EMPTY','DESC','debug','No\x20available\x20data','web','fullPath','%s-%s.%s','csv','default','AnalyticExtractedReport','.calldate\x20BETWEEN\x20?\x20AND\x20?','.createdAt\x20BETWEEN\x20?\x20AND\x20?','endDate','info','Run\x20Query:','child_process','fork','../../components/export/','output','savename','COUNT(*)','run','runReport','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','path','sox','to-csv','ejs','lodash','crypto','jsforce','querystring','papaparse','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/license/util','../../mysqldb','dbH','sendStatus','status','end','json','offset','limit','set','Content-Range','apply','save','update','then','get','DefaultReports','UserProfileResource','destroy','error','stack','name','send','index','map','AnalyticDefaultReport','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','filter','where','merge','options','count','includeAll','findAll','rows','catch','show','params','include','find','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','Reports','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','preview','join','left_join','right_join','cross_join','SUM(%s)','COUNT(%s)','COUNT(DISTINCT\x20%s)','MAX(%s)','MIN(%s)','AVG(%s)','GROUP_CONCAT(%s)','GROUP_CONCAT(%s\x20ORDER\x20BY\x20%s\x20ASC)','GROUP_CONCAT(%s\x20ORDER\x20BY\x20%s\x20DESC)'];(function(_0x576d8a,_0x2d7bde){var _0x3dc3ef=function(_0xc76758){while(--_0xc76758){_0x576d8a['push'](_0x576d8a['shift']());}};_0x3dc3ef(++_0x2d7bde);}(_0x7612,0x192));var _0x2761=function(_0x29db36,_0x410ae9){_0x29db36=_0x29db36-0x0;var _0x234e87=_0x7612[_0x29db36];return _0x234e87;};'use strict';var pdf=require(_0x2761('0x0'));var emlformat=require(_0x2761('0x1'));var rimraf=require(_0x2761('0x2'));var zipdir=require(_0x2761('0x3'));var jsonpatch=require(_0x2761('0x4'));var rp=require(_0x2761('0x5'));var moment=require('moment');var BPromise=require(_0x2761('0x6'));var Mustache=require(_0x2761('0x7'));var util=require('util');var path=require(_0x2761('0x8'));var sox=require(_0x2761('0x9'));var csv=require(_0x2761('0xa'));var ejs=require(_0x2761('0xb'));var fs=require('fs');var _=require(_0x2761('0xc'));var squel=require('squel');var crypto=require(_0x2761('0xd'));var jsforce=require(_0x2761('0xe'));var deskjs=require('desk.js');var toCsv=require(_0x2761('0xa'));var querystring=require(_0x2761('0xf'));var Papa=require(_0x2761('0x10'));var Redis=require('ioredis');var authService=require(_0x2761('0x11'));var qs=require('../../components/parsers/qs');var as=require(_0x2761('0x12'));var hardwareService=require(_0x2761('0x13'));var logger=require(_0x2761('0x14'))(_0x2761('0x15'));var utils=require(_0x2761('0x16'));var config=require('../../config/environment');var licenseUtil=require(_0x2761('0x17'));var db=require(_0x2761('0x18'))['db'];var dbH=require('../../mysqldb')[_0x2761('0x19')];function respondWithStatusCode(_0x4b23d6,_0x2f583f){_0x2f583f=_0x2f583f||0xcc;return function(_0x48b027){if(_0x48b027){return _0x4b23d6[_0x2761('0x1a')](_0x2f583f);}return _0x4b23d6[_0x2761('0x1b')](_0x2f583f)[_0x2761('0x1c')]();};}function respondWithResult(_0x2f7d84,_0x239270){_0x239270=_0x239270||0xc8;return function(_0x31a4bb){if(_0x31a4bb){return _0x2f7d84[_0x2761('0x1b')](_0x239270)[_0x2761('0x1d')](_0x31a4bb);}};}function respondWithFilteredResult(_0xd8e196,_0x28f54b){return function(_0x4811bf){if(_0x4811bf){var _0x10ff48=_0x4811bf['count'],_0x2f539a=_0x28f54b['offset'],_0x5a0f2c=_0x28f54b[_0x2761('0x1e')]+_0x28f54b[_0x2761('0x1f')],_0x17ee14;if(_0x5a0f2c>=_0x10ff48){_0x5a0f2c=_0x10ff48;_0x17ee14=0xc8;}else{_0x17ee14=0xce;}_0xd8e196[_0x2761('0x1b')](_0x17ee14);return _0xd8e196[_0x2761('0x20')](_0x2761('0x21'),_0x2f539a+'-'+_0x5a0f2c+'/'+_0x10ff48)[_0x2761('0x1d')](_0x4811bf);}return null;};}function patchUpdates(_0x4ef303){return function(_0x292d05){try{jsonpatch[_0x2761('0x22')](_0x292d05,_0x4ef303,!![]);}catch(_0x549365){return BPromise['reject'](_0x549365);}return _0x292d05[_0x2761('0x23')]();};}function saveUpdates(_0x40e209,_0x4ec071){return function(_0x2bc405){if(_0x2bc405){return _0x2bc405[_0x2761('0x24')](_0x40e209)[_0x2761('0x25')](function(_0x194241){return _0x194241;});}return null;};}function removeEntity(_0x25593c,_0x4b3eb5){return function(_0x5ddcca){if(_0x5ddcca){return _0x5ddcca['destroy']()['then'](function(){var _0x1136d=_0x5ddcca[_0x2761('0x26')]({'plain':!![]});var _0x525840=_0x2761('0x27');return db[_0x2761('0x28')][_0x2761('0x29')]({'where':{'type':_0x525840,'resourceId':_0x1136d['id']}})['then'](function(){return _0x5ddcca;});})[_0x2761('0x25')](function(){_0x25593c[_0x2761('0x1b')](0xcc)[_0x2761('0x1c')]();});}};}function handleEntityNotFound(_0x14bf43,_0x3dc024){return function(_0xe6e9d8){if(!_0xe6e9d8){_0x14bf43[_0x2761('0x1a')](0x194);}return _0xe6e9d8;};}function handleError(_0x490046,_0x38d91e){_0x38d91e=_0x38d91e||0x1f4;return function(_0x49f4bf){logger[_0x2761('0x2a')](_0x49f4bf[_0x2761('0x2b')]);if(_0x49f4bf[_0x2761('0x2c')]){delete _0x49f4bf[_0x2761('0x2c')];}_0x490046[_0x2761('0x1b')](_0x38d91e)[_0x2761('0x2d')](_0x49f4bf);};}exports[_0x2761('0x2e')]=function(_0x438182,_0x545854){var _0x4a4aa1={},_0x52392f={},_0x5685de={'count':0x0,'rows':[]};var _0x2c7fcb=_[_0x2761('0x2f')](db[_0x2761('0x30')][_0x2761('0x31')],function(_0x24ddfb){return{'name':_0x24ddfb[_0x2761('0x32')],'type':_0x24ddfb[_0x2761('0x33')][_0x2761('0x34')]};});_0x52392f[_0x2761('0x35')]=_['map'](_0x2c7fcb,_0x2761('0x2c'));_0x52392f[_0x2761('0x36')]=_[_0x2761('0x37')](_0x438182[_0x2761('0x36')]);_0x52392f[_0x2761('0x38')]=_[_0x2761('0x39')](_0x52392f[_0x2761('0x35')],_0x52392f[_0x2761('0x36')]);_0x4a4aa1[_0x2761('0x3a')]=_[_0x2761('0x39')](_0x52392f[_0x2761('0x35')],qs[_0x2761('0x3b')](_0x438182[_0x2761('0x36')][_0x2761('0x3b')]));_0x4a4aa1[_0x2761('0x3a')]=_0x4a4aa1[_0x2761('0x3a')][_0x2761('0x3c')]?_0x4a4aa1[_0x2761('0x3a')]:_0x52392f['model'];if(!_0x438182[_0x2761('0x36')][_0x2761('0x3d')](_0x2761('0x3e'))){_0x4a4aa1['limit']=qs[_0x2761('0x1f')](_0x438182['query'][_0x2761('0x1f')]);_0x4a4aa1[_0x2761('0x1e')]=qs[_0x2761('0x1e')](_0x438182[_0x2761('0x36')][_0x2761('0x1e')]);}_0x4a4aa1[_0x2761('0x3f')]=qs[_0x2761('0x40')](_0x438182[_0x2761('0x36')][_0x2761('0x40')]);_0x4a4aa1['where']=qs[_0x2761('0x38')](_['pick'](_0x438182[_0x2761('0x36')],_0x52392f[_0x2761('0x38')]),_0x2c7fcb);if(_0x438182['query'][_0x2761('0x41')]){_0x4a4aa1[_0x2761('0x42')]=_['merge'](_0x4a4aa1[_0x2761('0x42')],{'$or':_[_0x2761('0x2f')](_0x2c7fcb,function(_0x3ca998){if(_0x3ca998[_0x2761('0x33')]!=='VIRTUAL'){var _0x274907={};_0x274907[_0x3ca998[_0x2761('0x2c')]]={'$like':'%'+_0x438182[_0x2761('0x36')][_0x2761('0x41')]+'%'};return _0x274907;}})});}_0x4a4aa1=_[_0x2761('0x43')]({},_0x4a4aa1,_0x438182[_0x2761('0x44')]);var _0x43487a={'where':_0x4a4aa1[_0x2761('0x42')]};return db['AnalyticDefaultReport']['count'](_0x43487a)['then'](function(_0x5cadfd){_0x5685de[_0x2761('0x45')]=_0x5cadfd;if(_0x438182['query'][_0x2761('0x46')]){_0x4a4aa1['include']=[{'all':!![]}];}return db['AnalyticDefaultReport'][_0x2761('0x47')](_0x4a4aa1);})[_0x2761('0x25')](function(_0x3a5044){_0x5685de[_0x2761('0x48')]=_0x3a5044;return _0x5685de;})[_0x2761('0x25')](respondWithFilteredResult(_0x545854,_0x4a4aa1))[_0x2761('0x49')](handleError(_0x545854,null));};exports[_0x2761('0x4a')]=function(_0x4e4eb1,_0x541653){var _0x57a7a1={'raw':!![],'where':{'id':_0x4e4eb1[_0x2761('0x4b')]['id']}},_0x11218c={};_0x11218c[_0x2761('0x35')]=_[_0x2761('0x37')](db[_0x2761('0x30')][_0x2761('0x31')]);_0x11218c[_0x2761('0x36')]=_[_0x2761('0x37')](_0x4e4eb1[_0x2761('0x36')]);_0x11218c['filters']=_[_0x2761('0x39')](_0x11218c[_0x2761('0x35')],_0x11218c['query']);_0x57a7a1[_0x2761('0x3a')]=_[_0x2761('0x39')](_0x11218c['model'],qs[_0x2761('0x3b')](_0x4e4eb1[_0x2761('0x36')]['fields']));_0x57a7a1[_0x2761('0x3a')]=_0x57a7a1[_0x2761('0x3a')]['length']?_0x57a7a1[_0x2761('0x3a')]:_0x11218c['model'];if(_0x4e4eb1[_0x2761('0x36')]['includeAll']){_0x57a7a1[_0x2761('0x4c')]=[{'all':!![]}];}_0x57a7a1=_[_0x2761('0x43')]({},_0x57a7a1,_0x4e4eb1['options']);return db[_0x2761('0x30')][_0x2761('0x4d')](_0x57a7a1)['then'](handleEntityNotFound(_0x541653,null))[_0x2761('0x25')](respondWithResult(_0x541653,null))[_0x2761('0x49')](handleError(_0x541653,null));};exports[_0x2761('0x4e')]=function(_0x40aaac,_0x2bdb19){return db[_0x2761('0x30')][_0x2761('0x4e')](_0x40aaac[_0x2761('0x4f')],{})[_0x2761('0x25')](function(_0x16185a){var _0x356534=_0x40aaac[_0x2761('0x50')][_0x2761('0x26')]({'plain':!![]});if(!_0x356534)throw new Error(_0x2761('0x51'));if(_0x356534[_0x2761('0x52')]==='user'){var _0x3cfcde=_0x16185a[_0x2761('0x26')]({'plain':!![]});var _0x177425=_0x2761('0x53');return db[_0x2761('0x54')][_0x2761('0x4d')]({'where':{'name':_0x177425,'userProfileId':_0x356534[_0x2761('0x55')]},'raw':!![]})[_0x2761('0x25')](function(_0x3c2abb){if(_0x3c2abb&&_0x3c2abb[_0x2761('0x56')]===0x0){return db[_0x2761('0x28')][_0x2761('0x4e')]({'name':_0x3cfcde[_0x2761('0x2c')],'resourceId':_0x3cfcde['id'],'type':_0x2761('0x27'),'sectionId':_0x3c2abb['id']},{})[_0x2761('0x25')](function(){return _0x16185a;});}else{return _0x16185a;}})['catch'](function(_0xbdfdf7){logger[_0x2761('0x2a')](_0x2761('0x57'),_0xbdfdf7);throw _0xbdfdf7;});}return _0x16185a;})['then'](respondWithResult(_0x2bdb19,0xc9))[_0x2761('0x49')](handleError(_0x2bdb19,null));};exports[_0x2761('0x24')]=function(_0x5ef0f6,_0x24fe12){if(_0x5ef0f6['body']['id']){delete _0x5ef0f6[_0x2761('0x4f')]['id'];}return db[_0x2761('0x30')][_0x2761('0x4d')]({'where':{'id':_0x5ef0f6['params']['id']}})[_0x2761('0x25')](handleEntityNotFound(_0x24fe12,null))[_0x2761('0x25')](saveUpdates(_0x5ef0f6['body'],null))[_0x2761('0x25')](respondWithResult(_0x24fe12,null))['catch'](handleError(_0x24fe12,null));};exports[_0x2761('0x29')]=function(_0x3445d4,_0x1da39a){return db[_0x2761('0x30')][_0x2761('0x4d')]({'where':{'id':_0x3445d4['params']['id']}})[_0x2761('0x25')](handleEntityNotFound(_0x1da39a,null))[_0x2761('0x25')](removeEntity(_0x1da39a,null))[_0x2761('0x49')](handleError(_0x1da39a,null));};exports[_0x2761('0x58')]=function(_0x552d1c,_0x47ee26){var _0x242bfa=0xa;var _0x525708=[_0x2761('0x59'),_0x2761('0x5a'),_0x2761('0x5b'),_0x2761('0x5c')];var _0x40cd9a={'SUM':_0x2761('0x5d'),'COUNT':_0x2761('0x5e'),'COUNT DISTINCT':_0x2761('0x5f'),'MAX':_0x2761('0x60'),'MIN':_0x2761('0x61'),'AVG':_0x2761('0x62'),'GROUP_CONCAT':_0x2761('0x63'),'GROUP_CONCAT ASC':_0x2761('0x64'),'GROUP_CONCAT DESC':_0x2761('0x65')};var _0x499706={'SEC_TO_TIME':'SEC_TO_TIME(%s)','DATE':'DATE(%s)','HOUR':'HOUR(%s)','ROUND':_0x2761('0x66'),'UNIX_TIMESTAMP':_0x2761('0x67')};var _0x1f71c0=function(_0x220f19){return!_[_0x2761('0x68')]([_0x2761('0x69'),_0x2761('0x6a'),_0x2761('0x6b'),'IS\x20NOT\x20EMPTY'],_0x220f19);};var _0x329f57=function(_0x4df6ef){if(!_0x4df6ef||!_0x4df6ef['rules'][_0x2761('0x3c')]){return'';}for(var _0x535348='(',_0x4afd64=0x0;_0x4afd64<_0x4df6ef[_0x2761('0x6c')][_0x2761('0x3c')];_0x4afd64+=0x1){_0x4afd64>0x0&&(_0x535348+='\x20'+_0x4df6ef[_0x2761('0x6d')]+'\x20');_0x535348+=_0x4df6ef[_0x2761('0x6c')][_0x4afd64][_0x2761('0x6e')]?_0x329f57(_0x4df6ef['rules'][_0x4afd64][_0x2761('0x6e')]):_0x4df6ef[_0x2761('0x6c')][_0x4afd64][_0x2761('0x6f')]+'\x20'+_0x4df6ef[_0x2761('0x6c')][_0x4afd64][_0x2761('0x70')]+(_0x1f71c0(_0x4df6ef[_0x2761('0x6c')][_0x4afd64]['condition'])?'\x20'+_0x4df6ef['rules'][_0x4afd64][_0x2761('0x71')]:'');}return _0x535348+')';};var _0x9b4ba7={'where':{'id':_0x552d1c[_0x2761('0x4b')]['id']}},_0xb9af64,_0x1c20b3,_0x13c7b7,_0x41e20b,_0x3dc2c1;_0x9b4ba7=_[_0x2761('0x43')]({},_0x9b4ba7,_0x552d1c[_0x2761('0x44')]);return db['AnalyticDefaultReport'][_0x2761('0x4d')](_0x9b4ba7)['then'](function(_0x7fc7a9){if(_0x7fc7a9){_0xb9af64=_0x7fc7a9;return _0x7fc7a9[_0x2761('0x72')]();}return null;})[_0x2761('0x25')](function(_0x32b898){if(_0x32b898){if(!_0x32b898[_0x2761('0x3c')]){throw new db[(_0x2761('0x73'))][(_0x2761('0x74'))](_0x2761('0x75'),0x193);}_0x1c20b3=_0x32b898;return db[_0x2761('0x76')][_0x2761('0x47')]({'raw':!![]});}return null;})[_0x2761('0x25')](function(_0x58a73e){if(_0x58a73e){_0x13c7b7=_[_0x2761('0x77')](_0x58a73e,'id');var _0x5538c6;var _0x268417=squel[_0x2761('0x78')]();_0x268417[_0x2761('0x79')](_0xb9af64[_0x2761('0x7a')]);for(var _0x3b29a2=0x0;_0x3b29a2<_0x1c20b3[_0x2761('0x3c')];_0x3b29a2+=0x1){_0x5538c6=_0x1c20b3[_0x3b29a2][_0x2761('0x7b')]?_0x13c7b7[_0x1c20b3[_0x3b29a2][_0x2761('0x7b')]][_0x2761('0x7c')]:_0x1c20b3[_0x3b29a2][_0x2761('0x6f')];_0x5538c6=_0x1c20b3[_0x3b29a2][_0x2761('0x7d')]?_[_0x2761('0x7e')](_0x40cd9a[_0x1c20b3[_0x3b29a2]['function']],'%s',_0x5538c6):_0x5538c6;_0x5538c6=_0x1c20b3[_0x3b29a2][_0x2761('0x7f')]?_[_0x2761('0x7e')](_0x499706[_0x1c20b3[_0x3b29a2][_0x2761('0x7f')]],'%s',_0x5538c6):_0x5538c6;if(_0x1c20b3[_0x3b29a2][_0x2761('0x80')]){_0x268417[_0x2761('0x6e')](_0x5538c6);}_0x1c20b3[_0x3b29a2][_0x2761('0x81')]&&_0x268417[_0x2761('0x3f')](_0x5538c6,_0x1c20b3[_0x3b29a2][_0x2761('0x81')]==='DESC'?![]:!![]);_0x268417['field'](_0x5538c6,_0x1c20b3[_0x3b29a2][_0x2761('0x82')]||_0x5538c6);}if(_0xb9af64['joins']){_0xb9af64[_0x2761('0x83')]=JSON['parse'](_0xb9af64['joins']);for(var _0x30cd5a=0x0;_0x30cd5a<_0xb9af64[_0x2761('0x83')][_0x2761('0x3c')];_0x30cd5a+=0x1){if(_0xb9af64[_0x2761('0x83')][_0x30cd5a][_0x2761('0x33')]&&_[_0x2761('0x68')](_0x525708,_0xb9af64['joins'][_0x30cd5a]['type'])&&_0xb9af64['joins'][_0x30cd5a][_0x2761('0x84')]&&_0xb9af64[_0x2761('0x83')][_0x30cd5a]['foreignTable']&&_0xb9af64[_0x2761('0x83')][_0x30cd5a]['foreignKey']){_0x268417[_0xb9af64[_0x2761('0x83')][_0x30cd5a]['type']](_0xb9af64['joins'][_0x30cd5a][_0x2761('0x85')],null,util[_0x2761('0x7f')](_0x2761('0x86'),_0xb9af64[_0x2761('0x7a')],_0xb9af64[_0x2761('0x83')][_0x30cd5a]['parentKey'],_0xb9af64[_0x2761('0x83')][_0x30cd5a]['foreignTable'],_0xb9af64[_0x2761('0x83')][_0x30cd5a][_0x2761('0x87')]));}}}if(_0xb9af64[_0x2761('0x88')]){_0xb9af64[_0x2761('0x88')]=JSON[_0x2761('0x89')](_0xb9af64[_0x2761('0x88')]);_0x268417[_0x2761('0x42')](_0x329f57(_0xb9af64['conditions'][_0x2761('0x6e')]));}_0x3dc2c1=_0x268417[_0x2761('0x8a')]();_0x268417[_0x2761('0x1f')](_0x242bfa);_0x268417[_0x2761('0x1e')](0x0);logger['debug'](_0x2761('0x8b'),_0x268417['toString']());return db['sequelize'][_0x2761('0x36')](_0x268417[_0x2761('0x8c')](),{'type':db[_0x2761('0x8d')][_0x2761('0x8e')][_0x2761('0x8f')]});}})['then'](respondWithResult(_0x47ee26,null))[_0x2761('0x49')](handleError(_0x47ee26,null));};function runReport(_0x2f8743,_0x1b703a,_0x36d593){var _0x1a585e=_0x1b703a[_0x2761('0x2c')];var _0x45e114=0xa;var _0x51bb26=[_0x2761('0x59'),_0x2761('0x5a'),'right_join',_0x2761('0x5c')];var _0x5f48fd={'SUM':_0x2761('0x5d'),'COUNT':_0x2761('0x5e'),'COUNT DISTINCT':_0x2761('0x5f'),'MAX':_0x2761('0x60'),'MIN':'MIN(%s)','AVG':'AVG(%s)','GROUP_CONCAT':_0x2761('0x63'),'GROUP_CONCAT ASC':_0x2761('0x64'),'GROUP_CONCAT DESC':_0x2761('0x65')};var _0x510f13={'SEC_TO_TIME':'SEC_TO_TIME(%s)','DATE':_0x2761('0x90'),'HOUR':'HOUR(%s)','ROUND':_0x2761('0x66'),'UNIX_TIMESTAMP':_0x2761('0x67')};var _0x48da58=function(_0x536b5e){return!_[_0x2761('0x68')](['IS\x20NULL',_0x2761('0x6a'),'IS\x20EMPTY',_0x2761('0x91')],_0x536b5e);};var _0x55de7b=function(_0x10ec27){if(!_0x10ec27||!_0x10ec27[_0x2761('0x6c')][_0x2761('0x3c')]){return'';}for(var _0x3d8c44='(',_0xe6de63=0x0;_0xe6de63<_0x10ec27[_0x2761('0x6c')][_0x2761('0x3c')];_0xe6de63+=0x1){_0xe6de63>0x0&&(_0x3d8c44+='\x20'+_0x10ec27[_0x2761('0x6d')]+'\x20');_0x3d8c44+=_0x10ec27['rules'][_0xe6de63][_0x2761('0x6e')]?_0x55de7b(_0x10ec27[_0x2761('0x6c')][_0xe6de63][_0x2761('0x6e')]):_0x10ec27[_0x2761('0x6c')][_0xe6de63]['field']+'\x20'+_0x10ec27[_0x2761('0x6c')][_0xe6de63][_0x2761('0x70')]+(_0x48da58(_0x10ec27[_0x2761('0x6c')][_0xe6de63][_0x2761('0x70')])?'\x20'+_0x10ec27['rules'][_0xe6de63]['value']:'');}return _0x3d8c44+')';};var _0xb9eb21={'where':{'id':_0x2f8743['id']}},_0x9f9b24,_0x2a9cee,_0x1b34df,_0x5f0fb2,_0x1d2bca;_0xb9eb21=_[_0x2761('0x43')]({},_0xb9eb21,_0x36d593);return db['AnalyticDefaultReport'][_0x2761('0x4d')](_0xb9eb21)['then'](function(_0x514fcb){if(_0x514fcb){_0x9f9b24=_0x514fcb;return _0x514fcb[_0x2761('0x72')]();}return null;})[_0x2761('0x25')](function(_0x57ce9e){if(_0x57ce9e){if(!_0x57ce9e[_0x2761('0x3c')]){throw new db[(_0x2761('0x73'))][(_0x2761('0x74'))](_0x2761('0x75'),0x193);}_0x2a9cee=_0x57ce9e;return db[_0x2761('0x76')][_0x2761('0x47')]({'raw':!![]});}return null;})[_0x2761('0x25')](function(_0x52fd1f){if(_0x52fd1f){_0x1b34df=_[_0x2761('0x77')](_0x52fd1f,'id');var _0x59aec4;var _0x4079c2=squel[_0x2761('0x78')]();_0x4079c2[_0x2761('0x79')](_0x9f9b24['table']);for(var _0x56fa41=0x0;_0x56fa41<_0x2a9cee[_0x2761('0x3c')];_0x56fa41+=0x1){_0x59aec4=_0x2a9cee[_0x56fa41][_0x2761('0x7b')]?_0x1b34df[_0x2a9cee[_0x56fa41][_0x2761('0x7b')]][_0x2761('0x7c')]:_0x2a9cee[_0x56fa41][_0x2761('0x6f')];_0x59aec4=_0x2a9cee[_0x56fa41][_0x2761('0x7d')]?_[_0x2761('0x7e')](_0x5f48fd[_0x2a9cee[_0x56fa41][_0x2761('0x7d')]],'%s',_0x59aec4):_0x59aec4;_0x59aec4=_0x2a9cee[_0x56fa41][_0x2761('0x7f')]?_[_0x2761('0x7e')](_0x510f13[_0x2a9cee[_0x56fa41][_0x2761('0x7f')]],'%s',_0x59aec4):_0x59aec4;if(_0x2a9cee[_0x56fa41][_0x2761('0x80')]){_0x4079c2[_0x2761('0x6e')](_0x59aec4);}_0x2a9cee[_0x56fa41][_0x2761('0x81')]&&_0x4079c2[_0x2761('0x3f')](_0x59aec4,_0x2a9cee[_0x56fa41][_0x2761('0x81')]===_0x2761('0x92')?![]:!![]);_0x4079c2[_0x2761('0x6f')](_0x59aec4,_0x2a9cee[_0x56fa41]['alias']||_0x59aec4);}if(_0x9f9b24['joins']){_0x9f9b24['joins']=JSON[_0x2761('0x89')](_0x9f9b24[_0x2761('0x83')]);for(var _0x5685a6=0x0;_0x5685a6<_0x9f9b24[_0x2761('0x83')][_0x2761('0x3c')];_0x5685a6+=0x1){if(_0x9f9b24[_0x2761('0x83')][_0x5685a6][_0x2761('0x33')]&&_[_0x2761('0x68')](_0x51bb26,_0x9f9b24['joins'][_0x5685a6][_0x2761('0x33')])&&_0x9f9b24[_0x2761('0x83')][_0x5685a6][_0x2761('0x84')]&&_0x9f9b24[_0x2761('0x83')][_0x5685a6][_0x2761('0x85')]&&_0x9f9b24[_0x2761('0x83')][_0x5685a6][_0x2761('0x87')]){_0x4079c2[_0x9f9b24[_0x2761('0x83')][_0x5685a6][_0x2761('0x33')]](_0x9f9b24[_0x2761('0x83')][_0x5685a6][_0x2761('0x85')],null,util[_0x2761('0x7f')]('%s.%s\x20=\x20%s.%s',_0x9f9b24[_0x2761('0x7a')],_0x9f9b24[_0x2761('0x83')][_0x5685a6][_0x2761('0x84')],_0x9f9b24[_0x2761('0x83')][_0x5685a6]['foreignTable'],_0x9f9b24[_0x2761('0x83')][_0x5685a6][_0x2761('0x87')]));}}}if(_0x9f9b24[_0x2761('0x88')]){_0x9f9b24['conditions']=JSON[_0x2761('0x89')](_0x9f9b24[_0x2761('0x88')]);_0x4079c2['where'](_0x55de7b(_0x9f9b24[_0x2761('0x88')]['group']));}_0x1d2bca=_0x4079c2[_0x2761('0x8a')]();_0x4079c2[_0x2761('0x1f')](_0x45e114);_0x4079c2['offset'](0x0);logger[_0x2761('0x93')]('Limited\x20Query:',_0x4079c2['toString']());return db[_0x2761('0x8d')][_0x2761('0x36')](_0x4079c2[_0x2761('0x8c')](),{'type':db[_0x2761('0x8d')][_0x2761('0x8e')]['SELECT']});}})[_0x2761('0x25')](function(_0x5aaa00){if(!_0x5aaa00[_0x2761('0x3c')]){throw new db['Sequelize'][(_0x2761('0x74'))](_0x2761('0x94'),0xcc);}if(_0x1b703a['output']===_0x2761('0x95')){return null;}var _0xc299a=_['merge'](_0x1b703a,{'name':_0x1b703a[_0x2761('0x96')]||_0x1b703a[_0x2761('0x2c')]||_0x9f9b24[_0x2761('0x2c')],'basename':_0x1a585e,'savename':util[_0x2761('0x7f')](_0x2761('0x97'),_0x1b703a[_0x2761('0x2c')]||_0x9f9b24['name'],require('randomstring')['generate'](0x4),_0x1b703a['output']||_0x2761('0x98')),'reportId':_0x9f9b24['id'],'reportType':_0x2761('0x99')});return db[_0x2761('0x9a')][_0x2761('0x4e')](_0xc299a,{'raw':!![]});})[_0x2761('0x25')](function(_0x1e531a){if(_0x9f9b24[_0x2761('0x7a')]==='cdr'){_0x1d2bca[_0x2761('0x42')](_0x9f9b24[_0x2761('0x7a')]+_0x2761('0x9b'),_0x1b703a['startDate'],_0x1b703a['endDate']);}else{_0x1d2bca[_0x2761('0x42')](_0x9f9b24[_0x2761('0x7a')]+_0x2761('0x9c'),_0x1b703a['startDate'],_0x1b703a[_0x2761('0x9d')]);}if(_0x1e531a){logger[_0x2761('0x9e')](_0x2761('0x9f'),_0x1d2bca[_0x2761('0x8c')]());require(_0x2761('0xa0'))[_0x2761('0xa1')](path[_0x2761('0x59')](__dirname,_0x2761('0xa2'),_0x1e531a[_0x2761('0xa3')]),[_0x1e531a['id'],_0x1d2bca[_0x2761('0x8c')](),path[_0x2761('0x59')](__dirname,'../../files/reports',_0x1e531a[_0x2761('0xa4')]),_0x1a585e]);return _0x1e531a;}else{var _0x7d83f1=squel[_0x2761('0x78')]();_0x7d83f1[_0x2761('0x79')]('('+_0x1d2bca[_0x2761('0x8c')]()+')','countTable');_0x7d83f1[_0x2761('0x6f')](_0x2761('0xa5'),_0x2761('0x45'));_0x1d2bca[_0x2761('0x1f')](_0x1b703a[_0x2761('0x1f')]||_0x45e114);_0x1d2bca[_0x2761('0x1e')](_0x1b703a['offset']||0x0);return dbH[_0x2761('0x8d')][_0x2761('0x36')](_0x7d83f1[_0x2761('0x8c')](),{'type':dbH[_0x2761('0x8d')]['QueryTypes'][_0x2761('0x8f')]})[_0x2761('0x25')](function(_0x35187b){if(!_0x35187b['length']){_0x5f0fb2=0x0;}else{_0x5f0fb2=_0x35187b[0x0]['count']||0x0;}return dbH[_0x2761('0x8d')][_0x2761('0x36')](_0x1d2bca[_0x2761('0x8c')](),{'type':dbH[_0x2761('0x8d')][_0x2761('0x8e')][_0x2761('0x8f')]});})['then'](function(_0x27e2be){return{'rows':_0x27e2be||[],'count':_0x5f0fb2};});}});}exports[_0x2761('0xa6')]=function(_0x418831,_0x4c3ae3){return runReport(_0x418831[_0x2761('0x4b')],_0x418831['query'],_0x418831['options'])[_0x2761('0x25')](respondWithResult(_0x4c3ae3,null))[_0x2761('0x49')](handleError(_0x4c3ae3,null));};exports[_0x2761('0xa7')]=runReport;exports[_0x2761('0x36')]=function(_0x3a8bf5,_0x291c60){var _0xb44b1b=0xa;var _0x3bff48=['join',_0x2761('0x5a'),_0x2761('0x5b'),_0x2761('0x5c')];var _0x56d391={'SUM':_0x2761('0x5d'),'COUNT':'COUNT(%s)','COUNT DISTINCT':_0x2761('0x5f'),'MAX':_0x2761('0x60'),'MIN':_0x2761('0x61'),'AVG':_0x2761('0x62'),'GROUP_CONCAT':_0x2761('0x63'),'GROUP_CONCAT ASC':'GROUP_CONCAT(%s\x20ORDER\x20BY\x20%s\x20ASC)','GROUP_CONCAT DESC':_0x2761('0x65')};var _0x1dd363={'SEC_TO_TIME':'SEC_TO_TIME(%s)','DATE':_0x2761('0x90'),'HOUR':'HOUR(%s)','ROUND':_0x2761('0x66'),'UNIX_TIMESTAMP':_0x2761('0x67')};var _0x5c9118=function(_0x54b992){return!_[_0x2761('0x68')](['IS\x20NULL',_0x2761('0x6a'),_0x2761('0x6b'),_0x2761('0x91')],_0x54b992);};var _0x20d6fd=function(_0x2508a6){if(!_0x2508a6||!_0x2508a6[_0x2761('0x6c')][_0x2761('0x3c')]){return'';}for(var _0x6edc76='(',_0x1a577f=0x0;_0x1a577f<_0x2508a6[_0x2761('0x6c')]['length'];_0x1a577f+=0x1){_0x1a577f>0x0&&(_0x6edc76+='\x20'+_0x2508a6[_0x2761('0x6d')]+'\x20');_0x6edc76+=_0x2508a6[_0x2761('0x6c')][_0x1a577f][_0x2761('0x6e')]?_0x20d6fd(_0x2508a6['rules'][_0x1a577f][_0x2761('0x6e')]):_0x2508a6['rules'][_0x1a577f]['field']+'\x20'+_0x2508a6[_0x2761('0x6c')][_0x1a577f][_0x2761('0x70')]+(_0x5c9118(_0x2508a6['rules'][_0x1a577f][_0x2761('0x70')])?'\x20'+_0x2508a6[_0x2761('0x6c')][_0x1a577f][_0x2761('0x71')]:'');}return _0x6edc76+')';};var _0x49929e={'where':{'id':_0x3a8bf5[_0x2761('0x4b')]['id']}},_0x328f01,_0x48e998,_0x52a068,_0x2ff034,_0x512087;_0x49929e=_[_0x2761('0x43')]({},_0x49929e,_0x3a8bf5[_0x2761('0x44')]);return db[_0x2761('0x30')][_0x2761('0x4d')](_0x49929e)[_0x2761('0x25')](function(_0x4e5c37){if(_0x4e5c37){_0x328f01=_0x4e5c37;return _0x4e5c37['getFields']();}return null;})[_0x2761('0x25')](function(_0x1cdf43){if(_0x1cdf43){if(!_0x1cdf43['length']){throw new db[(_0x2761('0x73'))][(_0x2761('0x74'))](_0x2761('0x75'),0x193);}_0x48e998=_0x1cdf43;return db[_0x2761('0x76')][_0x2761('0x47')]({'raw':!![]});}return null;})[_0x2761('0x25')](function(_0x88999){if(_0x88999){_0x52a068=_[_0x2761('0x77')](_0x88999,'id');var _0x410a28;var _0x14eee7=squel[_0x2761('0x78')]();_0x14eee7[_0x2761('0x79')](_0x328f01['table']);for(var _0xe9ca32=0x0;_0xe9ca32<_0x48e998['length'];_0xe9ca32+=0x1){_0x410a28=_0x48e998[_0xe9ca32]['MetricId']?_0x52a068[_0x48e998[_0xe9ca32][_0x2761('0x7b')]]['metric']:_0x48e998[_0xe9ca32][_0x2761('0x6f')];_0x410a28=_0x48e998[_0xe9ca32]['function']?_[_0x2761('0x7e')](_0x56d391[_0x48e998[_0xe9ca32][_0x2761('0x7d')]],'%s',_0x410a28):_0x410a28;_0x410a28=_0x48e998[_0xe9ca32][_0x2761('0x7f')]?_['replace'](_0x1dd363[_0x48e998[_0xe9ca32][_0x2761('0x7f')]],'%s',_0x410a28):_0x410a28;if(_0x48e998[_0xe9ca32]['groupBy']){_0x14eee7[_0x2761('0x6e')](_0x410a28);}_0x48e998[_0xe9ca32][_0x2761('0x81')]&&_0x14eee7['order'](_0x410a28,_0x48e998[_0xe9ca32][_0x2761('0x81')]===_0x2761('0x92')?![]:!![]);_0x14eee7[_0x2761('0x6f')](_0x410a28,_0x48e998[_0xe9ca32][_0x2761('0x82')]||_0x410a28);}if(_0x328f01[_0x2761('0x83')]){_0x328f01['joins']=JSON[_0x2761('0x89')](_0x328f01[_0x2761('0x83')]);for(var _0x71c1d0=0x0;_0x71c1d0<_0x328f01[_0x2761('0x83')][_0x2761('0x3c')];_0x71c1d0+=0x1){if(_0x328f01[_0x2761('0x83')][_0x71c1d0]['type']&&_[_0x2761('0x68')](_0x3bff48,_0x328f01['joins'][_0x71c1d0][_0x2761('0x33')])&&_0x328f01[_0x2761('0x83')][_0x71c1d0][_0x2761('0x84')]&&_0x328f01[_0x2761('0x83')][_0x71c1d0]['foreignTable']&&_0x328f01[_0x2761('0x83')][_0x71c1d0]['foreignKey']){_0x14eee7[_0x328f01['joins'][_0x71c1d0]['type']](_0x328f01[_0x2761('0x83')][_0x71c1d0][_0x2761('0x85')],null,util[_0x2761('0x7f')](_0x2761('0x86'),_0x328f01[_0x2761('0x7a')],_0x328f01['joins'][_0x71c1d0][_0x2761('0x84')],_0x328f01[_0x2761('0x83')][_0x71c1d0]['foreignTable'],_0x328f01['joins'][_0x71c1d0][_0x2761('0x87')]));}}}if(_0x328f01['conditions']){_0x328f01[_0x2761('0x88')]=JSON[_0x2761('0x89')](_0x328f01[_0x2761('0x88')]);_0x14eee7['where'](_0x20d6fd(_0x328f01[_0x2761('0x88')]['group']));}_0x512087=_0x14eee7[_0x2761('0x8a')]();_0x14eee7[_0x2761('0x1f')](_0xb44b1b);_0x14eee7[_0x2761('0x1e')](0x0);logger[_0x2761('0x93')]('Limited\x20Query:',_0x14eee7[_0x2761('0x8c')]());return db['sequelize'][_0x2761('0x36')](_0x14eee7[_0x2761('0x8c')](),{'type':db[_0x2761('0x8d')][_0x2761('0x8e')][_0x2761('0x8f')]});}})[_0x2761('0x25')](function(){return{'sql':_0x512087[_0x2761('0x8c')]()};})[_0x2761('0x25')](respondWithResult(_0x291c60,null))[_0x2761('0x49')](handleError(_0x291c60,null));};