Built motion from commit (unavailable).|2.6.0
[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 _0xe337=['order','sort','pick','filter','where','merge','VIRTUAL','AnalyticDefaultReport','includeAll','findAll','rows','show','params','include','options','find','catch','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','autoAssociation','preview','join','left_join','right_join','cross_join','COUNT(%s)','COUNT(DISTINCT\x20%s)','MAX(%s)','MIN(%s)','AVG(%s)','GROUP_CONCAT(%s\x20ORDER\x20BY\x20%s\x20DESC)','SEC_TO_TIME(%s)','HOUR(%s)','ROUND(%s)','UNIX_TIMESTAMP(%s)','includes','IS\x20NULL','IS\x20NOT\x20NULL','IS\x20NOT\x20EMPTY','rules','operator','group','condition','value','Sequelize','ValidationErrorItem','Please\x20insert\x20at\x20least\x20one\x20field','AnalyticMetric','select','table','MetricId','metric','field','function','replace','format','groupBy','orderBy','DESC','alias','joins','parse','foreignTable','foreignKey','%s.%s\x20=\x20%s.%s','parentKey','conditions','clone','debug','Limited\x20Query:','toString','sequelize','QueryTypes','SELECT','SUM(%s)','GROUP_CONCAT(%s)','GROUP_CONCAT(%s\x20ORDER\x20BY\x20%s\x20ASC)','DATE(%s)','IS\x20EMPTY','getFields','keyBy','web','fullPath','%s-%s.%s','generate','output','csv','AnalyticExtractedReport','cdr','.calldate\x20BETWEEN\x20?\x20AND\x20?','startDate','endDate','.createdAt\x20BETWEEN\x20?\x20AND\x20?','Run\x20Query:','fork','../../components/export/','../../files/reports','savename','countTable','COUNT(*)','from','zip-dir','fast-json-patch','request-promise','mustache','util','sox','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','dbH','sendStatus','end','status','offset','undefined','count','Content-Range','json','apply','save','update','destroy','get','DefaultReports','UserProfileResource','then','error','stack','name','send','index','map','rawAttributes','fieldName','type','key','model','query','keys','filters','attributes','intersection','fields','length','hasOwnProperty','nolimit','limit'];(function(_0x15ab2f,_0x4f4cca){var _0x1c2103=function(_0x589ee6){while(--_0x589ee6){_0x15ab2f['push'](_0x15ab2f['shift']());}};_0x1c2103(++_0x4f4cca);}(_0xe337,0x6a));var _0x7e33=function(_0xa3fa3,_0x328285){_0xa3fa3=_0xa3fa3-0x0;var _0x488dd4=_0xe337[_0xa3fa3];return _0x488dd4;};'use strict';var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require(_0x7e33('0x0'));var jsonpatch=require(_0x7e33('0x1'));var rp=require(_0x7e33('0x2'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0x7e33('0x3'));var util=require(_0x7e33('0x4'));var path=require('path');var sox=require(_0x7e33('0x5'));var csv=require('to-csv');var ejs=require(_0x7e33('0x6'));var fs=require('fs');var fs_extra=require(_0x7e33('0x7'));var _=require(_0x7e33('0x8'));var squel=require(_0x7e33('0x9'));var crypto=require(_0x7e33('0xa'));var jsforce=require(_0x7e33('0xb'));var deskjs=require(_0x7e33('0xc'));var toCsv=require('to-csv');var querystring=require(_0x7e33('0xd'));var Papa=require(_0x7e33('0xe'));var Redis=require(_0x7e33('0xf'));var authService=require(_0x7e33('0x10'));var qs=require(_0x7e33('0x11'));var as=require(_0x7e33('0x12'));var hardwareService=require(_0x7e33('0x13'));var logger=require(_0x7e33('0x14'))(_0x7e33('0x15'));var utils=require(_0x7e33('0x16'));var config=require(_0x7e33('0x17'));var licenseUtil=require(_0x7e33('0x18'));var db=require(_0x7e33('0x19'))['db'];var dbH=require(_0x7e33('0x19'))[_0x7e33('0x1a')];function respondWithStatusCode(_0x199f07,_0x1740f1){_0x1740f1=_0x1740f1||0xcc;return function(_0x57244a){if(_0x57244a){return _0x199f07[_0x7e33('0x1b')](_0x1740f1);}return _0x199f07['status'](_0x1740f1)[_0x7e33('0x1c')]();};}function respondWithResult(_0x5eb755,_0x2dfbfc){_0x2dfbfc=_0x2dfbfc||0xc8;return function(_0x148ca4){if(_0x148ca4){return _0x5eb755[_0x7e33('0x1d')](_0x2dfbfc)['json'](_0x148ca4);}};}function respondWithFilteredResult(_0x5ba4a5,_0x16e9b6){return function(_0x5ecc63){if(_0x5ecc63){var _0x32cf01=typeof _0x16e9b6[_0x7e33('0x1e')]===_0x7e33('0x1f')&&typeof _0x16e9b6['limit']===_0x7e33('0x1f');var _0x5567ee=_0x5ecc63[_0x7e33('0x20')];var _0x470bf6=_0x32cf01?0x0:_0x16e9b6[_0x7e33('0x1e')];var _0x4c85cc=_0x32cf01?_0x5ecc63[_0x7e33('0x20')]:_0x16e9b6[_0x7e33('0x1e')]+_0x16e9b6['limit'];var _0x25443e;if(_0x4c85cc>=_0x5567ee){_0x4c85cc=_0x5567ee;_0x25443e=0xc8;}else{_0x25443e=0xce;}_0x5ba4a5[_0x7e33('0x1d')](_0x25443e);return _0x5ba4a5['set'](_0x7e33('0x21'),_0x470bf6+'-'+_0x4c85cc+'/'+_0x5567ee)[_0x7e33('0x22')](_0x5ecc63);}return null;};}function patchUpdates(_0x23643f){return function(_0x42afb5){try{jsonpatch[_0x7e33('0x23')](_0x42afb5,_0x23643f,!![]);}catch(_0x34288d){return BPromise['reject'](_0x34288d);}return _0x42afb5[_0x7e33('0x24')]();};}function saveUpdates(_0x177330,_0x463f8a){return function(_0x514fac){if(_0x514fac){return _0x514fac[_0x7e33('0x25')](_0x177330)['then'](function(_0x36cae8){return _0x36cae8;});}return null;};}function removeEntity(_0x238426,_0x1b3530){return function(_0x1a7a0f){if(_0x1a7a0f){return _0x1a7a0f[_0x7e33('0x26')]()['then'](function(){var _0xd2b3f1=_0x1a7a0f[_0x7e33('0x27')]({'plain':!![]});var _0x48451f=_0x7e33('0x28');return db[_0x7e33('0x29')][_0x7e33('0x26')]({'where':{'type':_0x48451f,'resourceId':_0xd2b3f1['id']}})[_0x7e33('0x2a')](function(){return _0x1a7a0f;});})[_0x7e33('0x2a')](function(){_0x238426[_0x7e33('0x1d')](0xcc)['end']();});}};}function handleEntityNotFound(_0x227f14,_0xee104f){return function(_0x563b66){if(!_0x563b66){_0x227f14[_0x7e33('0x1b')](0x194);}return _0x563b66;};}function handleError(_0x3e3771,_0x19b938){_0x19b938=_0x19b938||0x1f4;return function(_0x131605){logger[_0x7e33('0x2b')](_0x131605[_0x7e33('0x2c')]);if(_0x131605[_0x7e33('0x2d')]){delete _0x131605[_0x7e33('0x2d')];}_0x3e3771[_0x7e33('0x1d')](_0x19b938)[_0x7e33('0x2e')](_0x131605);};}exports[_0x7e33('0x2f')]=function(_0x58af87,_0x5ab517){var _0x1d631a={},_0x47fee7={},_0x79007={'count':0x0,'rows':[]};var _0x32ba99=_[_0x7e33('0x30')](db['AnalyticDefaultReport'][_0x7e33('0x31')],function(_0x2d8d27){return{'name':_0x2d8d27[_0x7e33('0x32')],'type':_0x2d8d27[_0x7e33('0x33')][_0x7e33('0x34')]};});_0x47fee7[_0x7e33('0x35')]=_[_0x7e33('0x30')](_0x32ba99,_0x7e33('0x2d'));_0x47fee7[_0x7e33('0x36')]=_[_0x7e33('0x37')](_0x58af87['query']);_0x47fee7[_0x7e33('0x38')]=_['intersection'](_0x47fee7['model'],_0x47fee7[_0x7e33('0x36')]);_0x1d631a[_0x7e33('0x39')]=_[_0x7e33('0x3a')](_0x47fee7[_0x7e33('0x35')],qs['fields'](_0x58af87['query'][_0x7e33('0x3b')]));_0x1d631a[_0x7e33('0x39')]=_0x1d631a[_0x7e33('0x39')][_0x7e33('0x3c')]?_0x1d631a[_0x7e33('0x39')]:_0x47fee7[_0x7e33('0x35')];if(!_0x58af87['query'][_0x7e33('0x3d')](_0x7e33('0x3e'))){_0x1d631a[_0x7e33('0x3f')]=qs[_0x7e33('0x3f')](_0x58af87[_0x7e33('0x36')][_0x7e33('0x3f')]);_0x1d631a['offset']=qs['offset'](_0x58af87[_0x7e33('0x36')][_0x7e33('0x1e')]);}_0x1d631a[_0x7e33('0x40')]=qs[_0x7e33('0x41')](_0x58af87[_0x7e33('0x36')][_0x7e33('0x41')]);_0x1d631a['where']=qs[_0x7e33('0x38')](_[_0x7e33('0x42')](_0x58af87[_0x7e33('0x36')],_0x47fee7['filters']),_0x32ba99);if(_0x58af87['query'][_0x7e33('0x43')]){_0x1d631a[_0x7e33('0x44')]=_[_0x7e33('0x45')](_0x1d631a['where'],{'$or':_['map'](_0x32ba99,function(_0x32df50){if(_0x32df50['type']!==_0x7e33('0x46')){var _0x34135b={};_0x34135b[_0x32df50[_0x7e33('0x2d')]]={'$like':'%'+_0x58af87[_0x7e33('0x36')][_0x7e33('0x43')]+'%'};return _0x34135b;}})});}_0x1d631a=_['merge']({},_0x1d631a,_0x58af87['options']);var _0x3784cf={'where':_0x1d631a[_0x7e33('0x44')]};return db[_0x7e33('0x47')]['count'](_0x3784cf)[_0x7e33('0x2a')](function(_0x545863){_0x79007['count']=_0x545863;if(_0x58af87[_0x7e33('0x36')][_0x7e33('0x48')]){_0x1d631a['include']=[{'all':!![]}];}return db['AnalyticDefaultReport'][_0x7e33('0x49')](_0x1d631a);})[_0x7e33('0x2a')](function(_0x2deeaa){_0x79007[_0x7e33('0x4a')]=_0x2deeaa;return _0x79007;})[_0x7e33('0x2a')](respondWithFilteredResult(_0x5ab517,_0x1d631a))['catch'](handleError(_0x5ab517,null));};exports[_0x7e33('0x4b')]=function(_0x7c9c38,_0x37c3c8){var _0x4682b2={'raw':!![],'where':{'id':_0x7c9c38[_0x7e33('0x4c')]['id']}},_0x538a14={};_0x538a14[_0x7e33('0x35')]=_[_0x7e33('0x37')](db[_0x7e33('0x47')][_0x7e33('0x31')]);_0x538a14['query']=_['keys'](_0x7c9c38['query']);_0x538a14[_0x7e33('0x38')]=_[_0x7e33('0x3a')](_0x538a14[_0x7e33('0x35')],_0x538a14['query']);_0x4682b2[_0x7e33('0x39')]=_[_0x7e33('0x3a')](_0x538a14[_0x7e33('0x35')],qs[_0x7e33('0x3b')](_0x7c9c38[_0x7e33('0x36')][_0x7e33('0x3b')]));_0x4682b2[_0x7e33('0x39')]=_0x4682b2['attributes'][_0x7e33('0x3c')]?_0x4682b2[_0x7e33('0x39')]:_0x538a14['model'];if(_0x7c9c38[_0x7e33('0x36')][_0x7e33('0x48')]){_0x4682b2[_0x7e33('0x4d')]=[{'all':!![]}];}_0x4682b2=_[_0x7e33('0x45')]({},_0x4682b2,_0x7c9c38[_0x7e33('0x4e')]);return db[_0x7e33('0x47')][_0x7e33('0x4f')](_0x4682b2)[_0x7e33('0x2a')](handleEntityNotFound(_0x37c3c8,null))[_0x7e33('0x2a')](respondWithResult(_0x37c3c8,null))[_0x7e33('0x50')](handleError(_0x37c3c8,null));};exports[_0x7e33('0x51')]=function(_0x44534b,_0x11c49a){return db[_0x7e33('0x47')][_0x7e33('0x51')](_0x44534b[_0x7e33('0x52')],{})['then'](function(_0xfa2754){var _0xb0c91d=_0x44534b[_0x7e33('0x53')]['get']({'plain':!![]});if(!_0xb0c91d)throw new Error(_0x7e33('0x54'));if(_0xb0c91d[_0x7e33('0x55')]===_0x7e33('0x53')){var _0x5874da=_0xfa2754[_0x7e33('0x27')]({'plain':!![]});var _0x16520f='Reports';return db[_0x7e33('0x56')][_0x7e33('0x4f')]({'where':{'name':_0x16520f,'userProfileId':_0xb0c91d[_0x7e33('0x57')]},'raw':!![]})[_0x7e33('0x2a')](function(_0x322400){if(_0x322400&&_0x322400[_0x7e33('0x58')]===0x0){return db[_0x7e33('0x29')]['create']({'name':_0x5874da[_0x7e33('0x2d')],'resourceId':_0x5874da['id'],'type':_0x7e33('0x28'),'sectionId':_0x322400['id']},{})['then'](function(){return _0xfa2754;});}else{return _0xfa2754;}})[_0x7e33('0x50')](function(_0x2246aa){logger[_0x7e33('0x2b')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x2246aa);throw _0x2246aa;});}return _0xfa2754;})[_0x7e33('0x2a')](respondWithResult(_0x11c49a,0xc9))[_0x7e33('0x50')](handleError(_0x11c49a,null));};exports['update']=function(_0x452eb0,_0x1a262a){if(_0x452eb0['body']['id']){delete _0x452eb0[_0x7e33('0x52')]['id'];}return db[_0x7e33('0x47')][_0x7e33('0x4f')]({'where':{'id':_0x452eb0[_0x7e33('0x4c')]['id']}})[_0x7e33('0x2a')](handleEntityNotFound(_0x1a262a,null))[_0x7e33('0x2a')](saveUpdates(_0x452eb0[_0x7e33('0x52')],null))[_0x7e33('0x2a')](respondWithResult(_0x1a262a,null))[_0x7e33('0x50')](handleError(_0x1a262a,null));};exports[_0x7e33('0x26')]=function(_0x144d36,_0x3f5e8b){return db['AnalyticDefaultReport'][_0x7e33('0x4f')]({'where':{'id':_0x144d36[_0x7e33('0x4c')]['id']}})[_0x7e33('0x2a')](handleEntityNotFound(_0x3f5e8b,null))[_0x7e33('0x2a')](removeEntity(_0x3f5e8b,null))[_0x7e33('0x50')](handleError(_0x3f5e8b,null));};exports[_0x7e33('0x59')]=function(_0xbb9085,_0x20e656){var _0x7022dc=0xa;var _0x1f967c=[_0x7e33('0x5a'),_0x7e33('0x5b'),_0x7e33('0x5c'),_0x7e33('0x5d')];var _0x1ced0a={'SUM':'SUM(%s)','COUNT':_0x7e33('0x5e'),'COUNT DISTINCT':_0x7e33('0x5f'),'MAX':_0x7e33('0x60'),'MIN':_0x7e33('0x61'),'AVG':_0x7e33('0x62'),'GROUP_CONCAT':'GROUP_CONCAT(%s)','GROUP_CONCAT ASC':'GROUP_CONCAT(%s\x20ORDER\x20BY\x20%s\x20ASC)','GROUP_CONCAT DESC':_0x7e33('0x63')};var _0x1900a5={'SEC_TO_TIME':_0x7e33('0x64'),'DATE':'DATE(%s)','HOUR':_0x7e33('0x65'),'ROUND':_0x7e33('0x66'),'UNIX_TIMESTAMP':_0x7e33('0x67')};var _0x338861=function(_0x2eb980){return!_[_0x7e33('0x68')]([_0x7e33('0x69'),_0x7e33('0x6a'),'IS\x20EMPTY',_0x7e33('0x6b')],_0x2eb980);};var _0x2c0e7b=function(_0x52b55e){if(!_0x52b55e||!_0x52b55e[_0x7e33('0x6c')][_0x7e33('0x3c')]){return'';}for(var _0x1f088d='(',_0x1a4ec4=0x0;_0x1a4ec4<_0x52b55e['rules'][_0x7e33('0x3c')];_0x1a4ec4+=0x1){_0x1a4ec4>0x0&&(_0x1f088d+='\x20'+_0x52b55e[_0x7e33('0x6d')]+'\x20');_0x1f088d+=_0x52b55e[_0x7e33('0x6c')][_0x1a4ec4]['group']?_0x2c0e7b(_0x52b55e['rules'][_0x1a4ec4][_0x7e33('0x6e')]):_0x52b55e[_0x7e33('0x6c')][_0x1a4ec4]['field']+'\x20'+_0x52b55e[_0x7e33('0x6c')][_0x1a4ec4][_0x7e33('0x6f')]+(_0x338861(_0x52b55e['rules'][_0x1a4ec4]['condition'])?'\x20'+_0x52b55e[_0x7e33('0x6c')][_0x1a4ec4][_0x7e33('0x70')]:'');}return _0x1f088d+')';};var _0x438f9e={'where':{'id':_0xbb9085[_0x7e33('0x4c')]['id']}},_0x1f556c,_0x2ecedb,_0x5d7af1,_0x41e71d,_0x458a5a;_0x438f9e=_[_0x7e33('0x45')]({},_0x438f9e,_0xbb9085[_0x7e33('0x4e')]);return db['AnalyticDefaultReport']['find'](_0x438f9e)[_0x7e33('0x2a')](function(_0x2c810a){if(_0x2c810a){_0x1f556c=_0x2c810a;return _0x2c810a['getFields']();}return null;})['then'](function(_0xfd781e){if(_0xfd781e){if(!_0xfd781e[_0x7e33('0x3c')]){throw new db[(_0x7e33('0x71'))][(_0x7e33('0x72'))](_0x7e33('0x73'),0x193);}_0x2ecedb=_0xfd781e;return db[_0x7e33('0x74')][_0x7e33('0x49')]({'raw':!![]});}return null;})[_0x7e33('0x2a')](function(_0x1c70c2){if(_0x1c70c2){_0x5d7af1=_['keyBy'](_0x1c70c2,'id');var _0x41ba1b;var _0x47bcaa=squel[_0x7e33('0x75')]();_0x47bcaa['from'](_0x1f556c[_0x7e33('0x76')]);for(var _0x1de71e=0x0;_0x1de71e<_0x2ecedb[_0x7e33('0x3c')];_0x1de71e+=0x1){_0x41ba1b=_0x2ecedb[_0x1de71e][_0x7e33('0x77')]?_0x5d7af1[_0x2ecedb[_0x1de71e]['MetricId']][_0x7e33('0x78')]:_0x2ecedb[_0x1de71e][_0x7e33('0x79')];_0x41ba1b=_0x2ecedb[_0x1de71e][_0x7e33('0x7a')]?_[_0x7e33('0x7b')](_0x1ced0a[_0x2ecedb[_0x1de71e][_0x7e33('0x7a')]],'%s',_0x41ba1b):_0x41ba1b;_0x41ba1b=_0x2ecedb[_0x1de71e][_0x7e33('0x7c')]?_[_0x7e33('0x7b')](_0x1900a5[_0x2ecedb[_0x1de71e][_0x7e33('0x7c')]],'%s',_0x41ba1b):_0x41ba1b;if(_0x2ecedb[_0x1de71e][_0x7e33('0x7d')]){_0x47bcaa['group'](_0x41ba1b);}_0x2ecedb[_0x1de71e][_0x7e33('0x7e')]&&_0x47bcaa[_0x7e33('0x40')](_0x41ba1b,_0x2ecedb[_0x1de71e][_0x7e33('0x7e')]===_0x7e33('0x7f')?![]:!![]);_0x47bcaa[_0x7e33('0x79')](_0x41ba1b,_0x2ecedb[_0x1de71e][_0x7e33('0x80')]||_0x41ba1b);}if(_0x1f556c[_0x7e33('0x81')]){_0x1f556c[_0x7e33('0x81')]=JSON[_0x7e33('0x82')](_0x1f556c[_0x7e33('0x81')]);for(var _0x3284c3=0x0;_0x3284c3<_0x1f556c[_0x7e33('0x81')][_0x7e33('0x3c')];_0x3284c3+=0x1){if(_0x1f556c['joins'][_0x3284c3][_0x7e33('0x33')]&&_[_0x7e33('0x68')](_0x1f967c,_0x1f556c[_0x7e33('0x81')][_0x3284c3]['type'])&&_0x1f556c[_0x7e33('0x81')][_0x3284c3]['parentKey']&&_0x1f556c[_0x7e33('0x81')][_0x3284c3][_0x7e33('0x83')]&&_0x1f556c[_0x7e33('0x81')][_0x3284c3][_0x7e33('0x84')]){_0x47bcaa[_0x1f556c[_0x7e33('0x81')][_0x3284c3][_0x7e33('0x33')]](_0x1f556c[_0x7e33('0x81')][_0x3284c3][_0x7e33('0x83')],null,util[_0x7e33('0x7c')](_0x7e33('0x85'),_0x1f556c[_0x7e33('0x76')],_0x1f556c[_0x7e33('0x81')][_0x3284c3][_0x7e33('0x86')],_0x1f556c['joins'][_0x3284c3]['foreignTable'],_0x1f556c[_0x7e33('0x81')][_0x3284c3][_0x7e33('0x84')]));}}}if(_0x1f556c[_0x7e33('0x87')]){_0x1f556c[_0x7e33('0x87')]=JSON[_0x7e33('0x82')](_0x1f556c[_0x7e33('0x87')]);_0x47bcaa[_0x7e33('0x44')](_0x2c0e7b(_0x1f556c[_0x7e33('0x87')][_0x7e33('0x6e')]));}_0x458a5a=_0x47bcaa[_0x7e33('0x88')]();_0x47bcaa['limit'](_0x7022dc);_0x47bcaa['offset'](0x0);logger[_0x7e33('0x89')](_0x7e33('0x8a'),_0x47bcaa[_0x7e33('0x8b')]());return dbH[_0x7e33('0x8c')][_0x7e33('0x36')](_0x47bcaa[_0x7e33('0x8b')](),{'type':dbH[_0x7e33('0x8c')][_0x7e33('0x8d')][_0x7e33('0x8e')]});}})[_0x7e33('0x2a')](respondWithResult(_0x20e656,null))[_0x7e33('0x50')](handleError(_0x20e656,null));};function runReport(_0xf17750,_0x2ac4da,_0x418dae){var _0x8b00b1=_0x2ac4da[_0x7e33('0x2d')];var _0x46af53=0xa;var _0x2de7e0=['join',_0x7e33('0x5b'),_0x7e33('0x5c'),_0x7e33('0x5d')];var _0x3745ab={'SUM':_0x7e33('0x8f'),'COUNT':_0x7e33('0x5e'),'COUNT DISTINCT':_0x7e33('0x5f'),'MAX':'MAX(%s)','MIN':_0x7e33('0x61'),'AVG':_0x7e33('0x62'),'GROUP_CONCAT':_0x7e33('0x90'),'GROUP_CONCAT ASC':_0x7e33('0x91'),'GROUP_CONCAT DESC':_0x7e33('0x63')};var _0x7557ad={'SEC_TO_TIME':_0x7e33('0x64'),'DATE':_0x7e33('0x92'),'HOUR':_0x7e33('0x65'),'ROUND':_0x7e33('0x66'),'UNIX_TIMESTAMP':'UNIX_TIMESTAMP(%s)'};var _0x4756e0=function(_0x130706){return!_[_0x7e33('0x68')]([_0x7e33('0x69'),'IS\x20NOT\x20NULL',_0x7e33('0x93'),_0x7e33('0x6b')],_0x130706);};var _0x13334b=function(_0x59f91e){if(!_0x59f91e||!_0x59f91e['rules']['length']){return'';}for(var _0x4b940e='(',_0x27b131=0x0;_0x27b131<_0x59f91e[_0x7e33('0x6c')][_0x7e33('0x3c')];_0x27b131+=0x1){_0x27b131>0x0&&(_0x4b940e+='\x20'+_0x59f91e[_0x7e33('0x6d')]+'\x20');_0x4b940e+=_0x59f91e[_0x7e33('0x6c')][_0x27b131]['group']?_0x13334b(_0x59f91e[_0x7e33('0x6c')][_0x27b131][_0x7e33('0x6e')]):_0x59f91e[_0x7e33('0x6c')][_0x27b131]['field']+'\x20'+_0x59f91e['rules'][_0x27b131][_0x7e33('0x6f')]+(_0x4756e0(_0x59f91e[_0x7e33('0x6c')][_0x27b131][_0x7e33('0x6f')])?'\x20'+_0x59f91e[_0x7e33('0x6c')][_0x27b131]['value']:'');}return _0x4b940e+')';};var _0x2a3176={'where':{'id':_0xf17750['id']}},_0x553326,_0x3727d9,_0x38a03d,_0x190b95,_0x14dac8;_0x2a3176=_['merge']({},_0x2a3176,_0x418dae);return db[_0x7e33('0x47')][_0x7e33('0x4f')](_0x2a3176)[_0x7e33('0x2a')](function(_0x6b089d){if(_0x6b089d){_0x553326=_0x6b089d;return _0x6b089d[_0x7e33('0x94')]();}return null;})[_0x7e33('0x2a')](function(_0x21169d){if(_0x21169d){if(!_0x21169d[_0x7e33('0x3c')]){throw new db[(_0x7e33('0x71'))][(_0x7e33('0x72'))](_0x7e33('0x73'),0x193);}_0x3727d9=_0x21169d;return db[_0x7e33('0x74')]['findAll']({'raw':!![]});}return null;})['then'](function(_0x4809d1){if(_0x4809d1){_0x38a03d=_[_0x7e33('0x95')](_0x4809d1,'id');var _0x1bbd92;var _0x36906e=squel[_0x7e33('0x75')]();_0x36906e['from'](_0x553326['table']);for(var _0x3dd3ca=0x0;_0x3dd3ca<_0x3727d9[_0x7e33('0x3c')];_0x3dd3ca+=0x1){_0x1bbd92=_0x3727d9[_0x3dd3ca][_0x7e33('0x77')]?_0x38a03d[_0x3727d9[_0x3dd3ca][_0x7e33('0x77')]][_0x7e33('0x78')]:_0x3727d9[_0x3dd3ca][_0x7e33('0x79')];_0x1bbd92=_0x3727d9[_0x3dd3ca][_0x7e33('0x7a')]?_[_0x7e33('0x7b')](_0x3745ab[_0x3727d9[_0x3dd3ca][_0x7e33('0x7a')]],'%s',_0x1bbd92):_0x1bbd92;_0x1bbd92=_0x3727d9[_0x3dd3ca][_0x7e33('0x7c')]?_['replace'](_0x7557ad[_0x3727d9[_0x3dd3ca][_0x7e33('0x7c')]],'%s',_0x1bbd92):_0x1bbd92;if(_0x3727d9[_0x3dd3ca][_0x7e33('0x7d')]){_0x36906e[_0x7e33('0x6e')](_0x1bbd92);}_0x3727d9[_0x3dd3ca][_0x7e33('0x7e')]&&_0x36906e[_0x7e33('0x40')](_0x1bbd92,_0x3727d9[_0x3dd3ca]['orderBy']===_0x7e33('0x7f')?![]:!![]);_0x36906e[_0x7e33('0x79')](_0x1bbd92,_0x3727d9[_0x3dd3ca]['alias']||_0x1bbd92);}if(_0x553326[_0x7e33('0x81')]){_0x553326[_0x7e33('0x81')]=JSON['parse'](_0x553326[_0x7e33('0x81')]);for(var _0x3f4113=0x0;_0x3f4113<_0x553326[_0x7e33('0x81')][_0x7e33('0x3c')];_0x3f4113+=0x1){if(_0x553326[_0x7e33('0x81')][_0x3f4113]['type']&&_['includes'](_0x2de7e0,_0x553326['joins'][_0x3f4113][_0x7e33('0x33')])&&_0x553326[_0x7e33('0x81')][_0x3f4113]['parentKey']&&_0x553326['joins'][_0x3f4113][_0x7e33('0x83')]&&_0x553326[_0x7e33('0x81')][_0x3f4113][_0x7e33('0x84')]){_0x36906e[_0x553326[_0x7e33('0x81')][_0x3f4113][_0x7e33('0x33')]](_0x553326[_0x7e33('0x81')][_0x3f4113][_0x7e33('0x83')],null,util[_0x7e33('0x7c')]('%s.%s\x20=\x20%s.%s',_0x553326['table'],_0x553326['joins'][_0x3f4113][_0x7e33('0x86')],_0x553326[_0x7e33('0x81')][_0x3f4113][_0x7e33('0x83')],_0x553326[_0x7e33('0x81')][_0x3f4113][_0x7e33('0x84')]));}}}if(_0x553326[_0x7e33('0x87')]){_0x553326[_0x7e33('0x87')]=JSON[_0x7e33('0x82')](_0x553326[_0x7e33('0x87')]);_0x36906e[_0x7e33('0x44')](_0x13334b(_0x553326['conditions']['group']));}_0x14dac8=_0x36906e[_0x7e33('0x88')]();_0x36906e[_0x7e33('0x3f')](_0x46af53);_0x36906e[_0x7e33('0x1e')](0x0);return;}})[_0x7e33('0x2a')](function(){if(_0x2ac4da['output']===_0x7e33('0x96')){return null;}var _0x450ff3=_['merge'](_0x2ac4da,{'name':_0x2ac4da[_0x7e33('0x97')]||_0x2ac4da[_0x7e33('0x2d')]||_0x553326['name'],'basename':_0x8b00b1,'savename':util[_0x7e33('0x7c')](_0x7e33('0x98'),_0x2ac4da[_0x7e33('0x2d')]||_0x553326[_0x7e33('0x2d')],require('randomstring')[_0x7e33('0x99')](0x4),_0x2ac4da[_0x7e33('0x9a')]||_0x7e33('0x9b')),'reportId':_0x553326['id'],'reportType':'default'});return db[_0x7e33('0x9c')][_0x7e33('0x51')](_0x450ff3,{'raw':!![]});})[_0x7e33('0x2a')](function(_0x49ac72){if(_0x553326['table']===_0x7e33('0x9d')){_0x14dac8[_0x7e33('0x44')](_0x553326['table']+_0x7e33('0x9e'),_0x2ac4da[_0x7e33('0x9f')],_0x2ac4da[_0x7e33('0xa0')]);}else{_0x14dac8['where'](_0x553326[_0x7e33('0x76')]+_0x7e33('0xa1'),_0x2ac4da[_0x7e33('0x9f')],_0x2ac4da[_0x7e33('0xa0')]);}if(_0x49ac72){logger['info'](_0x7e33('0xa2'),_0x14dac8[_0x7e33('0x8b')]());require('child_process')[_0x7e33('0xa3')](path[_0x7e33('0x5a')](__dirname,_0x7e33('0xa4'),_0x49ac72[_0x7e33('0x9a')]),[_0x49ac72['id'],_0x14dac8['toString'](),path[_0x7e33('0x5a')](__dirname,_0x7e33('0xa5'),_0x49ac72[_0x7e33('0xa6')]),_0x8b00b1]);return _0x49ac72;}else{var _0x4c993c=squel['select']();_0x4c993c['from']('('+_0x14dac8['toString']()+')',_0x7e33('0xa7'));_0x4c993c[_0x7e33('0x79')](_0x7e33('0xa8'),'count');_0x14dac8['limit'](_0x2ac4da[_0x7e33('0x3f')]||_0x46af53);_0x14dac8[_0x7e33('0x1e')](_0x2ac4da[_0x7e33('0x1e')]||0x0);return dbH[_0x7e33('0x8c')][_0x7e33('0x36')](_0x4c993c[_0x7e33('0x8b')](),{'type':dbH[_0x7e33('0x8c')][_0x7e33('0x8d')]['SELECT']})[_0x7e33('0x2a')](function(_0x1b4013){if(!_0x1b4013[_0x7e33('0x3c')]){_0x190b95=0x0;}else{_0x190b95=_0x1b4013[0x0][_0x7e33('0x20')]||0x0;}return dbH[_0x7e33('0x8c')][_0x7e33('0x36')](_0x14dac8['toString'](),{'type':dbH['sequelize'][_0x7e33('0x8d')]['SELECT']});})[_0x7e33('0x2a')](function(_0x31090b){return{'rows':_0x31090b||[],'count':_0x190b95};});}});}exports['run']=function(_0x23c6a5,_0x1e40d7){return runReport(_0x23c6a5['params'],_0x23c6a5['query'],_0x23c6a5[_0x7e33('0x4e')])[_0x7e33('0x2a')](respondWithResult(_0x1e40d7,null))[_0x7e33('0x50')](handleError(_0x1e40d7,null));};exports['runReport']=runReport;exports['query']=function(_0x5971d2,_0xef7632){var _0x448d60=0xa;var _0x22c8e5=[_0x7e33('0x5a'),'left_join',_0x7e33('0x5c'),_0x7e33('0x5d')];var _0x5c65ca={'SUM':'SUM(%s)','COUNT':_0x7e33('0x5e'),'COUNT DISTINCT':'COUNT(DISTINCT\x20%s)','MAX':'MAX(%s)','MIN':_0x7e33('0x61'),'AVG':_0x7e33('0x62'),'GROUP_CONCAT':'GROUP_CONCAT(%s)','GROUP_CONCAT ASC':_0x7e33('0x91'),'GROUP_CONCAT DESC':'GROUP_CONCAT(%s\x20ORDER\x20BY\x20%s\x20DESC)'};var _0x2bb77d={'SEC_TO_TIME':_0x7e33('0x64'),'DATE':'DATE(%s)','HOUR':'HOUR(%s)','ROUND':_0x7e33('0x66'),'UNIX_TIMESTAMP':'UNIX_TIMESTAMP(%s)'};var _0x5e6a5e=function(_0x554d25){return!_[_0x7e33('0x68')](['IS\x20NULL',_0x7e33('0x6a'),_0x7e33('0x93'),_0x7e33('0x6b')],_0x554d25);};var _0x15067d=function(_0x3f1cb5){if(!_0x3f1cb5||!_0x3f1cb5['rules'][_0x7e33('0x3c')]){return'';}for(var _0x1d8385='(',_0xbf99aa=0x0;_0xbf99aa<_0x3f1cb5[_0x7e33('0x6c')]['length'];_0xbf99aa+=0x1){_0xbf99aa>0x0&&(_0x1d8385+='\x20'+_0x3f1cb5['operator']+'\x20');_0x1d8385+=_0x3f1cb5[_0x7e33('0x6c')][_0xbf99aa][_0x7e33('0x6e')]?_0x15067d(_0x3f1cb5[_0x7e33('0x6c')][_0xbf99aa]['group']):_0x3f1cb5[_0x7e33('0x6c')][_0xbf99aa][_0x7e33('0x79')]+'\x20'+_0x3f1cb5['rules'][_0xbf99aa][_0x7e33('0x6f')]+(_0x5e6a5e(_0x3f1cb5[_0x7e33('0x6c')][_0xbf99aa][_0x7e33('0x6f')])?'\x20'+_0x3f1cb5['rules'][_0xbf99aa][_0x7e33('0x70')]:'');}return _0x1d8385+')';};var _0x2453fe={'where':{'id':_0x5971d2[_0x7e33('0x4c')]['id']}},_0x8304d3,_0x55cb31,_0x3b1d21,_0xfb1601,_0x3d4964;_0x2453fe=_[_0x7e33('0x45')]({},_0x2453fe,_0x5971d2[_0x7e33('0x4e')]);return db[_0x7e33('0x47')]['find'](_0x2453fe)[_0x7e33('0x2a')](function(_0x3ed03d){if(_0x3ed03d){_0x8304d3=_0x3ed03d;return _0x3ed03d[_0x7e33('0x94')]();}return null;})['then'](function(_0x3a7169){if(_0x3a7169){if(!_0x3a7169[_0x7e33('0x3c')]){throw new db[(_0x7e33('0x71'))][(_0x7e33('0x72'))]('Please\x20insert\x20at\x20least\x20one\x20field',0x193);}_0x55cb31=_0x3a7169;return db[_0x7e33('0x74')][_0x7e33('0x49')]({'raw':!![]});}return null;})[_0x7e33('0x2a')](function(_0x591901){if(_0x591901){_0x3b1d21=_['keyBy'](_0x591901,'id');var _0x1d75ab;var _0x3d7cc5=squel[_0x7e33('0x75')]();_0x3d7cc5[_0x7e33('0xa9')](_0x8304d3[_0x7e33('0x76')]);for(var _0x35b16b=0x0;_0x35b16b<_0x55cb31[_0x7e33('0x3c')];_0x35b16b+=0x1){_0x1d75ab=_0x55cb31[_0x35b16b][_0x7e33('0x77')]?_0x3b1d21[_0x55cb31[_0x35b16b][_0x7e33('0x77')]][_0x7e33('0x78')]:_0x55cb31[_0x35b16b][_0x7e33('0x79')];_0x1d75ab=_0x55cb31[_0x35b16b][_0x7e33('0x7a')]?_[_0x7e33('0x7b')](_0x5c65ca[_0x55cb31[_0x35b16b][_0x7e33('0x7a')]],'%s',_0x1d75ab):_0x1d75ab;_0x1d75ab=_0x55cb31[_0x35b16b][_0x7e33('0x7c')]?_[_0x7e33('0x7b')](_0x2bb77d[_0x55cb31[_0x35b16b][_0x7e33('0x7c')]],'%s',_0x1d75ab):_0x1d75ab;if(_0x55cb31[_0x35b16b][_0x7e33('0x7d')]){_0x3d7cc5['group'](_0x1d75ab);}_0x55cb31[_0x35b16b][_0x7e33('0x7e')]&&_0x3d7cc5[_0x7e33('0x40')](_0x1d75ab,_0x55cb31[_0x35b16b][_0x7e33('0x7e')]===_0x7e33('0x7f')?![]:!![]);_0x3d7cc5['field'](_0x1d75ab,_0x55cb31[_0x35b16b]['alias']||_0x1d75ab);}if(_0x8304d3[_0x7e33('0x81')]){_0x8304d3[_0x7e33('0x81')]=JSON['parse'](_0x8304d3[_0x7e33('0x81')]);for(var _0xfed2c4=0x0;_0xfed2c4<_0x8304d3[_0x7e33('0x81')][_0x7e33('0x3c')];_0xfed2c4+=0x1){if(_0x8304d3['joins'][_0xfed2c4][_0x7e33('0x33')]&&_[_0x7e33('0x68')](_0x22c8e5,_0x8304d3['joins'][_0xfed2c4][_0x7e33('0x33')])&&_0x8304d3[_0x7e33('0x81')][_0xfed2c4][_0x7e33('0x86')]&&_0x8304d3[_0x7e33('0x81')][_0xfed2c4][_0x7e33('0x83')]&&_0x8304d3[_0x7e33('0x81')][_0xfed2c4]['foreignKey']){_0x3d7cc5[_0x8304d3[_0x7e33('0x81')][_0xfed2c4][_0x7e33('0x33')]](_0x8304d3[_0x7e33('0x81')][_0xfed2c4][_0x7e33('0x83')],null,util['format'](_0x7e33('0x85'),_0x8304d3[_0x7e33('0x76')],_0x8304d3[_0x7e33('0x81')][_0xfed2c4][_0x7e33('0x86')],_0x8304d3[_0x7e33('0x81')][_0xfed2c4]['foreignTable'],_0x8304d3[_0x7e33('0x81')][_0xfed2c4][_0x7e33('0x84')]));}}}if(_0x8304d3[_0x7e33('0x87')]){_0x8304d3['conditions']=JSON[_0x7e33('0x82')](_0x8304d3[_0x7e33('0x87')]);_0x3d7cc5[_0x7e33('0x44')](_0x15067d(_0x8304d3[_0x7e33('0x87')][_0x7e33('0x6e')]));}_0x3d4964=_0x3d7cc5[_0x7e33('0x88')]();_0x3d7cc5[_0x7e33('0x3f')](_0x448d60);_0x3d7cc5['offset'](0x0);logger['debug'](_0x7e33('0x8a'),_0x3d7cc5['toString']());return dbH[_0x7e33('0x8c')]['query'](_0x3d7cc5[_0x7e33('0x8b')](),{'type':dbH['sequelize'][_0x7e33('0x8d')][_0x7e33('0x8e')]});}})['then'](function(){return{'sql':_0x3d4964['toString']()};})[_0x7e33('0x2a')](respondWithResult(_0xef7632,null))['catch'](handleError(_0xef7632,null));};