Built motion from commit f623a78c.|2.6.31
[motion2.git] / server / config / schedule / index.js
index 36581df..21f1e19 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xade4=['jayson/promise','schedule','../../mysqldb','retry','../../api/analyticCustomReport/analyticCustomReport.controller','client','http','findOne','info','Try\x20to\x20send\x20a\x20mail\x20to','email','format','\x22%s\x22\x20<%s>','MailAccount','name','Smtp','user','bcc','Report\x20%s\x20last\x20%s\x20%s','subtractNumber','join','../../files/reports','savename','%s.%s','extname','zip','existsSync','status','Sent','message','Info\x20report:\x0a%s\x0aPlease\x20see\x20the\x20attachments\x0aThis\x20is\x20an\x20automatically\x20generated\x20email\x20–\x20please\x20do\x20not\x20reply\x20to\x20it.\x0a\x0a','attachments','Empty','text','Report\x20empty\x0aThis\x20is\x20an\x20automatically\x20generated\x20email\x20–\x20please\x20do\x20not\x20reply\x20to\x20this\x20email.\x0a\x0a','sendIfEmpty','empty\x20file,\x20email\x20not\x20sent','Loading','Report\x20still\x20running\x20after\x20timeout.\x0aYou\x20can\x20find\x20the\x20report\x20when\x20it\x20will\x20be\x20completed\x20in\x20Analytics\x20->\x20Extracted\x20Reports.\x0aThis\x20is\x20an\x20automatically\x20generated\x20email\x20–\x20please\x20do\x20not\x20reply\x20to\x20this\x20email.\x0a\x0a','Completed','Report\x20file\x20creation\x20still\x20running\x20after\x20timeout.\x0aYou\x20can\x20find\x20the\x20report\x20when\x20it\x20will\x20be\x20completed\x20in\x20Analytics\x20->\x20Extracted\x20Reports.\x0aThis\x20is\x20an\x20automatically\x20generated\x20email\x20–\x20please\x20do\x20not\x20reply\x20to\x20this\x20email.\x0a\x0a','Failed','error','[handleSendEmail]\x20Unrecognized\x20status:','request','then','stringify','email\x20sent','catch','error\x20mail','case\x20loading','retryOptions','retries','job','data','stop','operation','still\x20loading','case\x20completed','case\x20empty','case\x20failed','entity','dataValues','attempt','Job\x20ID\x20','\x20Attempt\x20#:','report\x20status:','sendMail','isNil','subtractNumber\x20null\x20or\x20undefined','subtractUnit','subtractUnit\x20null\x20or\x20undefined','subtract','YYYY-MM-DD\x20HH:mm:ss','output','DefaultReportId','runReport','CustomReportId','exec\x20custom\x20report\x20id:%s','Schedule','findAll','MailServerOut','CloudProvider','keys','jobs','toString','difference','intersection','length','exists','delete\x20cron','resolve','cron','active','endAt','add','add\x20cron','deleteJob','stop\x20cron','startAt','update','update\x20cron','start','util','path','lodash','moment','cron-job-manager'];(function(_0x5a91f8,_0x44c407){var _0x3bec2e=function(_0x4fd7dd){while(--_0x4fd7dd){_0x5a91f8['push'](_0x5a91f8['shift']());}};_0x3bec2e(++_0x44c407);}(_0xade4,0x67));var _0x4ade=function(_0x3036ac,_0x57006a){_0x3036ac=_0x3036ac-0x0;var _0x12f0e7=_0xade4[_0x3036ac];return _0x12f0e7;};'use strict';var fs=require('fs');var util=require(_0x4ade('0x0'));var path=require(_0x4ade('0x1'));var _=require(_0x4ade('0x2'));var moment=require(_0x4ade('0x3'));var CronJobManager=require(_0x4ade('0x4'));var jayson=require(_0x4ade('0x5'));var BPromise=require('bluebird');var logger=require('../logger')(_0x4ade('0x6'));var db=require(_0x4ade('0x7'))['db'];const retry=require(_0x4ade('0x8'));var analyticCustomReportController=require(_0x4ade('0x9'));var analyticDefaultReportController=require('../../api/analyticDefaultReport/analyticDefaultReport.controller');var client=jayson[_0x4ade('0xa')][_0x4ade('0xb')]({'port':0x232b});var manager=new CronJobManager();function getReportData(_0x2769ff){const _0x479fef={};if(typeof _0x2769ff==='number'){_0x479fef['id']=_0x2769ff;}return db['AnalyticExtractedReport'][_0x4ade('0xc')]({'where':_0x479fef})['then'](function(_0x4ae067){return _0x4ae067;})['catch'](function(_0x42d6f2){logger['error'](_0x42d6f2);});}function handleSendEmail(_0x2a0219,_0x50e5b8){logger[_0x4ade('0xd')](_0x4ade('0xe'),_0x2a0219[_0x4ade('0xf')]);var _0x21a630=!![];var _0x3fa589=_0x2a0219['MailAccount']['getSmtpOptions']();var _0x3c6af9={'account':_0x3fa589,'message':{'from':util[_0x4ade('0x10')](_0x4ade('0x11'),_0x2a0219[_0x4ade('0x12')][_0x4ade('0x13')],_0x2a0219[_0x4ade('0x12')][_0x4ade('0xf')]||_0x2a0219[_0x4ade('0x12')][_0x4ade('0x14')][_0x4ade('0x15')]),'to':_0x2a0219[_0x4ade('0xf')],'cc':_0x2a0219['cc'],'bcc':_0x2a0219[_0x4ade('0x16')],'subject':util[_0x4ade('0x10')](_0x4ade('0x17'),_0x50e5b8[_0x4ade('0x13')],_0x2a0219[_0x4ade('0x18')],_0x2a0219['subtractUnit'])}};var _0x2fb2c1=path[_0x4ade('0x19')](__dirname,_0x4ade('0x1a'));var _0x4ba23d=_0x50e5b8[_0x4ade('0x1b')];var _0x52e5cd=util[_0x4ade('0x10')](_0x4ade('0x1c'),path['basename'](_0x50e5b8['savename'],path[_0x4ade('0x1d')](_0x50e5b8['savename'])),_0x4ade('0x1e'));var _0x58cf2f=path[_0x4ade('0x19')](_0x2fb2c1,_0x4ba23d);var _0x2593fc=path['join'](_0x2fb2c1,_0x52e5cd);if(fs[_0x4ade('0x1f')](_0x58cf2f)){_0x50e5b8[_0x4ade('0x20')]=_0x4ade('0x21');_0x3c6af9[_0x4ade('0x22')]['attachments']=[{'filename':_0x4ba23d,'path':_0x58cf2f}];_0x3c6af9[_0x4ade('0x22')]['text']=util[_0x4ade('0x10')](_0x4ade('0x23'),JSON['stringify'](_0x50e5b8,null,0x2));}else if(fs[_0x4ade('0x1f')](_0x2593fc)){_0x50e5b8[_0x4ade('0x20')]=_0x4ade('0x21');_0x3c6af9[_0x4ade('0x22')][_0x4ade('0x24')]=[{'filename':_0x52e5cd,'path':_0x2593fc}];}else{if(_0x50e5b8[_0x4ade('0x20')]===_0x4ade('0x25')){_0x3c6af9[_0x4ade('0x22')][_0x4ade('0x26')]=_0x4ade('0x27');if(!_0x2a0219[_0x4ade('0x28')]){_0x21a630=![];logger['info'](_0x4ade('0x29'));}}else if(_0x50e5b8[_0x4ade('0x20')]===_0x4ade('0x2a')){_0x3c6af9[_0x4ade('0x22')][_0x4ade('0x26')]=_0x4ade('0x2b');}else if(_0x50e5b8['status']===_0x4ade('0x2c')){_0x3c6af9[_0x4ade('0x22')][_0x4ade('0x26')]=_0x4ade('0x2d');}else if(_0x50e5b8[_0x4ade('0x20')]===_0x4ade('0x2e')){_0x3c6af9[_0x4ade('0x22')][_0x4ade('0x26')]='Report\x20extraction\x20procedure\x20has\x20run\x20into\x20an\x20unexpected\x20error.\x0aThis\x20is\x20an\x20automatically\x20generated\x20email\x20–\x20please\x20do\x20not\x20reply\x20to\x20this\x20email.\x0a\x0a';}else{logger[_0x4ade('0x2f')](_0x4ade('0x30'),_0x50e5b8[_0x4ade('0x20')]);}}if(_0x21a630){return client[_0x4ade('0x31')]('SendMail',_0x3c6af9)[_0x4ade('0x32')](function(_0x4e94cd){if(_0x4e94cd['error']){return logger['error']('error\x20mail',JSON[_0x4ade('0x33')](_0x4e94cd));}return logger['info'](_0x4ade('0x34'));})[_0x4ade('0x35')](function(_0x5638d1){return logger[_0x4ade('0x2f')](_0x4ade('0x36'),JSON[_0x4ade('0x33')](_0x5638d1));});}}function handleError(){return function(_0x21bcc2){return logger['error'](JSON['stringify'](_0x21bcc2));};}function loading(_0x2d2301){logger[_0x4ade('0xd')](_0x4ade('0x37'));if(_0x2d2301['currentAttempt']===_0x2d2301[_0x4ade('0x38')][_0x4ade('0x39')]){handleSendEmail(_0x2d2301[_0x4ade('0x3a')],_0x2d2301[_0x4ade('0x3b')]);_0x2d2301['operation'][_0x4ade('0x3c')]();}else{_0x2d2301[_0x4ade('0x3d')][_0x4ade('0x8')](_0x4ade('0x3e'));}}function completed(_0x5ed088){logger[_0x4ade('0xd')](_0x4ade('0x3f'));handleSendEmail(_0x5ed088[_0x4ade('0x3a')],_0x5ed088[_0x4ade('0x3b')]);_0x5ed088[_0x4ade('0x3d')][_0x4ade('0x3c')]();}function empty(_0x4fd7d4){logger['info'](_0x4ade('0x40'));handleSendEmail(_0x4fd7d4[_0x4ade('0x3a')],_0x4fd7d4['data']);_0x4fd7d4[_0x4ade('0x3d')]['stop']();}function failed(_0x36bf7c){logger[_0x4ade('0xd')](_0x4ade('0x41'));handleSendEmail(_0x36bf7c[_0x4ade('0x3a')],_0x36bf7c[_0x4ade('0x3b')]);_0x36bf7c[_0x4ade('0x3d')][_0x4ade('0x3c')]();}function urecognized(_0x1eac0a){logger['error']('Unrecognized\x20status:',_0x1eac0a[_0x4ade('0x42')][_0x4ade('0x43')]['status']);_0x1eac0a['operation'][_0x4ade('0x3c')]();}const reportStatusStrategies={'Loading':loading,'Completed':completed,'Empty':empty,'Failed':failed,'Unrecognized':urecognized};function retryer(_0x1c2bc5,_0x86b113){const _0x49c572={'retries':0x3,'factor':0x2,'minTimeout':0x5b*0x3e8,'maxTimeout':0xa*0x3c*0x3e8};const _0x73e0db=retry[_0x4ade('0x3d')](_0x49c572);_0x73e0db[_0x4ade('0x44')](_0x419816=>{logger[_0x4ade('0xd')](_0x4ade('0x45')+_0x1c2bc5['id']+_0x4ade('0x46')+_0x419816);try{getReportData(_0x86b113['id'])[_0x4ade('0x32')](function(_0x558c38){_0x86b113=_0x558c38;logger[_0x4ade('0xd')]('report\x20status:',_0x558c38[_0x4ade('0x43')][_0x4ade('0x20')]);if(!reportStatusStrategies[_0x558c38[_0x4ade('0x43')][_0x4ade('0x20')]]){logger[_0x4ade('0x2f')](_0x4ade('0x47'),_0x558c38[_0x4ade('0x43')][_0x4ade('0x20')]);_0x73e0db[_0x4ade('0x8')]();}reportStatusStrategies[_0x558c38['dataValues'][_0x4ade('0x20')]]({'operation':_0x73e0db,'currentAttempt':_0x419816,'retryOptions':_0x49c572,'job':_0x1c2bc5,'data':_0x86b113,'entity':_0x558c38});});}catch(_0x99b7ed){_0x73e0db[_0x4ade('0x8')](_0x99b7ed);}});}function handleResult(_0x4bf705){return function(_0xec2ca1){if(_0x4bf705[_0x4ade('0x48')]&&_0x4bf705[_0x4ade('0x12')]&&_0x4bf705[_0x4ade('0x12')][_0x4ade('0x14')]&&!_['isNil'](_0x4bf705[_0x4ade('0xf')])){retryer(_0x4bf705,_0xec2ca1);}};}function handleJob(_0x269007){return function(){try{if(_[_0x4ade('0x49')](_0x269007[_0x4ade('0x18')])){return logger[_0x4ade('0xd')](_0x4ade('0x4a'));}if(_[_0x4ade('0x49')](_0x269007[_0x4ade('0x4b')])){return logger[_0x4ade('0xd')](_0x4ade('0x4c'));}var _0x1a4fb6={'startDate':moment()[_0x4ade('0x4d')](_0x269007[_0x4ade('0x18')],_0x269007['subtractUnit'])[_0x4ade('0x10')]('YYYY-MM-DD\x20HH:mm:ss'),'endDate':moment()[_0x4ade('0x10')](_0x4ade('0x4e')),'type':'scheduled','output':_0x269007[_0x4ade('0x4f')],'name':_0x269007[_0x4ade('0x13')]};if(!_['isNil'](_0x269007['DefaultReportId'])){logger[_0x4ade('0xd')]('exec\x20defaul\x20report\x20id:%s',_0x269007[_0x4ade('0x50')]);return analyticDefaultReportController[_0x4ade('0x51')]({'id':_0x269007['DefaultReportId']},_0x1a4fb6)['then'](handleResult(_0x269007))[_0x4ade('0x35')](handleError());}if(!_[_0x4ade('0x49')](_0x269007[_0x4ade('0x52')])){logger['info'](_0x4ade('0x53'),_0x269007['CustomReportId']);return analyticCustomReportController[_0x4ade('0x51')]({'id':_0x269007[_0x4ade('0x52')]},_0x1a4fb6)[_0x4ade('0x32')](handleResult(_0x269007))[_0x4ade('0x35')](handleError());}}catch(_0x22500b){logger[_0x4ade('0x2f')](JSON[_0x4ade('0x33')](_0x22500b));}return logger[_0x4ade('0xd')]('no\x20report\x20id');};}function getJobs(_0xffbef){var _0x54bdf6={};if(_0xffbef){_0x54bdf6['id']=_0xffbef;}return db[_0x4ade('0x54')][_0x4ade('0x55')]({'where':_0x54bdf6,'include':[{'model':db[_0x4ade('0x12')],'attributes':['id',_0x4ade('0x13'),_0x4ade('0xf')],'include':[{'model':db[_0x4ade('0x56')],'as':_0x4ade('0x14'),'include':[{'model':db['CloudProvider'],'as':_0x4ade('0x57')}]}]}]})[_0x4ade('0x32')](function(_0x27ed75){var _0x43d9ef=_[_0x4ade('0x58')](manager[_0x4ade('0x59')]);var _0x27884d=_['map'](_0x27ed75,function(_0x558d12){return _0x558d12['id']['toString']();});var _0x74503e=_['keyBy'](_0x27ed75,function(_0x46faf0){return _0x46faf0['id'][_0x4ade('0x5a')]();});var _0x8f7bd=_0xffbef?_0x27884d:_[_0x4ade('0x5b')](_0x27884d,_0x43d9ef);var _0x39f8de=_[_0x4ade('0x5c')](_0x27884d,_0x43d9ef);var _0x12488f=_[_0x4ade('0x5b')](_0x43d9ef,_0x27884d);var _0x38f280;var _0x3a9291;for(_0x38f280=0x0;_0x38f280<_0x12488f[_0x4ade('0x5d')]&&!_0xffbef;_0x38f280+=0x1){_0x3a9291=_0x12488f[_0x38f280][_0x4ade('0x5a')]();if(manager[_0x4ade('0x5e')](_0x3a9291)){manager[_0x4ade('0x3c')](_0x3a9291);manager['deleteJob'](_0x3a9291);logger['info'](_0x4ade('0x5f'),_0x3a9291);}}logger['info']('toRun',JSON[_0x4ade('0x33')](_0x8f7bd));for(_0x38f280=0x0;_0x38f280<_0x8f7bd['length'];_0x38f280+=0x1){_0x3a9291=_0x8f7bd[_0x38f280][_0x4ade('0x5a')]();if(_0xffbef){logger[_0x4ade('0xd')](JSON[_0x4ade('0x33')](_0x74503e[_0x3a9291]));BPromise[_0x4ade('0x60')]()[_0x4ade('0x32')](handleJob(_0x74503e[_0x3a9291]));logger[_0x4ade('0xd')]('run\x20job',_0x74503e[_0x3a9291][_0x4ade('0x13')],_0x74503e[_0x3a9291][_0x4ade('0x61')]);}else if(_0x74503e[_0x3a9291][_0x4ade('0x61')]&&_0x74503e[_0x3a9291][_0x4ade('0x62')]&&moment()['isBetween'](_0x74503e[_0x3a9291]['startAt'],_0x74503e[_0x3a9291][_0x4ade('0x63')])){manager[_0x4ade('0x64')](_0x3a9291,_0x74503e[_0x3a9291][_0x4ade('0x61')],handleJob(_0x74503e[_0x3a9291]));manager['start'](_0x3a9291);logger[_0x4ade('0xd')](_0x4ade('0x65'),_0x74503e[_0x3a9291]['name'],_0x74503e[_0x3a9291][_0x4ade('0x61')]);}else if(manager[_0x4ade('0x5e')](_0x3a9291)){manager[_0x4ade('0x3c')](_0x3a9291);manager[_0x4ade('0x66')](_0x3a9291);logger[_0x4ade('0xd')](_0x4ade('0x67'),_0x74503e[_0x3a9291][_0x4ade('0x13')],_0x74503e[_0x3a9291][_0x4ade('0x61')]);}}for(_0x38f280=0x0,_0x3a9291;_0x38f280<_0x39f8de[_0x4ade('0x5d')]&&!_0xffbef;_0x38f280+=0x1){_0x3a9291=_0x39f8de[_0x38f280][_0x4ade('0x5a')]();if(manager['exists'](_0x3a9291)){if(_0x74503e[_0x3a9291][_0x4ade('0x61')]&&_0x74503e[_0x3a9291][_0x4ade('0x62')]&&moment()['isBetween'](_0x74503e[_0x3a9291][_0x4ade('0x68')],_0x74503e[_0x3a9291][_0x4ade('0x63')])){manager[_0x4ade('0x69')](_0x3a9291,_0x74503e[_0x3a9291]['cron'],handleJob(_0x74503e[_0x3a9291]));logger[_0x4ade('0xd')](_0x4ade('0x6a'),_0x74503e[_0x3a9291]['name'],_0x74503e[_0x3a9291][_0x4ade('0x61')]);}else{manager[_0x4ade('0x3c')](_0x3a9291);manager['deleteJob'](_0x3a9291);logger['info']('stop\x20cron',_0x74503e[_0x3a9291][_0x4ade('0x13')],_0x74503e[_0x3a9291][_0x4ade('0x61')]);}}}})[_0x4ade('0x35')](function(_0x2a3b81){logger[_0x4ade('0x2f')](JSON[_0x4ade('0x33')](_0x2a3b81));});}exports['run']=function(_0x37a6d0){return getJobs(_0x37a6d0);};exports[_0x4ade('0x6b')]=function(){setInterval(function(){return getJobs();},0x3c*0x3e8);return getJobs();};
\ No newline at end of file
+var _0x90f8=['scheduled','name','DefaultReportId','CustomReportId','exec\x20custom\x20report\x20id:%s','findAll','MailServerOut','CloudProvider','keys','jobs','map','toString','keyBy','difference','intersection','length','exists','deleteJob','delete\x20cron','toRun','resolve','run\x20job','cron','active','startAt','endAt','start','add\x20cron','stop\x20cron','isBetween','update','update\x20cron','run','util','path','moment','cron-job-manager','jayson/promise','../logger','schedule','../../mysqldb','retry','../../api/analyticCustomReport/analyticCustomReport.controller','../../api/analyticDefaultReport/analyticDefaultReport.controller','client','http','number','AnalyticExtractedReport','findOne','then','catch','error','Try\x20to\x20send\x20a\x20mail\x20to','email','MailAccount','getSmtpOptions','format','\x22%s\x22\x20<%s>','Smtp','bcc','subtractNumber','subtractUnit','join','savename','%s.%s','extname','existsSync','status','Sent','message','attachments','text','Info\x20report:\x0a%s\x0aPlease\x20see\x20the\x20attachments\x0aThis\x20is\x20an\x20automatically\x20generated\x20email\x20–\x20please\x20do\x20not\x20reply\x20to\x20it.\x0a\x0a','Report\x20empty\x0aThis\x20is\x20an\x20automatically\x20generated\x20email\x20–\x20please\x20do\x20not\x20reply\x20to\x20this\x20email.\x0a\x0a','sendIfEmpty','info','empty\x20file,\x20email\x20not\x20sent','Report\x20still\x20running\x20after\x20timeout.\x0aYou\x20can\x20find\x20the\x20report\x20when\x20it\x20will\x20be\x20completed\x20in\x20Analytics\x20->\x20Extracted\x20Reports.\x0aThis\x20is\x20an\x20automatically\x20generated\x20email\x20–\x20please\x20do\x20not\x20reply\x20to\x20this\x20email.\x0a\x0a','Completed','Report\x20file\x20creation\x20still\x20running\x20after\x20timeout.\x0aYou\x20can\x20find\x20the\x20report\x20when\x20it\x20will\x20be\x20completed\x20in\x20Analytics\x20->\x20Extracted\x20Reports.\x0aThis\x20is\x20an\x20automatically\x20generated\x20email\x20–\x20please\x20do\x20not\x20reply\x20to\x20this\x20email.\x0a\x0a','Failed','Report\x20extraction\x20procedure\x20has\x20run\x20into\x20an\x20unexpected\x20error.\x0aThis\x20is\x20an\x20automatically\x20generated\x20email\x20–\x20please\x20do\x20not\x20reply\x20to\x20this\x20email.\x0a\x0a','[handleSendEmail]\x20Unrecognized\x20status:','request','SendMail','error\x20mail','stringify','email\x20sent','case\x20loading','currentAttempt','retries','data','operation','stop','still\x20loading','case\x20completed','job','case\x20empty','case\x20failed','entity','dataValues','attempt','report\x20status:','sendMail','subtractNumber\x20null\x20or\x20undefined','isNil','subtract','YYYY-MM-DD\x20HH:mm:ss'];(function(_0x1a0b71,_0x1c6e2a){var _0x2182ef=function(_0x30878f){while(--_0x30878f){_0x1a0b71['push'](_0x1a0b71['shift']());}};_0x2182ef(++_0x1c6e2a);}(_0x90f8,0x1d1));var _0x890f=function(_0x26d7e5,_0x1bbad8){_0x26d7e5=_0x26d7e5-0x0;var _0x1e7b18=_0x90f8[_0x26d7e5];return _0x1e7b18;};'use strict';var fs=require('fs');var util=require(_0x890f('0x0'));var path=require(_0x890f('0x1'));var _=require('lodash');var moment=require(_0x890f('0x2'));var CronJobManager=require(_0x890f('0x3'));var jayson=require(_0x890f('0x4'));var BPromise=require('bluebird');var logger=require(_0x890f('0x5'))(_0x890f('0x6'));var db=require(_0x890f('0x7'))['db'];const retry=require(_0x890f('0x8'));var analyticCustomReportController=require(_0x890f('0x9'));var analyticDefaultReportController=require(_0x890f('0xa'));var client=jayson[_0x890f('0xb')][_0x890f('0xc')]({'port':0x232b});var manager=new CronJobManager();function getReportData(_0x845a11){const _0x5d5816={};if(typeof _0x845a11===_0x890f('0xd')){_0x5d5816['id']=_0x845a11;}return db[_0x890f('0xe')][_0x890f('0xf')]({'where':_0x5d5816})[_0x890f('0x10')](function(_0x57f7f4){return _0x57f7f4;})[_0x890f('0x11')](function(_0x3e0214){logger[_0x890f('0x12')](_0x3e0214);});}function handleSendEmail(_0x1780e8,_0xbe0a97){logger['info'](_0x890f('0x13'),_0x1780e8[_0x890f('0x14')]);var _0x159952=!![];var _0x195deb=_0x1780e8[_0x890f('0x15')][_0x890f('0x16')]();var _0x372d65={'account':_0x195deb,'message':{'from':util[_0x890f('0x17')](_0x890f('0x18'),_0x1780e8[_0x890f('0x15')]['name'],_0x1780e8[_0x890f('0x15')][_0x890f('0x14')]||_0x1780e8[_0x890f('0x15')][_0x890f('0x19')]['user']),'to':_0x1780e8[_0x890f('0x14')],'cc':_0x1780e8['cc'],'bcc':_0x1780e8[_0x890f('0x1a')],'subject':util[_0x890f('0x17')]('Report\x20%s\x20last\x20%s\x20%s',_0xbe0a97['name'],_0x1780e8[_0x890f('0x1b')],_0x1780e8[_0x890f('0x1c')])}};var _0x14af1a=path[_0x890f('0x1d')](__dirname,'../../files/reports');var _0x278224=_0xbe0a97[_0x890f('0x1e')];var _0x46d096=util['format'](_0x890f('0x1f'),path['basename'](_0xbe0a97[_0x890f('0x1e')],path[_0x890f('0x20')](_0xbe0a97['savename'])),'zip');var _0x1c44a3=path[_0x890f('0x1d')](_0x14af1a,_0x278224);var _0x1c34a3=path[_0x890f('0x1d')](_0x14af1a,_0x46d096);if(fs[_0x890f('0x21')](_0x1c44a3)){_0xbe0a97[_0x890f('0x22')]=_0x890f('0x23');_0x372d65[_0x890f('0x24')][_0x890f('0x25')]=[{'filename':_0x278224,'path':_0x1c44a3}];_0x372d65[_0x890f('0x24')][_0x890f('0x26')]=util[_0x890f('0x17')](_0x890f('0x27'),JSON['stringify'](_0xbe0a97,null,0x2));}else if(fs[_0x890f('0x21')](_0x1c34a3)){_0xbe0a97[_0x890f('0x22')]='Sent';_0x372d65[_0x890f('0x24')]['attachments']=[{'filename':_0x46d096,'path':_0x1c34a3}];}else{if(_0xbe0a97[_0x890f('0x22')]==='Empty'){_0x372d65['message'][_0x890f('0x26')]=_0x890f('0x28');if(!_0x1780e8[_0x890f('0x29')]){_0x159952=![];logger[_0x890f('0x2a')](_0x890f('0x2b'));}}else if(_0xbe0a97[_0x890f('0x22')]==='Loading'){_0x372d65['message'][_0x890f('0x26')]=_0x890f('0x2c');}else if(_0xbe0a97[_0x890f('0x22')]===_0x890f('0x2d')){_0x372d65[_0x890f('0x24')][_0x890f('0x26')]=_0x890f('0x2e');}else if(_0xbe0a97[_0x890f('0x22')]===_0x890f('0x2f')){_0x372d65[_0x890f('0x24')][_0x890f('0x26')]=_0x890f('0x30');}else{logger[_0x890f('0x12')](_0x890f('0x31'),_0xbe0a97[_0x890f('0x22')]);}}if(_0x159952){return client[_0x890f('0x32')](_0x890f('0x33'),_0x372d65)[_0x890f('0x10')](function(_0x382237){if(_0x382237['error']){return logger['error'](_0x890f('0x34'),JSON[_0x890f('0x35')](_0x382237));}return logger[_0x890f('0x2a')](_0x890f('0x36'));})[_0x890f('0x11')](function(_0x26a12d){return logger['error'](_0x890f('0x34'),JSON[_0x890f('0x35')](_0x26a12d));});}}function handleError(){return function(_0x2c1d3a){return logger['error'](JSON[_0x890f('0x35')](_0x2c1d3a));};}function loading(_0x597d41){logger[_0x890f('0x2a')](_0x890f('0x37'));if(_0x597d41[_0x890f('0x38')]===_0x597d41['retryOptions'][_0x890f('0x39')]){handleSendEmail(_0x597d41['job'],_0x597d41[_0x890f('0x3a')]);_0x597d41[_0x890f('0x3b')][_0x890f('0x3c')]();}else{_0x597d41[_0x890f('0x3b')][_0x890f('0x8')](_0x890f('0x3d'));}}function completed(_0x3c80c3){logger[_0x890f('0x2a')](_0x890f('0x3e'));handleSendEmail(_0x3c80c3[_0x890f('0x3f')],_0x3c80c3[_0x890f('0x3a')]);_0x3c80c3['operation'][_0x890f('0x3c')]();}function empty(_0x3a860e){logger['info'](_0x890f('0x40'));handleSendEmail(_0x3a860e[_0x890f('0x3f')],_0x3a860e['data']);_0x3a860e['operation'][_0x890f('0x3c')]();}function failed(_0x508f16){logger[_0x890f('0x2a')](_0x890f('0x41'));handleSendEmail(_0x508f16[_0x890f('0x3f')],_0x508f16[_0x890f('0x3a')]);_0x508f16[_0x890f('0x3b')]['stop']();}function urecognized(_0xcfb7f3){logger[_0x890f('0x12')]('Unrecognized\x20status:',_0xcfb7f3[_0x890f('0x42')][_0x890f('0x43')][_0x890f('0x22')]);_0xcfb7f3[_0x890f('0x3b')][_0x890f('0x3c')]();}const reportStatusStrategies={'Loading':loading,'Completed':completed,'Empty':empty,'Failed':failed,'Unrecognized':urecognized};function retryer(_0x314125,_0x347cbd){const _0x8c4384={'retries':0x3,'factor':0x2,'minTimeout':0x5b*0x3e8,'maxTimeout':0xa*0x3c*0x3e8};const _0x629891=retry[_0x890f('0x3b')](_0x8c4384);_0x629891[_0x890f('0x44')](_0x12cfb7=>{logger[_0x890f('0x2a')]('Job\x20ID\x20'+_0x314125['id']+'\x20Attempt\x20#:'+_0x12cfb7);try{getReportData(_0x347cbd['id'])[_0x890f('0x10')](function(_0x4a708d){_0x347cbd=_0x4a708d;logger[_0x890f('0x2a')](_0x890f('0x45'),_0x4a708d[_0x890f('0x43')][_0x890f('0x22')]);if(!reportStatusStrategies[_0x4a708d[_0x890f('0x43')]['status']]){logger[_0x890f('0x12')](_0x890f('0x45'),_0x4a708d['dataValues'][_0x890f('0x22')]);_0x629891['retry']();}reportStatusStrategies[_0x4a708d[_0x890f('0x43')][_0x890f('0x22')]]({'operation':_0x629891,'currentAttempt':_0x12cfb7,'retryOptions':_0x8c4384,'job':_0x314125,'data':_0x347cbd,'entity':_0x4a708d});});}catch(_0x3ab4fb){_0x629891[_0x890f('0x8')](_0x3ab4fb);}});}function handleResult(_0x3e130f){return function(_0x271ef8){if(_0x3e130f[_0x890f('0x46')]&&_0x3e130f['MailAccount']&&_0x3e130f[_0x890f('0x15')][_0x890f('0x19')]&&!_['isNil'](_0x3e130f['email'])){retryer(_0x3e130f,_0x271ef8);}};}function handleJob(_0x249cc4){return function(){try{if(_['isNil'](_0x249cc4[_0x890f('0x1b')])){return logger[_0x890f('0x2a')](_0x890f('0x47'));}if(_[_0x890f('0x48')](_0x249cc4[_0x890f('0x1c')])){return logger[_0x890f('0x2a')]('subtractUnit\x20null\x20or\x20undefined');}var _0x4be69b={'startDate':moment()[_0x890f('0x49')](_0x249cc4[_0x890f('0x1b')],_0x249cc4['subtractUnit'])[_0x890f('0x17')](_0x890f('0x4a')),'endDate':moment()[_0x890f('0x17')](_0x890f('0x4a')),'type':_0x890f('0x4b'),'output':_0x249cc4['output'],'name':_0x249cc4[_0x890f('0x4c')]};if(!_['isNil'](_0x249cc4[_0x890f('0x4d')])){logger[_0x890f('0x2a')]('exec\x20defaul\x20report\x20id:%s',_0x249cc4[_0x890f('0x4d')]);return analyticDefaultReportController['runReport']({'id':_0x249cc4[_0x890f('0x4d')]},_0x4be69b)[_0x890f('0x10')](handleResult(_0x249cc4))[_0x890f('0x11')](handleError());}if(!_[_0x890f('0x48')](_0x249cc4[_0x890f('0x4e')])){logger[_0x890f('0x2a')](_0x890f('0x4f'),_0x249cc4[_0x890f('0x4e')]);return analyticCustomReportController['runReport']({'id':_0x249cc4[_0x890f('0x4e')]},_0x4be69b)[_0x890f('0x10')](handleResult(_0x249cc4))[_0x890f('0x11')](handleError());}}catch(_0x3ecf48){logger[_0x890f('0x12')](JSON[_0x890f('0x35')](_0x3ecf48));}return logger[_0x890f('0x2a')]('no\x20report\x20id');};}function getJobs(_0x2e8898){var _0x592b50={};if(_0x2e8898){_0x592b50['id']=_0x2e8898;}return db['Schedule'][_0x890f('0x50')]({'where':_0x592b50,'include':[{'model':db[_0x890f('0x15')],'attributes':['id',_0x890f('0x4c'),_0x890f('0x14')],'include':[{'model':db[_0x890f('0x51')],'as':_0x890f('0x19'),'include':[{'model':db['CloudProvider'],'as':_0x890f('0x52')}]}]}]})[_0x890f('0x10')](function(_0x3bbff9){var _0x4b0062=_[_0x890f('0x53')](manager[_0x890f('0x54')]);var _0x55ab70=_[_0x890f('0x55')](_0x3bbff9,function(_0xe5afc5){return _0xe5afc5['id'][_0x890f('0x56')]();});var _0x3401cf=_[_0x890f('0x57')](_0x3bbff9,function(_0x59f9f4){return _0x59f9f4['id'][_0x890f('0x56')]();});var _0x11b5c7=_0x2e8898?_0x55ab70:_[_0x890f('0x58')](_0x55ab70,_0x4b0062);var _0x2c84d1=_[_0x890f('0x59')](_0x55ab70,_0x4b0062);var _0x167fa5=_[_0x890f('0x58')](_0x4b0062,_0x55ab70);var _0x472c6f;var _0x4ffc5b;for(_0x472c6f=0x0;_0x472c6f<_0x167fa5[_0x890f('0x5a')]&&!_0x2e8898;_0x472c6f+=0x1){_0x4ffc5b=_0x167fa5[_0x472c6f][_0x890f('0x56')]();if(manager[_0x890f('0x5b')](_0x4ffc5b)){manager[_0x890f('0x3c')](_0x4ffc5b);manager[_0x890f('0x5c')](_0x4ffc5b);logger[_0x890f('0x2a')](_0x890f('0x5d'),_0x4ffc5b);}}logger[_0x890f('0x2a')](_0x890f('0x5e'),JSON['stringify'](_0x11b5c7));for(_0x472c6f=0x0;_0x472c6f<_0x11b5c7[_0x890f('0x5a')];_0x472c6f+=0x1){_0x4ffc5b=_0x11b5c7[_0x472c6f][_0x890f('0x56')]();if(_0x2e8898){logger[_0x890f('0x2a')](JSON['stringify'](_0x3401cf[_0x4ffc5b]));BPromise[_0x890f('0x5f')]()[_0x890f('0x10')](handleJob(_0x3401cf[_0x4ffc5b]));logger[_0x890f('0x2a')](_0x890f('0x60'),_0x3401cf[_0x4ffc5b][_0x890f('0x4c')],_0x3401cf[_0x4ffc5b][_0x890f('0x61')]);}else if(_0x3401cf[_0x4ffc5b][_0x890f('0x61')]&&_0x3401cf[_0x4ffc5b][_0x890f('0x62')]&&moment()['isBetween'](_0x3401cf[_0x4ffc5b][_0x890f('0x63')],_0x3401cf[_0x4ffc5b][_0x890f('0x64')])){manager['add'](_0x4ffc5b,_0x3401cf[_0x4ffc5b][_0x890f('0x61')],handleJob(_0x3401cf[_0x4ffc5b]));manager[_0x890f('0x65')](_0x4ffc5b);logger['info'](_0x890f('0x66'),_0x3401cf[_0x4ffc5b][_0x890f('0x4c')],_0x3401cf[_0x4ffc5b][_0x890f('0x61')]);}else if(manager[_0x890f('0x5b')](_0x4ffc5b)){manager['stop'](_0x4ffc5b);manager[_0x890f('0x5c')](_0x4ffc5b);logger[_0x890f('0x2a')](_0x890f('0x67'),_0x3401cf[_0x4ffc5b]['name'],_0x3401cf[_0x4ffc5b][_0x890f('0x61')]);}}for(_0x472c6f=0x0,_0x4ffc5b;_0x472c6f<_0x2c84d1['length']&&!_0x2e8898;_0x472c6f+=0x1){_0x4ffc5b=_0x2c84d1[_0x472c6f][_0x890f('0x56')]();if(manager['exists'](_0x4ffc5b)){if(_0x3401cf[_0x4ffc5b][_0x890f('0x61')]&&_0x3401cf[_0x4ffc5b][_0x890f('0x62')]&&moment()[_0x890f('0x68')](_0x3401cf[_0x4ffc5b][_0x890f('0x63')],_0x3401cf[_0x4ffc5b]['endAt'])){manager[_0x890f('0x69')](_0x4ffc5b,_0x3401cf[_0x4ffc5b][_0x890f('0x61')],handleJob(_0x3401cf[_0x4ffc5b]));logger['info'](_0x890f('0x6a'),_0x3401cf[_0x4ffc5b][_0x890f('0x4c')],_0x3401cf[_0x4ffc5b][_0x890f('0x61')]);}else{manager[_0x890f('0x3c')](_0x4ffc5b);manager[_0x890f('0x5c')](_0x4ffc5b);logger[_0x890f('0x2a')](_0x890f('0x67'),_0x3401cf[_0x4ffc5b]['name'],_0x3401cf[_0x4ffc5b][_0x890f('0x61')]);}}}})[_0x890f('0x11')](function(_0x5128f4){logger[_0x890f('0x12')](JSON[_0x890f('0x35')](_0x5128f4));});}exports[_0x890f('0x6b')]=function(_0x111cc2){return getJobs(_0x111cc2);};exports[_0x890f('0x65')]=function(){setInterval(function(){return getJobs();},0x3c*0x3e8);return getJobs();};
\ No newline at end of file