Built motion from commit (unavailable).|2.5.9
[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 _0x8987=['sequelize','QueryTypes','right_join','SUM(%s)','MAX(%s)','MIN(%s)','GROUP_CONCAT(%s)','GROUP_CONCAT(%s\x20ORDER\x20BY\x20%s\x20ASC)','GROUP_CONCAT(%s\x20ORDER\x20BY\x20%s\x20DESC)','IS\x20NOT\x20EMPTY','value','Sequelize','ValidationErrorItem','from','order','orderBy','SELECT','No\x20available\x20data','output','web','fullPath','%s-%s.%s','randomstring','csv','default','cdr','startDate','.createdAt\x20BETWEEN\x20?\x20AND\x20?','endDate','info','Run\x20Query:','child_process','fork','../../files/reports','countTable','COUNT(*)','run','runReport','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','util','path','sox','to-csv','lodash','squel','crypto','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/utils','../../mysqldb','dbH','sendStatus','end','status','count','offset','limit','set','Content-Range','apply','reject','save','then','destroy','get','stack','send','index','map','AnalyticDefaultReport','rawAttributes','fieldName','type','model','name','query','filters','intersection','attributes','fields','nolimit','sort','where','filter','merge','VIRTUAL','includeAll','include','findAll','catch','show','params','keys','length','find','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','autoAssociation','DefaultReports','error','update','preview','join','left_join','cross_join','COUNT(%s)','COUNT(DISTINCT\x20%s)','AVG(%s)','SEC_TO_TIME(%s)','DATE(%s)','HOUR(%s)','ROUND(%s)','UNIX_TIMESTAMP(%s)','includes','IS\x20NULL','IS\x20NOT\x20NULL','IS\x20EMPTY','rules','operator','group','field','condition','options','getFields','Please\x20insert\x20at\x20least\x20one\x20field','AnalyticMetric','keyBy','select','table','MetricId','metric','function','replace','format','groupBy','DESC','alias','joins','parse','parentKey','foreignKey','%s.%s\x20=\x20%s.%s','foreignTable','conditions','clone','debug','Limited\x20Query:','toString'];(function(_0x668b3d,_0x29f58b){var _0x2cf99e=function(_0x279590){while(--_0x279590){_0x668b3d['push'](_0x668b3d['shift']());}};_0x2cf99e(++_0x29f58b);}(_0x8987,0xc9));var _0x7898=function(_0xcfeda9,_0xd418ae){_0xcfeda9=_0xcfeda9-0x0;var _0x4826c7=_0x8987[_0xcfeda9];return _0x4826c7;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x7898('0x0'));var rimraf=require(_0x7898('0x1'));var zipdir=require(_0x7898('0x2'));var jsonpatch=require(_0x7898('0x3'));var rp=require(_0x7898('0x4'));var moment=require('moment');var BPromise=require(_0x7898('0x5'));var Mustache=require(_0x7898('0x6'));var util=require(_0x7898('0x7'));var path=require(_0x7898('0x8'));var sox=require(_0x7898('0x9'));var csv=require(_0x7898('0xa'));var ejs=require('ejs');var fs=require('fs');var _=require(_0x7898('0xb'));var squel=require(_0x7898('0xc'));var crypto=require(_0x7898('0xd'));var jsforce=require('jsforce');var deskjs=require(_0x7898('0xe'));var toCsv=require(_0x7898('0xa'));var querystring=require('querystring');var Papa=require(_0x7898('0xf'));var Redis=require(_0x7898('0x10'));var authService=require(_0x7898('0x11'));var qs=require('../../components/parsers/qs');var as=require(_0x7898('0x12'));var hardwareService=require(_0x7898('0x13'));var logger=require('../../config/logger')('api');var utils=require(_0x7898('0x14'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require(_0x7898('0x15'))['db'];var dbH=require(_0x7898('0x15'))[_0x7898('0x16')];function respondWithStatusCode(_0x2a101a,_0x1d5846){_0x1d5846=_0x1d5846||0xcc;return function(_0x58fbda){if(_0x58fbda){return _0x2a101a[_0x7898('0x17')](_0x1d5846);}return _0x2a101a['status'](_0x1d5846)[_0x7898('0x18')]();};}function respondWithResult(_0x3bef77,_0x3e55ff){_0x3e55ff=_0x3e55ff||0xc8;return function(_0x2e32a3){if(_0x2e32a3){return _0x3bef77[_0x7898('0x19')](_0x3e55ff)['json'](_0x2e32a3);}};}function respondWithFilteredResult(_0x4063bf,_0x46689f){return function(_0x43000e){if(_0x43000e){var _0x5156f0=_0x43000e[_0x7898('0x1a')],_0x26cb5a=_0x46689f['offset'],_0x4ac0c8=_0x46689f[_0x7898('0x1b')]+_0x46689f[_0x7898('0x1c')],_0x99711c;if(_0x4ac0c8>=_0x5156f0){_0x4ac0c8=_0x5156f0;_0x99711c=0xc8;}else{_0x99711c=0xce;}_0x4063bf[_0x7898('0x19')](_0x99711c);return _0x4063bf[_0x7898('0x1d')](_0x7898('0x1e'),_0x26cb5a+'-'+_0x4ac0c8+'/'+_0x5156f0)['json'](_0x43000e);}return null;};}function patchUpdates(_0x104b75){return function(_0x93cd90){try{jsonpatch[_0x7898('0x1f')](_0x93cd90,_0x104b75,!![]);}catch(_0x157e77){return BPromise[_0x7898('0x20')](_0x157e77);}return _0x93cd90[_0x7898('0x21')]();};}function saveUpdates(_0x58b75f,_0x2c22b6){return function(_0x4fbb7e){if(_0x4fbb7e){return _0x4fbb7e['update'](_0x58b75f)[_0x7898('0x22')](function(_0x41b4e0){return _0x41b4e0;});}return null;};}function removeEntity(_0x3c9154,_0x53f0c5){return function(_0x92c194){if(_0x92c194){return _0x92c194[_0x7898('0x23')]()[_0x7898('0x22')](function(){var _0x1ac372=_0x92c194[_0x7898('0x24')]({'plain':!![]});var _0x187cab='DefaultReports';return db['UserProfileResource']['destroy']({'where':{'type':_0x187cab,'resourceId':_0x1ac372['id']}})[_0x7898('0x22')](function(){return _0x92c194;});})['then'](function(){_0x3c9154[_0x7898('0x19')](0xcc)['end']();});}};}function handleEntityNotFound(_0x3f2964,_0x3a3655){return function(_0x1f40db){if(!_0x1f40db){_0x3f2964[_0x7898('0x17')](0x194);}return _0x1f40db;};}function handleError(_0x1b5477,_0x4e6f21){_0x4e6f21=_0x4e6f21||0x1f4;return function(_0x2046a8){logger['error'](_0x2046a8[_0x7898('0x25')]);if(_0x2046a8['name']){delete _0x2046a8['name'];}_0x1b5477[_0x7898('0x19')](_0x4e6f21)[_0x7898('0x26')](_0x2046a8);};}exports[_0x7898('0x27')]=function(_0x55c0c4,_0xe2c8dd){var _0x2ebb78={},_0x1d9eae={},_0x5ce702={'count':0x0,'rows':[]};var _0x2dbeb5=_[_0x7898('0x28')](db[_0x7898('0x29')][_0x7898('0x2a')],function(_0xe36d98){return{'name':_0xe36d98[_0x7898('0x2b')],'type':_0xe36d98[_0x7898('0x2c')]['key']};});_0x1d9eae[_0x7898('0x2d')]=_['map'](_0x2dbeb5,_0x7898('0x2e'));_0x1d9eae[_0x7898('0x2f')]=_['keys'](_0x55c0c4[_0x7898('0x2f')]);_0x1d9eae[_0x7898('0x30')]=_[_0x7898('0x31')](_0x1d9eae[_0x7898('0x2d')],_0x1d9eae[_0x7898('0x2f')]);_0x2ebb78[_0x7898('0x32')]=_['intersection'](_0x1d9eae[_0x7898('0x2d')],qs['fields'](_0x55c0c4[_0x7898('0x2f')][_0x7898('0x33')]));_0x2ebb78['attributes']=_0x2ebb78['attributes']['length']?_0x2ebb78[_0x7898('0x32')]:_0x1d9eae[_0x7898('0x2d')];if(!_0x55c0c4[_0x7898('0x2f')]['hasOwnProperty'](_0x7898('0x34'))){_0x2ebb78[_0x7898('0x1c')]=qs[_0x7898('0x1c')](_0x55c0c4['query'][_0x7898('0x1c')]);_0x2ebb78[_0x7898('0x1b')]=qs[_0x7898('0x1b')](_0x55c0c4[_0x7898('0x2f')][_0x7898('0x1b')]);}_0x2ebb78['order']=qs[_0x7898('0x35')](_0x55c0c4[_0x7898('0x2f')][_0x7898('0x35')]);_0x2ebb78[_0x7898('0x36')]=qs['filters'](_['pick'](_0x55c0c4['query'],_0x1d9eae['filters']),_0x2dbeb5);if(_0x55c0c4['query'][_0x7898('0x37')]){_0x2ebb78[_0x7898('0x36')]=_[_0x7898('0x38')](_0x2ebb78[_0x7898('0x36')],{'$or':_['map'](_0x2dbeb5,function(_0x414210){if(_0x414210[_0x7898('0x2c')]!==_0x7898('0x39')){var _0x24d871={};_0x24d871[_0x414210[_0x7898('0x2e')]]={'$like':'%'+_0x55c0c4['query'][_0x7898('0x37')]+'%'};return _0x24d871;}})});}_0x2ebb78=_[_0x7898('0x38')]({},_0x2ebb78,_0x55c0c4['options']);var _0x3f1ee8={'where':_0x2ebb78['where']};return db['AnalyticDefaultReport'][_0x7898('0x1a')](_0x3f1ee8)[_0x7898('0x22')](function(_0x245563){_0x5ce702[_0x7898('0x1a')]=_0x245563;if(_0x55c0c4['query'][_0x7898('0x3a')]){_0x2ebb78[_0x7898('0x3b')]=[{'all':!![]}];}return db[_0x7898('0x29')][_0x7898('0x3c')](_0x2ebb78);})[_0x7898('0x22')](function(_0x42f06a){_0x5ce702['rows']=_0x42f06a;return _0x5ce702;})[_0x7898('0x22')](respondWithFilteredResult(_0xe2c8dd,_0x2ebb78))[_0x7898('0x3d')](handleError(_0xe2c8dd,null));};exports[_0x7898('0x3e')]=function(_0x50c3d8,_0x36394d){var _0x4ca267={'raw':!![],'where':{'id':_0x50c3d8[_0x7898('0x3f')]['id']}},_0x48eb3a={};_0x48eb3a[_0x7898('0x2d')]=_[_0x7898('0x40')](db[_0x7898('0x29')][_0x7898('0x2a')]);_0x48eb3a['query']=_[_0x7898('0x40')](_0x50c3d8[_0x7898('0x2f')]);_0x48eb3a[_0x7898('0x30')]=_[_0x7898('0x31')](_0x48eb3a[_0x7898('0x2d')],_0x48eb3a[_0x7898('0x2f')]);_0x4ca267[_0x7898('0x32')]=_['intersection'](_0x48eb3a[_0x7898('0x2d')],qs[_0x7898('0x33')](_0x50c3d8[_0x7898('0x2f')][_0x7898('0x33')]));_0x4ca267[_0x7898('0x32')]=_0x4ca267[_0x7898('0x32')][_0x7898('0x41')]?_0x4ca267['attributes']:_0x48eb3a[_0x7898('0x2d')];if(_0x50c3d8[_0x7898('0x2f')]['includeAll']){_0x4ca267[_0x7898('0x3b')]=[{'all':!![]}];}_0x4ca267=_['merge']({},_0x4ca267,_0x50c3d8['options']);return db[_0x7898('0x29')][_0x7898('0x42')](_0x4ca267)[_0x7898('0x22')](handleEntityNotFound(_0x36394d,null))[_0x7898('0x22')](respondWithResult(_0x36394d,null))[_0x7898('0x3d')](handleError(_0x36394d,null));};exports['create']=function(_0x22d7bf,_0x5543e4){return db[_0x7898('0x29')][_0x7898('0x43')](_0x22d7bf[_0x7898('0x44')],{})[_0x7898('0x22')](function(_0x423f08){var _0x3acef9=_0x22d7bf[_0x7898('0x45')][_0x7898('0x24')]({'plain':!![]});if(!_0x3acef9)throw new Error(_0x7898('0x46'));if(_0x3acef9[_0x7898('0x47')]==='user'){var _0x35c6e7=_0x423f08[_0x7898('0x24')]({'plain':!![]});var _0x4d28ac='Reports';return db[_0x7898('0x48')][_0x7898('0x42')]({'where':{'name':_0x4d28ac,'userProfileId':_0x3acef9[_0x7898('0x49')]},'raw':!![]})[_0x7898('0x22')](function(_0x5b07e3){if(_0x5b07e3&&_0x5b07e3[_0x7898('0x4a')]===0x0){return db['UserProfileResource'][_0x7898('0x43')]({'name':_0x35c6e7[_0x7898('0x2e')],'resourceId':_0x35c6e7['id'],'type':_0x7898('0x4b'),'sectionId':_0x5b07e3['id']},{})[_0x7898('0x22')](function(){return _0x423f08;});}else{return _0x423f08;}})[_0x7898('0x3d')](function(_0x1483fe){logger[_0x7898('0x4c')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x1483fe);throw _0x1483fe;});}return _0x423f08;})[_0x7898('0x22')](respondWithResult(_0x5543e4,0xc9))[_0x7898('0x3d')](handleError(_0x5543e4,null));};exports[_0x7898('0x4d')]=function(_0x203d25,_0x294c3c){if(_0x203d25[_0x7898('0x44')]['id']){delete _0x203d25['body']['id'];}return db['AnalyticDefaultReport'][_0x7898('0x42')]({'where':{'id':_0x203d25[_0x7898('0x3f')]['id']}})[_0x7898('0x22')](handleEntityNotFound(_0x294c3c,null))['then'](saveUpdates(_0x203d25['body'],null))[_0x7898('0x22')](respondWithResult(_0x294c3c,null))[_0x7898('0x3d')](handleError(_0x294c3c,null));};exports[_0x7898('0x23')]=function(_0xe6a297,_0x57cd0e){return db[_0x7898('0x29')]['find']({'where':{'id':_0xe6a297[_0x7898('0x3f')]['id']}})[_0x7898('0x22')](handleEntityNotFound(_0x57cd0e,null))[_0x7898('0x22')](removeEntity(_0x57cd0e,null))['catch'](handleError(_0x57cd0e,null));};exports[_0x7898('0x4e')]=function(_0x55ba4b,_0x4f09e4){var _0x387d53=0xa;var _0x36dccc=[_0x7898('0x4f'),_0x7898('0x50'),'right_join',_0x7898('0x51')];var _0x584614={'SUM':'SUM(%s)','COUNT':_0x7898('0x52'),'COUNT DISTINCT':_0x7898('0x53'),'MAX':'MAX(%s)','MIN':'MIN(%s)','AVG':_0x7898('0x54'),'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 _0x35c97f={'SEC_TO_TIME':_0x7898('0x55'),'DATE':_0x7898('0x56'),'HOUR':_0x7898('0x57'),'ROUND':_0x7898('0x58'),'UNIX_TIMESTAMP':_0x7898('0x59')};var _0x5d594c=function(_0x2d4ecf){return!_[_0x7898('0x5a')]([_0x7898('0x5b'),_0x7898('0x5c'),_0x7898('0x5d'),'IS\x20NOT\x20EMPTY'],_0x2d4ecf);};var _0x3a06ca=function(_0x862af8){if(!_0x862af8||!_0x862af8[_0x7898('0x5e')][_0x7898('0x41')]){return'';}for(var _0x4cb15c='(',_0x3bb684=0x0;_0x3bb684<_0x862af8['rules'][_0x7898('0x41')];_0x3bb684+=0x1){_0x3bb684>0x0&&(_0x4cb15c+='\x20'+_0x862af8[_0x7898('0x5f')]+'\x20');_0x4cb15c+=_0x862af8['rules'][_0x3bb684]['group']?_0x3a06ca(_0x862af8[_0x7898('0x5e')][_0x3bb684][_0x7898('0x60')]):_0x862af8[_0x7898('0x5e')][_0x3bb684][_0x7898('0x61')]+'\x20'+_0x862af8['rules'][_0x3bb684][_0x7898('0x62')]+(_0x5d594c(_0x862af8[_0x7898('0x5e')][_0x3bb684]['condition'])?'\x20'+_0x862af8[_0x7898('0x5e')][_0x3bb684]['value']:'');}return _0x4cb15c+')';};var _0x4a4d9c={'where':{'id':_0x55ba4b[_0x7898('0x3f')]['id']}},_0x5d0ed6,_0x15ee43,_0x455e39,_0x32ed2d,_0x146b3c;_0x4a4d9c=_[_0x7898('0x38')]({},_0x4a4d9c,_0x55ba4b[_0x7898('0x63')]);return db[_0x7898('0x29')]['find'](_0x4a4d9c)['then'](function(_0x35f584){if(_0x35f584){_0x5d0ed6=_0x35f584;return _0x35f584[_0x7898('0x64')]();}return null;})[_0x7898('0x22')](function(_0x16a062){if(_0x16a062){if(!_0x16a062[_0x7898('0x41')]){throw new db['Sequelize']['ValidationErrorItem'](_0x7898('0x65'),0x193);}_0x15ee43=_0x16a062;return db[_0x7898('0x66')][_0x7898('0x3c')]({'raw':!![]});}return null;})[_0x7898('0x22')](function(_0x4d1320){if(_0x4d1320){_0x455e39=_[_0x7898('0x67')](_0x4d1320,'id');var _0x207bfa;var _0x32a46b=squel[_0x7898('0x68')]();_0x32a46b['from'](_0x5d0ed6[_0x7898('0x69')]);for(var _0x2f4b46=0x0;_0x2f4b46<_0x15ee43[_0x7898('0x41')];_0x2f4b46+=0x1){_0x207bfa=_0x15ee43[_0x2f4b46]['MetricId']?_0x455e39[_0x15ee43[_0x2f4b46][_0x7898('0x6a')]][_0x7898('0x6b')]:_0x15ee43[_0x2f4b46][_0x7898('0x61')];_0x207bfa=_0x15ee43[_0x2f4b46][_0x7898('0x6c')]?_[_0x7898('0x6d')](_0x584614[_0x15ee43[_0x2f4b46][_0x7898('0x6c')]],'%s',_0x207bfa):_0x207bfa;_0x207bfa=_0x15ee43[_0x2f4b46][_0x7898('0x6e')]?_[_0x7898('0x6d')](_0x35c97f[_0x15ee43[_0x2f4b46]['format']],'%s',_0x207bfa):_0x207bfa;if(_0x15ee43[_0x2f4b46][_0x7898('0x6f')]){_0x32a46b[_0x7898('0x60')](_0x207bfa);}_0x15ee43[_0x2f4b46]['orderBy']&&_0x32a46b['order'](_0x207bfa,_0x15ee43[_0x2f4b46]['orderBy']===_0x7898('0x70')?![]:!![]);_0x32a46b['field'](_0x207bfa,_0x15ee43[_0x2f4b46][_0x7898('0x71')]||_0x207bfa);}if(_0x5d0ed6['joins']){_0x5d0ed6[_0x7898('0x72')]=JSON[_0x7898('0x73')](_0x5d0ed6[_0x7898('0x72')]);for(var _0x306db8=0x0;_0x306db8<_0x5d0ed6['joins'][_0x7898('0x41')];_0x306db8+=0x1){if(_0x5d0ed6[_0x7898('0x72')][_0x306db8][_0x7898('0x2c')]&&_['includes'](_0x36dccc,_0x5d0ed6[_0x7898('0x72')][_0x306db8]['type'])&&_0x5d0ed6[_0x7898('0x72')][_0x306db8][_0x7898('0x74')]&&_0x5d0ed6['joins'][_0x306db8]['foreignTable']&&_0x5d0ed6[_0x7898('0x72')][_0x306db8][_0x7898('0x75')]){_0x32a46b[_0x5d0ed6[_0x7898('0x72')][_0x306db8][_0x7898('0x2c')]](_0x5d0ed6[_0x7898('0x72')][_0x306db8]['foreignTable'],null,util[_0x7898('0x6e')](_0x7898('0x76'),_0x5d0ed6[_0x7898('0x69')],_0x5d0ed6[_0x7898('0x72')][_0x306db8][_0x7898('0x74')],_0x5d0ed6[_0x7898('0x72')][_0x306db8][_0x7898('0x77')],_0x5d0ed6['joins'][_0x306db8][_0x7898('0x75')]));}}}if(_0x5d0ed6[_0x7898('0x78')]){_0x5d0ed6[_0x7898('0x78')]=JSON[_0x7898('0x73')](_0x5d0ed6[_0x7898('0x78')]);_0x32a46b['where'](_0x3a06ca(_0x5d0ed6['conditions'][_0x7898('0x60')]));}_0x146b3c=_0x32a46b[_0x7898('0x79')]();_0x32a46b[_0x7898('0x1c')](_0x387d53);_0x32a46b[_0x7898('0x1b')](0x0);logger[_0x7898('0x7a')](_0x7898('0x7b'),_0x32a46b[_0x7898('0x7c')]());return db[_0x7898('0x7d')][_0x7898('0x2f')](_0x32a46b['toString'](),{'type':db[_0x7898('0x7d')][_0x7898('0x7e')]['SELECT']});}})[_0x7898('0x22')](respondWithResult(_0x4f09e4,null))['catch'](handleError(_0x4f09e4,null));};function runReport(_0x3dc9aa,_0x16cf78,_0x54a569){var _0x1a6e7c=_0x16cf78[_0x7898('0x2e')];var _0x349d89=0xa;var _0x42347f=['join','left_join',_0x7898('0x7f'),_0x7898('0x51')];var _0x4cc8fe={'SUM':_0x7898('0x80'),'COUNT':_0x7898('0x52'),'COUNT DISTINCT':_0x7898('0x53'),'MAX':_0x7898('0x81'),'MIN':_0x7898('0x82'),'AVG':_0x7898('0x54'),'GROUP_CONCAT':_0x7898('0x83'),'GROUP_CONCAT ASC':_0x7898('0x84'),'GROUP_CONCAT DESC':_0x7898('0x85')};var _0x4af3c2={'SEC_TO_TIME':'SEC_TO_TIME(%s)','DATE':_0x7898('0x56'),'HOUR':_0x7898('0x57'),'ROUND':'ROUND(%s)','UNIX_TIMESTAMP':_0x7898('0x59')};var _0x447548=function(_0x4e15a9){return!_['includes']([_0x7898('0x5b'),_0x7898('0x5c'),_0x7898('0x5d'),_0x7898('0x86')],_0x4e15a9);};var _0x4a4503=function(_0x58612a){if(!_0x58612a||!_0x58612a[_0x7898('0x5e')]['length']){return'';}for(var _0x164734='(',_0x46b1c4=0x0;_0x46b1c4<_0x58612a['rules'][_0x7898('0x41')];_0x46b1c4+=0x1){_0x46b1c4>0x0&&(_0x164734+='\x20'+_0x58612a[_0x7898('0x5f')]+'\x20');_0x164734+=_0x58612a['rules'][_0x46b1c4][_0x7898('0x60')]?_0x4a4503(_0x58612a['rules'][_0x46b1c4]['group']):_0x58612a[_0x7898('0x5e')][_0x46b1c4]['field']+'\x20'+_0x58612a[_0x7898('0x5e')][_0x46b1c4]['condition']+(_0x447548(_0x58612a[_0x7898('0x5e')][_0x46b1c4][_0x7898('0x62')])?'\x20'+_0x58612a[_0x7898('0x5e')][_0x46b1c4][_0x7898('0x87')]:'');}return _0x164734+')';};var _0x166b02={'where':{'id':_0x3dc9aa['id']}},_0x1d0f41,_0x393d19,_0x4ac03d,_0x33d274,_0x4e6bb3;_0x166b02=_[_0x7898('0x38')]({},_0x166b02,_0x54a569);return db[_0x7898('0x29')][_0x7898('0x42')](_0x166b02)[_0x7898('0x22')](function(_0x7f9272){if(_0x7f9272){_0x1d0f41=_0x7f9272;return _0x7f9272[_0x7898('0x64')]();}return null;})[_0x7898('0x22')](function(_0x52fe96){if(_0x52fe96){if(!_0x52fe96['length']){throw new db[(_0x7898('0x88'))][(_0x7898('0x89'))](_0x7898('0x65'),0x193);}_0x393d19=_0x52fe96;return db['AnalyticMetric'][_0x7898('0x3c')]({'raw':!![]});}return null;})[_0x7898('0x22')](function(_0x59e1dc){if(_0x59e1dc){_0x4ac03d=_[_0x7898('0x67')](_0x59e1dc,'id');var _0x3370c0;var _0xc1ef9c=squel['select']();_0xc1ef9c[_0x7898('0x8a')](_0x1d0f41[_0x7898('0x69')]);for(var _0x308217=0x0;_0x308217<_0x393d19[_0x7898('0x41')];_0x308217+=0x1){_0x3370c0=_0x393d19[_0x308217][_0x7898('0x6a')]?_0x4ac03d[_0x393d19[_0x308217]['MetricId']]['metric']:_0x393d19[_0x308217][_0x7898('0x61')];_0x3370c0=_0x393d19[_0x308217][_0x7898('0x6c')]?_[_0x7898('0x6d')](_0x4cc8fe[_0x393d19[_0x308217][_0x7898('0x6c')]],'%s',_0x3370c0):_0x3370c0;_0x3370c0=_0x393d19[_0x308217][_0x7898('0x6e')]?_[_0x7898('0x6d')](_0x4af3c2[_0x393d19[_0x308217][_0x7898('0x6e')]],'%s',_0x3370c0):_0x3370c0;if(_0x393d19[_0x308217][_0x7898('0x6f')]){_0xc1ef9c[_0x7898('0x60')](_0x3370c0);}_0x393d19[_0x308217]['orderBy']&&_0xc1ef9c[_0x7898('0x8b')](_0x3370c0,_0x393d19[_0x308217][_0x7898('0x8c')]===_0x7898('0x70')?![]:!![]);_0xc1ef9c[_0x7898('0x61')](_0x3370c0,_0x393d19[_0x308217][_0x7898('0x71')]||_0x3370c0);}if(_0x1d0f41[_0x7898('0x72')]){_0x1d0f41[_0x7898('0x72')]=JSON[_0x7898('0x73')](_0x1d0f41[_0x7898('0x72')]);for(var _0x28ee45=0x0;_0x28ee45<_0x1d0f41[_0x7898('0x72')][_0x7898('0x41')];_0x28ee45+=0x1){if(_0x1d0f41[_0x7898('0x72')][_0x28ee45]['type']&&_[_0x7898('0x5a')](_0x42347f,_0x1d0f41[_0x7898('0x72')][_0x28ee45][_0x7898('0x2c')])&&_0x1d0f41[_0x7898('0x72')][_0x28ee45][_0x7898('0x74')]&&_0x1d0f41['joins'][_0x28ee45]['foreignTable']&&_0x1d0f41['joins'][_0x28ee45][_0x7898('0x75')]){_0xc1ef9c[_0x1d0f41[_0x7898('0x72')][_0x28ee45][_0x7898('0x2c')]](_0x1d0f41[_0x7898('0x72')][_0x28ee45][_0x7898('0x77')],null,util[_0x7898('0x6e')](_0x7898('0x76'),_0x1d0f41[_0x7898('0x69')],_0x1d0f41[_0x7898('0x72')][_0x28ee45][_0x7898('0x74')],_0x1d0f41[_0x7898('0x72')][_0x28ee45][_0x7898('0x77')],_0x1d0f41[_0x7898('0x72')][_0x28ee45][_0x7898('0x75')]));}}}if(_0x1d0f41['conditions']){_0x1d0f41[_0x7898('0x78')]=JSON[_0x7898('0x73')](_0x1d0f41[_0x7898('0x78')]);_0xc1ef9c['where'](_0x4a4503(_0x1d0f41[_0x7898('0x78')][_0x7898('0x60')]));}_0x4e6bb3=_0xc1ef9c['clone']();_0xc1ef9c['limit'](_0x349d89);_0xc1ef9c[_0x7898('0x1b')](0x0);logger[_0x7898('0x7a')](_0x7898('0x7b'),_0xc1ef9c[_0x7898('0x7c')]());return db[_0x7898('0x7d')]['query'](_0xc1ef9c['toString'](),{'type':db[_0x7898('0x7d')][_0x7898('0x7e')][_0x7898('0x8d')]});}})['then'](function(_0x7252ba){if(!_0x7252ba[_0x7898('0x41')]){throw new db[(_0x7898('0x88'))]['ValidationErrorItem'](_0x7898('0x8e'),0xcc);}if(_0x16cf78[_0x7898('0x8f')]===_0x7898('0x90')){return null;}var _0x41dcfb=_[_0x7898('0x38')](_0x16cf78,{'name':_0x16cf78[_0x7898('0x91')]||_0x16cf78[_0x7898('0x2e')]||_0x1d0f41[_0x7898('0x2e')],'basename':_0x1a6e7c,'savename':util['format'](_0x7898('0x92'),_0x16cf78[_0x7898('0x2e')]||_0x1d0f41[_0x7898('0x2e')],require(_0x7898('0x93'))['generate'](0x4),_0x16cf78[_0x7898('0x8f')]||_0x7898('0x94')),'reportId':_0x1d0f41['id'],'reportType':_0x7898('0x95')});return db['AnalyticExtractedReport'][_0x7898('0x43')](_0x41dcfb,{'raw':!![]});})[_0x7898('0x22')](function(_0x1616d7){if(_0x1d0f41[_0x7898('0x69')]===_0x7898('0x96')){_0x4e6bb3['where'](_0x1d0f41[_0x7898('0x69')]+'.calldate\x20BETWEEN\x20?\x20AND\x20?',_0x16cf78[_0x7898('0x97')],_0x16cf78['endDate']);}else{_0x4e6bb3['where'](_0x1d0f41[_0x7898('0x69')]+_0x7898('0x98'),_0x16cf78[_0x7898('0x97')],_0x16cf78[_0x7898('0x99')]);}if(_0x1616d7){logger[_0x7898('0x9a')](_0x7898('0x9b'),_0x4e6bb3[_0x7898('0x7c')]());require(_0x7898('0x9c'))[_0x7898('0x9d')](path['join'](__dirname,'../../components/export/',_0x1616d7['output']),[_0x1616d7['id'],_0x4e6bb3[_0x7898('0x7c')](),path[_0x7898('0x4f')](__dirname,_0x7898('0x9e'),_0x1616d7['savename']),_0x1a6e7c]);return _0x1616d7;}else{var _0x662996=squel[_0x7898('0x68')]();_0x662996[_0x7898('0x8a')]('('+_0x4e6bb3['toString']()+')',_0x7898('0x9f'));_0x662996[_0x7898('0x61')](_0x7898('0xa0'),_0x7898('0x1a'));_0x4e6bb3[_0x7898('0x1c')](_0x16cf78[_0x7898('0x1c')]||_0x349d89);_0x4e6bb3[_0x7898('0x1b')](_0x16cf78[_0x7898('0x1b')]||0x0);return dbH['sequelize'][_0x7898('0x2f')](_0x662996[_0x7898('0x7c')](),{'type':dbH[_0x7898('0x7d')][_0x7898('0x7e')][_0x7898('0x8d')]})[_0x7898('0x22')](function(_0x39927a){if(!_0x39927a[_0x7898('0x41')]){_0x33d274=0x0;}else{_0x33d274=_0x39927a[0x0][_0x7898('0x1a')]||0x0;}return dbH[_0x7898('0x7d')][_0x7898('0x2f')](_0x4e6bb3['toString'](),{'type':dbH['sequelize'][_0x7898('0x7e')]['SELECT']});})['then'](function(_0x2173b2){return{'rows':_0x2173b2||[],'count':_0x33d274};});}});}exports[_0x7898('0xa1')]=function(_0x503b26,_0x45df51){return runReport(_0x503b26[_0x7898('0x3f')],_0x503b26[_0x7898('0x2f')],_0x503b26[_0x7898('0x63')])[_0x7898('0x22')](respondWithResult(_0x45df51,null))[_0x7898('0x3d')](handleError(_0x45df51,null));};exports[_0x7898('0xa2')]=runReport;exports[_0x7898('0x2f')]=function(_0x2a6692,_0x340aea){var _0x52dcb4=0xa;var _0x116603=['join','left_join',_0x7898('0x7f'),'cross_join'];var _0xbe5e78={'SUM':_0x7898('0x80'),'COUNT':_0x7898('0x52'),'COUNT DISTINCT':_0x7898('0x53'),'MAX':_0x7898('0x81'),'MIN':'MIN(%s)','AVG':_0x7898('0x54'),'GROUP_CONCAT':_0x7898('0x83'),'GROUP_CONCAT ASC':'GROUP_CONCAT(%s\x20ORDER\x20BY\x20%s\x20ASC)','GROUP_CONCAT DESC':_0x7898('0x85')};var _0x3b8228={'SEC_TO_TIME':_0x7898('0x55'),'DATE':_0x7898('0x56'),'HOUR':_0x7898('0x57'),'ROUND':_0x7898('0x58'),'UNIX_TIMESTAMP':_0x7898('0x59')};var _0x3e0b43=function(_0x61da40){return!_[_0x7898('0x5a')]([_0x7898('0x5b'),_0x7898('0x5c'),_0x7898('0x5d'),_0x7898('0x86')],_0x61da40);};var _0x233f27=function(_0x42774e){if(!_0x42774e||!_0x42774e[_0x7898('0x5e')][_0x7898('0x41')]){return'';}for(var _0x594dbf='(',_0x44e802=0x0;_0x44e802<_0x42774e[_0x7898('0x5e')]['length'];_0x44e802+=0x1){_0x44e802>0x0&&(_0x594dbf+='\x20'+_0x42774e['operator']+'\x20');_0x594dbf+=_0x42774e[_0x7898('0x5e')][_0x44e802][_0x7898('0x60')]?_0x233f27(_0x42774e[_0x7898('0x5e')][_0x44e802]['group']):_0x42774e['rules'][_0x44e802]['field']+'\x20'+_0x42774e[_0x7898('0x5e')][_0x44e802][_0x7898('0x62')]+(_0x3e0b43(_0x42774e[_0x7898('0x5e')][_0x44e802]['condition'])?'\x20'+_0x42774e[_0x7898('0x5e')][_0x44e802][_0x7898('0x87')]:'');}return _0x594dbf+')';};var _0x3d6b52={'where':{'id':_0x2a6692[_0x7898('0x3f')]['id']}},_0x25c2a8,_0x5598cb,_0x30de13,_0x497b88,_0x32d0a7;_0x3d6b52=_[_0x7898('0x38')]({},_0x3d6b52,_0x2a6692[_0x7898('0x63')]);return db[_0x7898('0x29')]['find'](_0x3d6b52)[_0x7898('0x22')](function(_0x28ddf4){if(_0x28ddf4){_0x25c2a8=_0x28ddf4;return _0x28ddf4[_0x7898('0x64')]();}return null;})[_0x7898('0x22')](function(_0x3b4019){if(_0x3b4019){if(!_0x3b4019['length']){throw new db['Sequelize'][(_0x7898('0x89'))](_0x7898('0x65'),0x193);}_0x5598cb=_0x3b4019;return db[_0x7898('0x66')][_0x7898('0x3c')]({'raw':!![]});}return null;})[_0x7898('0x22')](function(_0x3e9986){if(_0x3e9986){_0x30de13=_[_0x7898('0x67')](_0x3e9986,'id');var _0x22d574;var _0x2b2fb9=squel[_0x7898('0x68')]();_0x2b2fb9['from'](_0x25c2a8[_0x7898('0x69')]);for(var _0xfd66ad=0x0;_0xfd66ad<_0x5598cb['length'];_0xfd66ad+=0x1){_0x22d574=_0x5598cb[_0xfd66ad]['MetricId']?_0x30de13[_0x5598cb[_0xfd66ad][_0x7898('0x6a')]]['metric']:_0x5598cb[_0xfd66ad][_0x7898('0x61')];_0x22d574=_0x5598cb[_0xfd66ad][_0x7898('0x6c')]?_[_0x7898('0x6d')](_0xbe5e78[_0x5598cb[_0xfd66ad][_0x7898('0x6c')]],'%s',_0x22d574):_0x22d574;_0x22d574=_0x5598cb[_0xfd66ad]['format']?_[_0x7898('0x6d')](_0x3b8228[_0x5598cb[_0xfd66ad][_0x7898('0x6e')]],'%s',_0x22d574):_0x22d574;if(_0x5598cb[_0xfd66ad][_0x7898('0x6f')]){_0x2b2fb9[_0x7898('0x60')](_0x22d574);}_0x5598cb[_0xfd66ad]['orderBy']&&_0x2b2fb9['order'](_0x22d574,_0x5598cb[_0xfd66ad][_0x7898('0x8c')]==='DESC'?![]:!![]);_0x2b2fb9[_0x7898('0x61')](_0x22d574,_0x5598cb[_0xfd66ad][_0x7898('0x71')]||_0x22d574);}if(_0x25c2a8[_0x7898('0x72')]){_0x25c2a8[_0x7898('0x72')]=JSON[_0x7898('0x73')](_0x25c2a8[_0x7898('0x72')]);for(var _0x34ad6f=0x0;_0x34ad6f<_0x25c2a8[_0x7898('0x72')]['length'];_0x34ad6f+=0x1){if(_0x25c2a8[_0x7898('0x72')][_0x34ad6f][_0x7898('0x2c')]&&_[_0x7898('0x5a')](_0x116603,_0x25c2a8[_0x7898('0x72')][_0x34ad6f][_0x7898('0x2c')])&&_0x25c2a8[_0x7898('0x72')][_0x34ad6f][_0x7898('0x74')]&&_0x25c2a8[_0x7898('0x72')][_0x34ad6f][_0x7898('0x77')]&&_0x25c2a8[_0x7898('0x72')][_0x34ad6f][_0x7898('0x75')]){_0x2b2fb9[_0x25c2a8[_0x7898('0x72')][_0x34ad6f][_0x7898('0x2c')]](_0x25c2a8[_0x7898('0x72')][_0x34ad6f][_0x7898('0x77')],null,util[_0x7898('0x6e')](_0x7898('0x76'),_0x25c2a8['table'],_0x25c2a8['joins'][_0x34ad6f][_0x7898('0x74')],_0x25c2a8[_0x7898('0x72')][_0x34ad6f][_0x7898('0x77')],_0x25c2a8['joins'][_0x34ad6f][_0x7898('0x75')]));}}}if(_0x25c2a8[_0x7898('0x78')]){_0x25c2a8[_0x7898('0x78')]=JSON[_0x7898('0x73')](_0x25c2a8[_0x7898('0x78')]);_0x2b2fb9[_0x7898('0x36')](_0x233f27(_0x25c2a8[_0x7898('0x78')][_0x7898('0x60')]));}_0x32d0a7=_0x2b2fb9[_0x7898('0x79')]();_0x2b2fb9[_0x7898('0x1c')](_0x52dcb4);_0x2b2fb9[_0x7898('0x1b')](0x0);logger['debug']('Limited\x20Query:',_0x2b2fb9['toString']());return db[_0x7898('0x7d')][_0x7898('0x2f')](_0x2b2fb9[_0x7898('0x7c')](),{'type':db[_0x7898('0x7d')][_0x7898('0x7e')][_0x7898('0x8d')]});}})[_0x7898('0x22')](function(){return{'sql':_0x32d0a7[_0x7898('0x7c')]()};})[_0x7898('0x22')](respondWithResult(_0x340aea,null))[_0x7898('0x3d')](handleError(_0x340aea,null));};