b6f7cd5ac61d29260e3b49d8c401a6cc5729c5d6
[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 _0x43cc=['end','count','offset','set','Content-Range','apply','reject','save','then','destroy','get','DefaultReports','UserProfileResource','sendStatus','error','stack','name','send','index','map','AnalyticDefaultReport','rawAttributes','fieldName','type','query','keys','intersection','model','fields','attributes','hasOwnProperty','nolimit','limit','order','sort','where','filters','pick','filter','merge','options','include','findAll','rows','catch','show','params','length','find','create','body','user','role','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','preview','left_join','right_join','cross_join','SUM(%s)','COUNT(%s)','COUNT(DISTINCT\x20%s)','MAX(%s)','MIN(%s)','GROUP_CONCAT(%s)','GROUP_CONCAT(%s\x20ORDER\x20BY\x20%s\x20ASC)','GROUP_CONCAT(%s\x20ORDER\x20BY\x20%s\x20DESC)','SEC_TO_TIME(%s)','HOUR(%s)','ROUND(%s)','IS\x20NULL','IS\x20NOT\x20NULL','IS\x20EMPTY','IS\x20NOT\x20EMPTY','operator','rules','condition','getFields','Sequelize','Please\x20insert\x20at\x20least\x20one\x20field','AnalyticMetric','select','from','metric','field','replace','function','format','groupBy','group','orderBy','DESC','alias','joins','includes','parentKey','foreignTable','%s.%s\x20=\x20%s.%s','table','foreignKey','conditions','parse','clone','debug','Limited\x20Query:','toString','sequelize','QueryTypes','SELECT','join','AVG(%s)','DATE(%s)','UNIX_TIMESTAMP(%s)','ValidationErrorItem','MetricId','output','web','fullPath','%s-%s.%s','randomstring','csv','default','AnalyticExtractedReport','cdr','startDate','.createdAt\x20BETWEEN\x20?\x20AND\x20?','Run\x20Query:','child_process','fork','../../components/export/','savename','countTable','COUNT(*)','run','runReport','value','keyBy','html-pdf','eml-format','zip-dir','fast-json-patch','moment','bluebird','mustache','util','path','sox','to-csv','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','dbH','status'];(function(_0x40927b,_0xf9b0a0){var _0x2635e8=function(_0x1f2b8c){while(--_0x1f2b8c){_0x40927b['push'](_0x40927b['shift']());}};_0x2635e8(++_0xf9b0a0);}(_0x43cc,0x8b));var _0xc43c=function(_0x3bf925,_0x4dd8e4){_0x3bf925=_0x3bf925-0x0;var _0x2128a1=_0x43cc[_0x3bf925];return _0x2128a1;};'use strict';var pdf=require(_0xc43c('0x0'));var emlformat=require(_0xc43c('0x1'));var rimraf=require('rimraf');var zipdir=require(_0xc43c('0x2'));var jsonpatch=require(_0xc43c('0x3'));var rp=require('request-promise');var moment=require(_0xc43c('0x4'));var BPromise=require(_0xc43c('0x5'));var Mustache=require(_0xc43c('0x6'));var util=require(_0xc43c('0x7'));var path=require(_0xc43c('0x8'));var sox=require(_0xc43c('0x9'));var csv=require(_0xc43c('0xa'));var ejs=require('ejs');var fs=require('fs');var _=require(_0xc43c('0xb'));var squel=require(_0xc43c('0xc'));var crypto=require(_0xc43c('0xd'));var jsforce=require(_0xc43c('0xe'));var deskjs=require(_0xc43c('0xf'));var toCsv=require(_0xc43c('0xa'));var querystring=require(_0xc43c('0x10'));var Papa=require(_0xc43c('0x11'));var Redis=require('ioredis');var authService=require(_0xc43c('0x12'));var qs=require(_0xc43c('0x13'));var as=require(_0xc43c('0x14'));var hardwareService=require(_0xc43c('0x15'));var logger=require(_0xc43c('0x16'))(_0xc43c('0x17'));var utils=require(_0xc43c('0x18'));var config=require(_0xc43c('0x19'));var licenseUtil=require(_0xc43c('0x1a'));var db=require(_0xc43c('0x1b'))['db'];var dbH=require(_0xc43c('0x1b'))[_0xc43c('0x1c')];function respondWithStatusCode(_0x42d54c,_0x128c4a){_0x128c4a=_0x128c4a||0xcc;return function(_0x254001){if(_0x254001){return _0x42d54c['sendStatus'](_0x128c4a);}return _0x42d54c[_0xc43c('0x1d')](_0x128c4a)[_0xc43c('0x1e')]();};}function respondWithResult(_0x5cae52,_0x51c714){_0x51c714=_0x51c714||0xc8;return function(_0x332938){if(_0x332938){return _0x5cae52[_0xc43c('0x1d')](_0x51c714)['json'](_0x332938);}};}function respondWithFilteredResult(_0x80b879,_0x436611){return function(_0x5c7a62){if(_0x5c7a62){var _0x1f3508=_0x5c7a62[_0xc43c('0x1f')],_0x19098a=_0x436611[_0xc43c('0x20')],_0x13283a=_0x436611[_0xc43c('0x20')]+_0x436611['limit'],_0x14aec3;if(_0x13283a>=_0x1f3508){_0x13283a=_0x1f3508;_0x14aec3=0xc8;}else{_0x14aec3=0xce;}_0x80b879[_0xc43c('0x1d')](_0x14aec3);return _0x80b879[_0xc43c('0x21')](_0xc43c('0x22'),_0x19098a+'-'+_0x13283a+'/'+_0x1f3508)['json'](_0x5c7a62);}return null;};}function patchUpdates(_0x2da938){return function(_0x2706e6){try{jsonpatch[_0xc43c('0x23')](_0x2706e6,_0x2da938,!![]);}catch(_0xb5824e){return BPromise[_0xc43c('0x24')](_0xb5824e);}return _0x2706e6[_0xc43c('0x25')]();};}function saveUpdates(_0x5a9c69,_0xe4a6a9){return function(_0x432fb6){if(_0x432fb6){return _0x432fb6['update'](_0x5a9c69)[_0xc43c('0x26')](function(_0x66d9dc){return _0x66d9dc;});}return null;};}function removeEntity(_0x386ca2,_0x1a4c49){return function(_0x3ee911){if(_0x3ee911){return _0x3ee911[_0xc43c('0x27')]()[_0xc43c('0x26')](function(){var _0x1b984f=_0x3ee911[_0xc43c('0x28')]({'plain':!![]});var _0x5023f7=_0xc43c('0x29');return db[_0xc43c('0x2a')][_0xc43c('0x27')]({'where':{'type':_0x5023f7,'resourceId':_0x1b984f['id']}})[_0xc43c('0x26')](function(){return _0x3ee911;});})['then'](function(){_0x386ca2[_0xc43c('0x1d')](0xcc)[_0xc43c('0x1e')]();});}};}function handleEntityNotFound(_0x1d5791,_0x69f727){return function(_0x53eafd){if(!_0x53eafd){_0x1d5791[_0xc43c('0x2b')](0x194);}return _0x53eafd;};}function handleError(_0x53d03b,_0x258b71){_0x258b71=_0x258b71||0x1f4;return function(_0x2d623a){logger[_0xc43c('0x2c')](_0x2d623a[_0xc43c('0x2d')]);if(_0x2d623a[_0xc43c('0x2e')]){delete _0x2d623a[_0xc43c('0x2e')];}_0x53d03b[_0xc43c('0x1d')](_0x258b71)[_0xc43c('0x2f')](_0x2d623a);};}exports[_0xc43c('0x30')]=function(_0x1abca2,_0x159363){var _0x18c39c={},_0x32ee46={},_0x4c1e1a={'count':0x0,'rows':[]};var _0xa1f2c1=_[_0xc43c('0x31')](db[_0xc43c('0x32')][_0xc43c('0x33')],function(_0x242d9e){return{'name':_0x242d9e[_0xc43c('0x34')],'type':_0x242d9e[_0xc43c('0x35')]['key']};});_0x32ee46['model']=_[_0xc43c('0x31')](_0xa1f2c1,'name');_0x32ee46[_0xc43c('0x36')]=_[_0xc43c('0x37')](_0x1abca2['query']);_0x32ee46['filters']=_['intersection'](_0x32ee46['model'],_0x32ee46[_0xc43c('0x36')]);_0x18c39c['attributes']=_[_0xc43c('0x38')](_0x32ee46[_0xc43c('0x39')],qs['fields'](_0x1abca2[_0xc43c('0x36')][_0xc43c('0x3a')]));_0x18c39c['attributes']=_0x18c39c[_0xc43c('0x3b')]['length']?_0x18c39c[_0xc43c('0x3b')]:_0x32ee46['model'];if(!_0x1abca2[_0xc43c('0x36')][_0xc43c('0x3c')](_0xc43c('0x3d'))){_0x18c39c[_0xc43c('0x3e')]=qs[_0xc43c('0x3e')](_0x1abca2['query'][_0xc43c('0x3e')]);_0x18c39c['offset']=qs[_0xc43c('0x20')](_0x1abca2[_0xc43c('0x36')]['offset']);}_0x18c39c[_0xc43c('0x3f')]=qs['sort'](_0x1abca2[_0xc43c('0x36')][_0xc43c('0x40')]);_0x18c39c[_0xc43c('0x41')]=qs[_0xc43c('0x42')](_[_0xc43c('0x43')](_0x1abca2[_0xc43c('0x36')],_0x32ee46[_0xc43c('0x42')]),_0xa1f2c1);if(_0x1abca2[_0xc43c('0x36')][_0xc43c('0x44')]){_0x18c39c[_0xc43c('0x41')]=_[_0xc43c('0x45')](_0x18c39c['where'],{'$or':_['map'](_0xa1f2c1,function(_0x16a1e7){if(_0x16a1e7['type']!=='VIRTUAL'){var _0x11b3aa={};_0x11b3aa[_0x16a1e7[_0xc43c('0x2e')]]={'$like':'%'+_0x1abca2[_0xc43c('0x36')]['filter']+'%'};return _0x11b3aa;}})});}_0x18c39c=_['merge']({},_0x18c39c,_0x1abca2[_0xc43c('0x46')]);var _0x43f9b1={'where':_0x18c39c[_0xc43c('0x41')]};return db[_0xc43c('0x32')][_0xc43c('0x1f')](_0x43f9b1)[_0xc43c('0x26')](function(_0xd0ae26){_0x4c1e1a['count']=_0xd0ae26;if(_0x1abca2[_0xc43c('0x36')]['includeAll']){_0x18c39c[_0xc43c('0x47')]=[{'all':!![]}];}return db[_0xc43c('0x32')][_0xc43c('0x48')](_0x18c39c);})['then'](function(_0x184bf1){_0x4c1e1a[_0xc43c('0x49')]=_0x184bf1;return _0x4c1e1a;})['then'](respondWithFilteredResult(_0x159363,_0x18c39c))[_0xc43c('0x4a')](handleError(_0x159363,null));};exports[_0xc43c('0x4b')]=function(_0x35bb39,_0x4b4bdf){var _0x2873a8={'raw':!![],'where':{'id':_0x35bb39[_0xc43c('0x4c')]['id']}},_0x4d1595={};_0x4d1595[_0xc43c('0x39')]=_[_0xc43c('0x37')](db[_0xc43c('0x32')][_0xc43c('0x33')]);_0x4d1595['query']=_[_0xc43c('0x37')](_0x35bb39[_0xc43c('0x36')]);_0x4d1595['filters']=_[_0xc43c('0x38')](_0x4d1595['model'],_0x4d1595[_0xc43c('0x36')]);_0x2873a8[_0xc43c('0x3b')]=_[_0xc43c('0x38')](_0x4d1595['model'],qs[_0xc43c('0x3a')](_0x35bb39[_0xc43c('0x36')][_0xc43c('0x3a')]));_0x2873a8[_0xc43c('0x3b')]=_0x2873a8[_0xc43c('0x3b')][_0xc43c('0x4d')]?_0x2873a8[_0xc43c('0x3b')]:_0x4d1595[_0xc43c('0x39')];if(_0x35bb39['query']['includeAll']){_0x2873a8[_0xc43c('0x47')]=[{'all':!![]}];}_0x2873a8=_[_0xc43c('0x45')]({},_0x2873a8,_0x35bb39[_0xc43c('0x46')]);return db[_0xc43c('0x32')][_0xc43c('0x4e')](_0x2873a8)[_0xc43c('0x26')](handleEntityNotFound(_0x4b4bdf,null))[_0xc43c('0x26')](respondWithResult(_0x4b4bdf,null))['catch'](handleError(_0x4b4bdf,null));};exports['create']=function(_0x10f07a,_0x35be0){return db[_0xc43c('0x32')][_0xc43c('0x4f')](_0x10f07a[_0xc43c('0x50')],{})[_0xc43c('0x26')](function(_0x263411){var _0x47da25=_0x10f07a[_0xc43c('0x51')][_0xc43c('0x28')]({'plain':!![]});if(!_0x47da25)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x47da25[_0xc43c('0x52')]==='user'){var _0x3023e2=_0x263411['get']({'plain':!![]});var _0x241d44='Reports';return db[_0xc43c('0x53')][_0xc43c('0x4e')]({'where':{'name':_0x241d44,'userProfileId':_0x47da25[_0xc43c('0x54')]},'raw':!![]})[_0xc43c('0x26')](function(_0xfefaef){if(_0xfefaef&&_0xfefaef[_0xc43c('0x55')]===0x0){return db[_0xc43c('0x2a')]['create']({'name':_0x3023e2[_0xc43c('0x2e')],'resourceId':_0x3023e2['id'],'type':_0xc43c('0x29'),'sectionId':_0xfefaef['id']},{})['then'](function(){return _0x263411;});}else{return _0x263411;}})['catch'](function(_0x36cd22){logger[_0xc43c('0x2c')](_0xc43c('0x56'),_0x36cd22);throw _0x36cd22;});}return _0x263411;})[_0xc43c('0x26')](respondWithResult(_0x35be0,0xc9))['catch'](handleError(_0x35be0,null));};exports['update']=function(_0x4de848,_0x152886){if(_0x4de848[_0xc43c('0x50')]['id']){delete _0x4de848[_0xc43c('0x50')]['id'];}return db[_0xc43c('0x32')][_0xc43c('0x4e')]({'where':{'id':_0x4de848[_0xc43c('0x4c')]['id']}})[_0xc43c('0x26')](handleEntityNotFound(_0x152886,null))[_0xc43c('0x26')](saveUpdates(_0x4de848[_0xc43c('0x50')],null))[_0xc43c('0x26')](respondWithResult(_0x152886,null))[_0xc43c('0x4a')](handleError(_0x152886,null));};exports[_0xc43c('0x27')]=function(_0x16afbe,_0x526abd){return db[_0xc43c('0x32')]['find']({'where':{'id':_0x16afbe[_0xc43c('0x4c')]['id']}})['then'](handleEntityNotFound(_0x526abd,null))[_0xc43c('0x26')](removeEntity(_0x526abd,null))['catch'](handleError(_0x526abd,null));};exports[_0xc43c('0x57')]=function(_0x4f5370,_0x3cbeb5){var _0x41196c=0xa;var _0x4e3969=['join',_0xc43c('0x58'),_0xc43c('0x59'),_0xc43c('0x5a')];var _0x4ea1c9={'SUM':_0xc43c('0x5b'),'COUNT':_0xc43c('0x5c'),'COUNT DISTINCT':_0xc43c('0x5d'),'MAX':_0xc43c('0x5e'),'MIN':_0xc43c('0x5f'),'AVG':'AVG(%s)','GROUP_CONCAT':_0xc43c('0x60'),'GROUP_CONCAT ASC':_0xc43c('0x61'),'GROUP_CONCAT DESC':_0xc43c('0x62')};var _0x2402f9={'SEC_TO_TIME':_0xc43c('0x63'),'DATE':'DATE(%s)','HOUR':_0xc43c('0x64'),'ROUND':_0xc43c('0x65'),'UNIX_TIMESTAMP':'UNIX_TIMESTAMP(%s)'};var _0x557d84=function(_0x47a873){return!_['includes']([_0xc43c('0x66'),_0xc43c('0x67'),_0xc43c('0x68'),_0xc43c('0x69')],_0x47a873);};var _0x69887d=function(_0x36c6de){if(!_0x36c6de||!_0x36c6de['rules'][_0xc43c('0x4d')]){return'';}for(var _0x4363f9='(',_0x42063f=0x0;_0x42063f<_0x36c6de['rules'][_0xc43c('0x4d')];_0x42063f+=0x1){_0x42063f>0x0&&(_0x4363f9+='\x20'+_0x36c6de[_0xc43c('0x6a')]+'\x20');_0x4363f9+=_0x36c6de[_0xc43c('0x6b')][_0x42063f]['group']?_0x69887d(_0x36c6de[_0xc43c('0x6b')][_0x42063f]['group']):_0x36c6de[_0xc43c('0x6b')][_0x42063f]['field']+'\x20'+_0x36c6de[_0xc43c('0x6b')][_0x42063f][_0xc43c('0x6c')]+(_0x557d84(_0x36c6de[_0xc43c('0x6b')][_0x42063f]['condition'])?'\x20'+_0x36c6de[_0xc43c('0x6b')][_0x42063f]['value']:'');}return _0x4363f9+')';};var _0x5eb1f6={'where':{'id':_0x4f5370[_0xc43c('0x4c')]['id']}},_0x4d750f,_0x2efe90,_0x39057b,_0x4badef,_0x664e4a;_0x5eb1f6=_[_0xc43c('0x45')]({},_0x5eb1f6,_0x4f5370[_0xc43c('0x46')]);return db[_0xc43c('0x32')][_0xc43c('0x4e')](_0x5eb1f6)[_0xc43c('0x26')](function(_0x553964){if(_0x553964){_0x4d750f=_0x553964;return _0x553964[_0xc43c('0x6d')]();}return null;})[_0xc43c('0x26')](function(_0x2b7189){if(_0x2b7189){if(!_0x2b7189[_0xc43c('0x4d')]){throw new db[(_0xc43c('0x6e'))]['ValidationErrorItem'](_0xc43c('0x6f'),0x193);}_0x2efe90=_0x2b7189;return db[_0xc43c('0x70')][_0xc43c('0x48')]({'raw':!![]});}return null;})[_0xc43c('0x26')](function(_0x2efa3c){if(_0x2efa3c){_0x39057b=_['keyBy'](_0x2efa3c,'id');var _0x3503b2;var _0x49a48e=squel[_0xc43c('0x71')]();_0x49a48e[_0xc43c('0x72')](_0x4d750f['table']);for(var _0x4444e0=0x0;_0x4444e0<_0x2efe90[_0xc43c('0x4d')];_0x4444e0+=0x1){_0x3503b2=_0x2efe90[_0x4444e0]['MetricId']?_0x39057b[_0x2efe90[_0x4444e0]['MetricId']][_0xc43c('0x73')]:_0x2efe90[_0x4444e0][_0xc43c('0x74')];_0x3503b2=_0x2efe90[_0x4444e0]['function']?_[_0xc43c('0x75')](_0x4ea1c9[_0x2efe90[_0x4444e0][_0xc43c('0x76')]],'%s',_0x3503b2):_0x3503b2;_0x3503b2=_0x2efe90[_0x4444e0][_0xc43c('0x77')]?_[_0xc43c('0x75')](_0x2402f9[_0x2efe90[_0x4444e0][_0xc43c('0x77')]],'%s',_0x3503b2):_0x3503b2;if(_0x2efe90[_0x4444e0][_0xc43c('0x78')]){_0x49a48e[_0xc43c('0x79')](_0x3503b2);}_0x2efe90[_0x4444e0][_0xc43c('0x7a')]&&_0x49a48e['order'](_0x3503b2,_0x2efe90[_0x4444e0][_0xc43c('0x7a')]===_0xc43c('0x7b')?![]:!![]);_0x49a48e[_0xc43c('0x74')](_0x3503b2,_0x2efe90[_0x4444e0][_0xc43c('0x7c')]||_0x3503b2);}if(_0x4d750f['joins']){_0x4d750f[_0xc43c('0x7d')]=JSON['parse'](_0x4d750f[_0xc43c('0x7d')]);for(var _0x194eb1=0x0;_0x194eb1<_0x4d750f['joins'][_0xc43c('0x4d')];_0x194eb1+=0x1){if(_0x4d750f[_0xc43c('0x7d')][_0x194eb1][_0xc43c('0x35')]&&_[_0xc43c('0x7e')](_0x4e3969,_0x4d750f[_0xc43c('0x7d')][_0x194eb1][_0xc43c('0x35')])&&_0x4d750f[_0xc43c('0x7d')][_0x194eb1][_0xc43c('0x7f')]&&_0x4d750f['joins'][_0x194eb1][_0xc43c('0x80')]&&_0x4d750f[_0xc43c('0x7d')][_0x194eb1]['foreignKey']){_0x49a48e[_0x4d750f['joins'][_0x194eb1]['type']](_0x4d750f[_0xc43c('0x7d')][_0x194eb1][_0xc43c('0x80')],null,util[_0xc43c('0x77')](_0xc43c('0x81'),_0x4d750f[_0xc43c('0x82')],_0x4d750f['joins'][_0x194eb1][_0xc43c('0x7f')],_0x4d750f[_0xc43c('0x7d')][_0x194eb1]['foreignTable'],_0x4d750f['joins'][_0x194eb1][_0xc43c('0x83')]));}}}if(_0x4d750f[_0xc43c('0x84')]){_0x4d750f[_0xc43c('0x84')]=JSON[_0xc43c('0x85')](_0x4d750f[_0xc43c('0x84')]);_0x49a48e[_0xc43c('0x41')](_0x69887d(_0x4d750f[_0xc43c('0x84')]['group']));}_0x664e4a=_0x49a48e[_0xc43c('0x86')]();_0x49a48e[_0xc43c('0x3e')](_0x41196c);_0x49a48e[_0xc43c('0x20')](0x0);logger[_0xc43c('0x87')](_0xc43c('0x88'),_0x49a48e[_0xc43c('0x89')]());return dbH[_0xc43c('0x8a')][_0xc43c('0x36')](_0x49a48e[_0xc43c('0x89')](),{'type':dbH[_0xc43c('0x8a')][_0xc43c('0x8b')][_0xc43c('0x8c')]});}})[_0xc43c('0x26')](respondWithResult(_0x3cbeb5,null))[_0xc43c('0x4a')](handleError(_0x3cbeb5,null));};function runReport(_0x98f39d,_0xe2d7ca,_0xa1cdc5){var _0x2eef3d=_0xe2d7ca[_0xc43c('0x2e')];var _0x1c0a6d=0xa;var _0x3f3fd9=[_0xc43c('0x8d'),_0xc43c('0x58'),_0xc43c('0x59'),_0xc43c('0x5a')];var _0x319367={'SUM':_0xc43c('0x5b'),'COUNT':_0xc43c('0x5c'),'COUNT DISTINCT':'COUNT(DISTINCT\x20%s)','MAX':_0xc43c('0x5e'),'MIN':_0xc43c('0x5f'),'AVG':_0xc43c('0x8e'),'GROUP_CONCAT':_0xc43c('0x60'),'GROUP_CONCAT ASC':_0xc43c('0x61'),'GROUP_CONCAT DESC':'GROUP_CONCAT(%s\x20ORDER\x20BY\x20%s\x20DESC)'};var _0x5769f4={'SEC_TO_TIME':_0xc43c('0x63'),'DATE':_0xc43c('0x8f'),'HOUR':_0xc43c('0x64'),'ROUND':_0xc43c('0x65'),'UNIX_TIMESTAMP':_0xc43c('0x90')};var _0x4db3e0=function(_0x4e8f73){return!_[_0xc43c('0x7e')]([_0xc43c('0x66'),_0xc43c('0x67'),_0xc43c('0x68'),_0xc43c('0x69')],_0x4e8f73);};var _0x2e986c=function(_0x1d4e36){if(!_0x1d4e36||!_0x1d4e36[_0xc43c('0x6b')]['length']){return'';}for(var _0x16457b='(',_0x2ad3c5=0x0;_0x2ad3c5<_0x1d4e36[_0xc43c('0x6b')]['length'];_0x2ad3c5+=0x1){_0x2ad3c5>0x0&&(_0x16457b+='\x20'+_0x1d4e36[_0xc43c('0x6a')]+'\x20');_0x16457b+=_0x1d4e36['rules'][_0x2ad3c5]['group']?_0x2e986c(_0x1d4e36[_0xc43c('0x6b')][_0x2ad3c5][_0xc43c('0x79')]):_0x1d4e36[_0xc43c('0x6b')][_0x2ad3c5][_0xc43c('0x74')]+'\x20'+_0x1d4e36[_0xc43c('0x6b')][_0x2ad3c5][_0xc43c('0x6c')]+(_0x4db3e0(_0x1d4e36[_0xc43c('0x6b')][_0x2ad3c5][_0xc43c('0x6c')])?'\x20'+_0x1d4e36['rules'][_0x2ad3c5]['value']:'');}return _0x16457b+')';};var _0x1d498b={'where':{'id':_0x98f39d['id']}},_0x3e7746,_0x37b4a0,_0x195502,_0x41a055,_0x5e15fd;_0x1d498b=_[_0xc43c('0x45')]({},_0x1d498b,_0xa1cdc5);return db['AnalyticDefaultReport'][_0xc43c('0x4e')](_0x1d498b)['then'](function(_0x516f06){if(_0x516f06){_0x3e7746=_0x516f06;return _0x516f06[_0xc43c('0x6d')]();}return null;})['then'](function(_0x197e21){if(_0x197e21){if(!_0x197e21[_0xc43c('0x4d')]){throw new db[(_0xc43c('0x6e'))][(_0xc43c('0x91'))](_0xc43c('0x6f'),0x193);}_0x37b4a0=_0x197e21;return db['AnalyticMetric']['findAll']({'raw':!![]});}return null;})[_0xc43c('0x26')](function(_0x45842c){if(_0x45842c){_0x195502=_['keyBy'](_0x45842c,'id');var _0xb3d0ff;var _0x2e210a=squel[_0xc43c('0x71')]();_0x2e210a[_0xc43c('0x72')](_0x3e7746[_0xc43c('0x82')]);for(var _0x1c817c=0x0;_0x1c817c<_0x37b4a0[_0xc43c('0x4d')];_0x1c817c+=0x1){_0xb3d0ff=_0x37b4a0[_0x1c817c][_0xc43c('0x92')]?_0x195502[_0x37b4a0[_0x1c817c]['MetricId']][_0xc43c('0x73')]:_0x37b4a0[_0x1c817c][_0xc43c('0x74')];_0xb3d0ff=_0x37b4a0[_0x1c817c]['function']?_['replace'](_0x319367[_0x37b4a0[_0x1c817c]['function']],'%s',_0xb3d0ff):_0xb3d0ff;_0xb3d0ff=_0x37b4a0[_0x1c817c][_0xc43c('0x77')]?_[_0xc43c('0x75')](_0x5769f4[_0x37b4a0[_0x1c817c][_0xc43c('0x77')]],'%s',_0xb3d0ff):_0xb3d0ff;if(_0x37b4a0[_0x1c817c][_0xc43c('0x78')]){_0x2e210a['group'](_0xb3d0ff);}_0x37b4a0[_0x1c817c][_0xc43c('0x7a')]&&_0x2e210a[_0xc43c('0x3f')](_0xb3d0ff,_0x37b4a0[_0x1c817c][_0xc43c('0x7a')]===_0xc43c('0x7b')?![]:!![]);_0x2e210a[_0xc43c('0x74')](_0xb3d0ff,_0x37b4a0[_0x1c817c][_0xc43c('0x7c')]||_0xb3d0ff);}if(_0x3e7746[_0xc43c('0x7d')]){_0x3e7746[_0xc43c('0x7d')]=JSON['parse'](_0x3e7746[_0xc43c('0x7d')]);for(var _0x1336c=0x0;_0x1336c<_0x3e7746[_0xc43c('0x7d')]['length'];_0x1336c+=0x1){if(_0x3e7746[_0xc43c('0x7d')][_0x1336c][_0xc43c('0x35')]&&_[_0xc43c('0x7e')](_0x3f3fd9,_0x3e7746[_0xc43c('0x7d')][_0x1336c]['type'])&&_0x3e7746['joins'][_0x1336c][_0xc43c('0x7f')]&&_0x3e7746[_0xc43c('0x7d')][_0x1336c][_0xc43c('0x80')]&&_0x3e7746[_0xc43c('0x7d')][_0x1336c][_0xc43c('0x83')]){_0x2e210a[_0x3e7746['joins'][_0x1336c][_0xc43c('0x35')]](_0x3e7746[_0xc43c('0x7d')][_0x1336c][_0xc43c('0x80')],null,util[_0xc43c('0x77')](_0xc43c('0x81'),_0x3e7746[_0xc43c('0x82')],_0x3e7746[_0xc43c('0x7d')][_0x1336c]['parentKey'],_0x3e7746['joins'][_0x1336c][_0xc43c('0x80')],_0x3e7746[_0xc43c('0x7d')][_0x1336c][_0xc43c('0x83')]));}}}if(_0x3e7746[_0xc43c('0x84')]){_0x3e7746['conditions']=JSON[_0xc43c('0x85')](_0x3e7746[_0xc43c('0x84')]);_0x2e210a['where'](_0x2e986c(_0x3e7746['conditions'][_0xc43c('0x79')]));}_0x5e15fd=_0x2e210a[_0xc43c('0x86')]();_0x2e210a[_0xc43c('0x3e')](_0x1c0a6d);_0x2e210a[_0xc43c('0x20')](0x0);return;}})[_0xc43c('0x26')](function(){if(_0xe2d7ca[_0xc43c('0x93')]===_0xc43c('0x94')){return null;}var _0x303f8f=_[_0xc43c('0x45')](_0xe2d7ca,{'name':_0xe2d7ca[_0xc43c('0x95')]||_0xe2d7ca[_0xc43c('0x2e')]||_0x3e7746[_0xc43c('0x2e')],'basename':_0x2eef3d,'savename':util['format'](_0xc43c('0x96'),_0xe2d7ca['name']||_0x3e7746[_0xc43c('0x2e')],require(_0xc43c('0x97'))['generate'](0x4),_0xe2d7ca[_0xc43c('0x93')]||_0xc43c('0x98')),'reportId':_0x3e7746['id'],'reportType':_0xc43c('0x99')});return db[_0xc43c('0x9a')][_0xc43c('0x4f')](_0x303f8f,{'raw':!![]});})[_0xc43c('0x26')](function(_0x49f43b){if(_0x3e7746[_0xc43c('0x82')]===_0xc43c('0x9b')){_0x5e15fd['where'](_0x3e7746[_0xc43c('0x82')]+'.calldate\x20BETWEEN\x20?\x20AND\x20?',_0xe2d7ca[_0xc43c('0x9c')],_0xe2d7ca['endDate']);}else{_0x5e15fd[_0xc43c('0x41')](_0x3e7746['table']+_0xc43c('0x9d'),_0xe2d7ca[_0xc43c('0x9c')],_0xe2d7ca['endDate']);}if(_0x49f43b){logger['info'](_0xc43c('0x9e'),_0x5e15fd['toString']());require(_0xc43c('0x9f'))[_0xc43c('0xa0')](path[_0xc43c('0x8d')](__dirname,_0xc43c('0xa1'),_0x49f43b[_0xc43c('0x93')]),[_0x49f43b['id'],_0x5e15fd[_0xc43c('0x89')](),path[_0xc43c('0x8d')](__dirname,'../../files/reports',_0x49f43b[_0xc43c('0xa2')]),_0x2eef3d]);return _0x49f43b;}else{var _0x3a440d=squel[_0xc43c('0x71')]();_0x3a440d[_0xc43c('0x72')]('('+_0x5e15fd[_0xc43c('0x89')]()+')',_0xc43c('0xa3'));_0x3a440d[_0xc43c('0x74')](_0xc43c('0xa4'),_0xc43c('0x1f'));_0x5e15fd['limit'](_0xe2d7ca['limit']||_0x1c0a6d);_0x5e15fd[_0xc43c('0x20')](_0xe2d7ca['offset']||0x0);return dbH[_0xc43c('0x8a')][_0xc43c('0x36')](_0x3a440d[_0xc43c('0x89')](),{'type':dbH[_0xc43c('0x8a')]['QueryTypes'][_0xc43c('0x8c')]})[_0xc43c('0x26')](function(_0x1a408e){if(!_0x1a408e['length']){_0x41a055=0x0;}else{_0x41a055=_0x1a408e[0x0][_0xc43c('0x1f')]||0x0;}return dbH[_0xc43c('0x8a')][_0xc43c('0x36')](_0x5e15fd['toString'](),{'type':dbH[_0xc43c('0x8a')][_0xc43c('0x8b')][_0xc43c('0x8c')]});})[_0xc43c('0x26')](function(_0xdb84fd){return{'rows':_0xdb84fd||[],'count':_0x41a055};});}});}exports[_0xc43c('0xa5')]=function(_0x12fcb0,_0x48b6a7){return runReport(_0x12fcb0[_0xc43c('0x4c')],_0x12fcb0[_0xc43c('0x36')],_0x12fcb0[_0xc43c('0x46')])[_0xc43c('0x26')](respondWithResult(_0x48b6a7,null))[_0xc43c('0x4a')](handleError(_0x48b6a7,null));};exports[_0xc43c('0xa6')]=runReport;exports[_0xc43c('0x36')]=function(_0x1d1ab5,_0x2942b5){var _0x16b2b4=0xa;var _0x4654d2=[_0xc43c('0x8d'),_0xc43c('0x58'),_0xc43c('0x59'),_0xc43c('0x5a')];var _0x25e909={'SUM':_0xc43c('0x5b'),'COUNT':_0xc43c('0x5c'),'COUNT DISTINCT':_0xc43c('0x5d'),'MAX':_0xc43c('0x5e'),'MIN':_0xc43c('0x5f'),'AVG':'AVG(%s)','GROUP_CONCAT':_0xc43c('0x60'),'GROUP_CONCAT ASC':'GROUP_CONCAT(%s\x20ORDER\x20BY\x20%s\x20ASC)','GROUP_CONCAT DESC':_0xc43c('0x62')};var _0x104118={'SEC_TO_TIME':'SEC_TO_TIME(%s)','DATE':'DATE(%s)','HOUR':'HOUR(%s)','ROUND':_0xc43c('0x65'),'UNIX_TIMESTAMP':_0xc43c('0x90')};var _0x7aebb=function(_0x34e5df){return!_[_0xc43c('0x7e')]([_0xc43c('0x66'),'IS\x20NOT\x20NULL',_0xc43c('0x68'),_0xc43c('0x69')],_0x34e5df);};var _0x39f4b5=function(_0x18c564){if(!_0x18c564||!_0x18c564['rules'][_0xc43c('0x4d')]){return'';}for(var _0xd9b96c='(',_0x1b871e=0x0;_0x1b871e<_0x18c564[_0xc43c('0x6b')][_0xc43c('0x4d')];_0x1b871e+=0x1){_0x1b871e>0x0&&(_0xd9b96c+='\x20'+_0x18c564['operator']+'\x20');_0xd9b96c+=_0x18c564[_0xc43c('0x6b')][_0x1b871e][_0xc43c('0x79')]?_0x39f4b5(_0x18c564[_0xc43c('0x6b')][_0x1b871e][_0xc43c('0x79')]):_0x18c564[_0xc43c('0x6b')][_0x1b871e][_0xc43c('0x74')]+'\x20'+_0x18c564[_0xc43c('0x6b')][_0x1b871e]['condition']+(_0x7aebb(_0x18c564[_0xc43c('0x6b')][_0x1b871e]['condition'])?'\x20'+_0x18c564[_0xc43c('0x6b')][_0x1b871e][_0xc43c('0xa7')]:'');}return _0xd9b96c+')';};var _0x56a226={'where':{'id':_0x1d1ab5[_0xc43c('0x4c')]['id']}},_0x5ed9a8,_0x2220e2,_0x51e06b,_0x2fdac0,_0x28f940;_0x56a226=_[_0xc43c('0x45')]({},_0x56a226,_0x1d1ab5[_0xc43c('0x46')]);return db[_0xc43c('0x32')][_0xc43c('0x4e')](_0x56a226)[_0xc43c('0x26')](function(_0x11a5b2){if(_0x11a5b2){_0x5ed9a8=_0x11a5b2;return _0x11a5b2[_0xc43c('0x6d')]();}return null;})[_0xc43c('0x26')](function(_0x1d6195){if(_0x1d6195){if(!_0x1d6195[_0xc43c('0x4d')]){throw new db[(_0xc43c('0x6e'))][(_0xc43c('0x91'))](_0xc43c('0x6f'),0x193);}_0x2220e2=_0x1d6195;return db['AnalyticMetric'][_0xc43c('0x48')]({'raw':!![]});}return null;})['then'](function(_0x37f75c){if(_0x37f75c){_0x51e06b=_[_0xc43c('0xa8')](_0x37f75c,'id');var _0x4b8b43;var _0x369d8a=squel[_0xc43c('0x71')]();_0x369d8a[_0xc43c('0x72')](_0x5ed9a8[_0xc43c('0x82')]);for(var _0x1d9218=0x0;_0x1d9218<_0x2220e2[_0xc43c('0x4d')];_0x1d9218+=0x1){_0x4b8b43=_0x2220e2[_0x1d9218]['MetricId']?_0x51e06b[_0x2220e2[_0x1d9218][_0xc43c('0x92')]][_0xc43c('0x73')]:_0x2220e2[_0x1d9218][_0xc43c('0x74')];_0x4b8b43=_0x2220e2[_0x1d9218]['function']?_['replace'](_0x25e909[_0x2220e2[_0x1d9218][_0xc43c('0x76')]],'%s',_0x4b8b43):_0x4b8b43;_0x4b8b43=_0x2220e2[_0x1d9218][_0xc43c('0x77')]?_[_0xc43c('0x75')](_0x104118[_0x2220e2[_0x1d9218][_0xc43c('0x77')]],'%s',_0x4b8b43):_0x4b8b43;if(_0x2220e2[_0x1d9218][_0xc43c('0x78')]){_0x369d8a[_0xc43c('0x79')](_0x4b8b43);}_0x2220e2[_0x1d9218][_0xc43c('0x7a')]&&_0x369d8a[_0xc43c('0x3f')](_0x4b8b43,_0x2220e2[_0x1d9218]['orderBy']===_0xc43c('0x7b')?![]:!![]);_0x369d8a['field'](_0x4b8b43,_0x2220e2[_0x1d9218][_0xc43c('0x7c')]||_0x4b8b43);}if(_0x5ed9a8[_0xc43c('0x7d')]){_0x5ed9a8[_0xc43c('0x7d')]=JSON[_0xc43c('0x85')](_0x5ed9a8[_0xc43c('0x7d')]);for(var _0x38c2fe=0x0;_0x38c2fe<_0x5ed9a8['joins']['length'];_0x38c2fe+=0x1){if(_0x5ed9a8[_0xc43c('0x7d')][_0x38c2fe][_0xc43c('0x35')]&&_[_0xc43c('0x7e')](_0x4654d2,_0x5ed9a8[_0xc43c('0x7d')][_0x38c2fe][_0xc43c('0x35')])&&_0x5ed9a8['joins'][_0x38c2fe][_0xc43c('0x7f')]&&_0x5ed9a8[_0xc43c('0x7d')][_0x38c2fe][_0xc43c('0x80')]&&_0x5ed9a8[_0xc43c('0x7d')][_0x38c2fe][_0xc43c('0x83')]){_0x369d8a[_0x5ed9a8['joins'][_0x38c2fe][_0xc43c('0x35')]](_0x5ed9a8[_0xc43c('0x7d')][_0x38c2fe][_0xc43c('0x80')],null,util[_0xc43c('0x77')]('%s.%s\x20=\x20%s.%s',_0x5ed9a8[_0xc43c('0x82')],_0x5ed9a8[_0xc43c('0x7d')][_0x38c2fe][_0xc43c('0x7f')],_0x5ed9a8[_0xc43c('0x7d')][_0x38c2fe][_0xc43c('0x80')],_0x5ed9a8['joins'][_0x38c2fe]['foreignKey']));}}}if(_0x5ed9a8[_0xc43c('0x84')]){_0x5ed9a8['conditions']=JSON[_0xc43c('0x85')](_0x5ed9a8[_0xc43c('0x84')]);_0x369d8a[_0xc43c('0x41')](_0x39f4b5(_0x5ed9a8['conditions'][_0xc43c('0x79')]));}_0x28f940=_0x369d8a[_0xc43c('0x86')]();_0x369d8a[_0xc43c('0x3e')](_0x16b2b4);_0x369d8a[_0xc43c('0x20')](0x0);logger[_0xc43c('0x87')](_0xc43c('0x88'),_0x369d8a[_0xc43c('0x89')]());return dbH[_0xc43c('0x8a')]['query'](_0x369d8a[_0xc43c('0x89')](),{'type':dbH[_0xc43c('0x8a')][_0xc43c('0x8b')][_0xc43c('0x8c')]});}})[_0xc43c('0x26')](function(){return{'sql':_0x28f940['toString']()};})[_0xc43c('0x26')](respondWithResult(_0x2942b5,null))[_0xc43c('0x4a')](handleError(_0x2942b5,null));};