Built motion from commit 3c2ce842.|2.6.31
[motion2.git] / server / config / schedule / index.js
index c4a9929..669c62b 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xb883=['cron','active','isBetween','startAt','endAt','add','start','stop','update','update\x20cron','stop\x20cron','run','util','lodash','moment','cron-job-manager','jayson/promise','bluebird','../logger','../../api/analyticCustomReport/analyticCustomReport.controller','../../api/analyticDefaultReport/analyticDefaultReport.controller','client','http','info','email','MailAccount','Smtp','service','host','port','secure','authentication','auth','pass','format','name','user','bcc','Report\x20%s\x20last\x20%s\x20%s','join','../../files/reports','savename','%s.%s','basename','extname','zip','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','stringify','existsSync','attachments','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','request','SendMail','then','error','email\x20sent','catch','isNil','subtractNumber','subtractUnit','subtractUnit\x20null\x20or\x20undefined','subtract','YYYY-MM-DD\x20HH:mm:ss','scheduled','output','DefaultReportId','runReport','CustomReportId','exec\x20custom\x20report\x20id:%s','no\x20report\x20id','Schedule','findAll','MailServerOut','jobs','map','toString','length','exists','deleteJob','delete\x20cron','index','my\x20id','resolve','run\x20job'];(function(_0x1c5734,_0xe14e5f){var _0x506967=function(_0x80dbd2){while(--_0x80dbd2){_0x1c5734['push'](_0x1c5734['shift']());}};_0x506967(++_0xe14e5f);}(_0xb883,0x174));var _0x3b88=function(_0x5a0845,_0x2e66c5){_0x5a0845=_0x5a0845-0x0;var _0x31d612=_0xb883[_0x5a0845];return _0x31d612;};'use strict';var fs=require('fs');var util=require(_0x3b88('0x0'));var path=require('path');var _=require(_0x3b88('0x1'));var moment=require(_0x3b88('0x2'));var CronJobManager=require(_0x3b88('0x3'));var jayson=require(_0x3b88('0x4'));var BPromise=require(_0x3b88('0x5'));var logger=require(_0x3b88('0x6'))('schedule');var db=require('../../mysqldb')['db'];var analyticCustomReportController=require(_0x3b88('0x7'));var analyticDefaultReportController=require(_0x3b88('0x8'));var client=jayson[_0x3b88('0x9')][_0x3b88('0xa')]({'port':0x232b});var manager=new CronJobManager();function handleSendEmail(_0x30d1d3,_0x1fc781){return function(){logger[_0x3b88('0xb')]('Try\x20to\x20send\x20a\x20mail\x20to',_0x30d1d3[_0x3b88('0xc')]);var _0x22015c=!![];var _0x1f3522={'tls':{'rejectUnauthorized':![]}};if(_0x30d1d3[_0x3b88('0xd')][_0x3b88('0xe')][_0x3b88('0xf')]){_0x1f3522[_0x3b88('0xf')]=_0x30d1d3['MailAccount'][_0x3b88('0xe')][_0x3b88('0xf')];}else{_0x1f3522[_0x3b88('0x10')]=_0x30d1d3['MailAccount'][_0x3b88('0xe')][_0x3b88('0x10')];_0x1f3522[_0x3b88('0x11')]=_0x30d1d3[_0x3b88('0xd')]['Smtp'][_0x3b88('0x11')];_0x1f3522['secure']=_0x30d1d3[_0x3b88('0xd')]['Smtp'][_0x3b88('0x12')];}if(_0x30d1d3[_0x3b88('0xd')][_0x3b88('0xe')][_0x3b88('0x13')]){_0x1f3522[_0x3b88('0x14')]={'user':_0x30d1d3['MailAccount'][_0x3b88('0xe')]['user'],'pass':_0x30d1d3[_0x3b88('0xd')][_0x3b88('0xe')][_0x3b88('0x15')]};}var _0x2fd7cb={'account':_0x1f3522,'message':{'from':util[_0x3b88('0x16')]('\x22%s\x22\x20<%s>',_0x30d1d3[_0x3b88('0xd')][_0x3b88('0x17')],_0x30d1d3[_0x3b88('0xd')][_0x3b88('0xc')]||_0x30d1d3['MailAccount'][_0x3b88('0xe')][_0x3b88('0x18')]),'to':_0x30d1d3['email'],'cc':_0x30d1d3['cc'],'bcc':_0x30d1d3[_0x3b88('0x19')],'subject':util['format'](_0x3b88('0x1a'),_0x1fc781['name'],_0x30d1d3['subtractNumber'],_0x30d1d3['subtractUnit'])}};var _0x3b32c4=path[_0x3b88('0x1b')](__dirname,_0x3b88('0x1c'));var _0x1e69bc=_0x1fc781[_0x3b88('0x1d')];var _0x31678d=util['format'](_0x3b88('0x1e'),path[_0x3b88('0x1f')](_0x1fc781['savename'],path[_0x3b88('0x20')](_0x1fc781[_0x3b88('0x1d')])),_0x3b88('0x21'));var _0x56b3ff=path[_0x3b88('0x1b')](_0x3b32c4,_0x1e69bc);var _0x2a0f9e=path['join'](_0x3b32c4,_0x31678d);if(fs['existsSync'](_0x56b3ff)){_0x1fc781[_0x3b88('0x22')]=_0x3b88('0x23');_0x2fd7cb[_0x3b88('0x24')]['attachments']=[{'filename':_0x1e69bc,'path':_0x56b3ff}];_0x2fd7cb['message']['text']=util[_0x3b88('0x16')](_0x3b88('0x25'),JSON[_0x3b88('0x26')](_0x1fc781,null,0x2));}else if(fs[_0x3b88('0x27')](_0x2a0f9e)){_0x1fc781['status']=_0x3b88('0x23');_0x2fd7cb[_0x3b88('0x24')][_0x3b88('0x28')]=[{'filename':_0x31678d,'path':_0x2a0f9e}];}else{_0x2fd7cb[_0x3b88('0x24')][_0x3b88('0x29')]=_0x3b88('0x2a');if(!_0x30d1d3[_0x3b88('0x2b')]){_0x22015c=![];logger[_0x3b88('0xb')](_0x3b88('0x2c'));}}if(_0x22015c){return client[_0x3b88('0x2d')](_0x3b88('0x2e'),_0x2fd7cb)[_0x3b88('0x2f')](function(_0x1e8111){if(_0x1e8111[_0x3b88('0x30')]){return logger[_0x3b88('0x30')]('error\x20mail',JSON[_0x3b88('0x26')](_0x1e8111));}return logger[_0x3b88('0xb')](_0x3b88('0x31'));})[_0x3b88('0x32')](function(_0x545819){return logger[_0x3b88('0x30')]('error\x20mail',JSON[_0x3b88('0x26')](_0x545819));});}};}function handleError(){return function(_0x569c92){return logger[_0x3b88('0x30')](JSON['stringify'](_0x569c92));};}function handleResult(_0x3bdaff){return function(_0x6927e4){logger[_0x3b88('0xb')]('data',JSON[_0x3b88('0x26')](_0x6927e4));if(_0x3bdaff[_0x3b88('0xd')]&&_0x3bdaff['MailAccount'][_0x3b88('0xe')]&&!_[_0x3b88('0x33')](_0x3bdaff[_0x3b88('0xc')])){setTimeout(handleSendEmail(_0x3bdaff,_0x6927e4),0x3c*0x3e8);}};}function handleJob(_0x24725c){return function(){try{if(_['isNil'](_0x24725c[_0x3b88('0x34')])){return logger[_0x3b88('0xb')]('subtractNumber\x20null\x20or\x20undefined');}if(_['isNil'](_0x24725c[_0x3b88('0x35')])){return logger[_0x3b88('0xb')](_0x3b88('0x36'));}var _0x18b720={'startDate':moment()[_0x3b88('0x37')](_0x24725c['subtractNumber'],_0x24725c['subtractUnit'])[_0x3b88('0x16')](_0x3b88('0x38')),'endDate':moment()[_0x3b88('0x16')](_0x3b88('0x38')),'type':_0x3b88('0x39'),'output':_0x24725c[_0x3b88('0x3a')],'name':_0x24725c[_0x3b88('0x17')]};if(!_[_0x3b88('0x33')](_0x24725c[_0x3b88('0x3b')])){logger[_0x3b88('0xb')]('exec\x20defaul\x20report\x20id:%s',_0x24725c[_0x3b88('0x3b')]);return analyticDefaultReportController[_0x3b88('0x3c')]({'id':_0x24725c[_0x3b88('0x3b')]},_0x18b720)[_0x3b88('0x2f')](handleResult(_0x24725c))['catch'](handleError());}if(!_[_0x3b88('0x33')](_0x24725c[_0x3b88('0x3d')])){logger[_0x3b88('0xb')](_0x3b88('0x3e'),_0x24725c[_0x3b88('0x3d')]);return analyticCustomReportController[_0x3b88('0x3c')]({'id':_0x24725c[_0x3b88('0x3d')]},_0x18b720)['then'](handleResult(_0x24725c))[_0x3b88('0x32')](handleError());}}catch(_0x499ce1){logger[_0x3b88('0x30')](JSON[_0x3b88('0x26')](_0x499ce1));}return logger[_0x3b88('0xb')](_0x3b88('0x3f'));};}function getJobs(_0x44d0c6){var _0x3bba3a={};if(_0x44d0c6){_0x3bba3a['id']=_0x44d0c6;}return db[_0x3b88('0x40')][_0x3b88('0x41')]({'where':_0x3bba3a,'include':[{'model':db['MailAccount'],'attributes':['id',_0x3b88('0x17'),_0x3b88('0xc')],'include':[{'model':db[_0x3b88('0x42')],'as':_0x3b88('0xe')}]}]})[_0x3b88('0x2f')](function(_0x343d30){var _0x4e7ac0=_['keys'](manager[_0x3b88('0x43')]);var _0x5eff14=_[_0x3b88('0x44')](_0x343d30,function(_0x3dcd62){return _0x3dcd62['id'][_0x3b88('0x45')]();});var _0x4bd656=_['keyBy'](_0x343d30,function(_0x44f391){return _0x44f391['id']['toString']();});var _0x23c74e=_0x44d0c6?_0x5eff14:_['difference'](_0x5eff14,_0x4e7ac0);var _0x3145cd=_['intersection'](_0x5eff14,_0x4e7ac0);var _0x413e58=_['difference'](_0x4e7ac0,_0x5eff14);var _0x58a3f7;var _0x2c8f08;for(_0x58a3f7=0x0;_0x58a3f7<_0x413e58[_0x3b88('0x46')]&&!_0x44d0c6;_0x58a3f7+=0x1){_0x2c8f08=_0x413e58[_0x58a3f7][_0x3b88('0x45')]();if(manager[_0x3b88('0x47')](_0x2c8f08)){manager['stop'](_0x2c8f08);manager[_0x3b88('0x48')](_0x2c8f08);logger['info'](_0x3b88('0x49'),_0x2c8f08);}}logger[_0x3b88('0xb')]('toRun',JSON[_0x3b88('0x26')](_0x23c74e));for(_0x58a3f7=0x0;_0x58a3f7<_0x23c74e[_0x3b88('0x46')];_0x58a3f7+=0x1){_0x2c8f08=_0x23c74e[_0x58a3f7][_0x3b88('0x45')]();logger['info'](_0x3b88('0x4a'),_0x2c8f08);if(_0x44d0c6){logger[_0x3b88('0xb')](_0x3b88('0x4b'),_0x44d0c6);logger[_0x3b88('0xb')](JSON[_0x3b88('0x26')](_0x4bd656[_0x2c8f08]));BPromise[_0x3b88('0x4c')]()[_0x3b88('0x2f')](handleJob(_0x4bd656[_0x2c8f08]));logger[_0x3b88('0xb')](_0x3b88('0x4d'),_0x4bd656[_0x2c8f08]['name'],_0x4bd656[_0x2c8f08][_0x3b88('0x4e')]);}else if(_0x4bd656[_0x2c8f08][_0x3b88('0x4e')]&&_0x4bd656[_0x2c8f08][_0x3b88('0x4f')]&&moment()[_0x3b88('0x50')](_0x4bd656[_0x2c8f08][_0x3b88('0x51')],_0x4bd656[_0x2c8f08][_0x3b88('0x52')])){manager[_0x3b88('0x53')](_0x2c8f08,_0x4bd656[_0x2c8f08]['cron'],handleJob(_0x4bd656[_0x2c8f08]));manager[_0x3b88('0x54')](_0x2c8f08);logger[_0x3b88('0xb')]('add\x20cron',_0x4bd656[_0x2c8f08]['name'],_0x4bd656[_0x2c8f08][_0x3b88('0x4e')]);}else if(manager[_0x3b88('0x47')](_0x2c8f08)){manager[_0x3b88('0x55')](_0x2c8f08);manager['deleteJob'](_0x2c8f08);logger['info']('stop\x20cron',_0x4bd656[_0x2c8f08]['name'],_0x4bd656[_0x2c8f08][_0x3b88('0x4e')]);}}for(_0x58a3f7=0x0,_0x2c8f08;_0x58a3f7<_0x3145cd[_0x3b88('0x46')]&&!_0x44d0c6;_0x58a3f7+=0x1){_0x2c8f08=_0x3145cd[_0x58a3f7][_0x3b88('0x45')]();if(manager[_0x3b88('0x47')](_0x2c8f08)){if(_0x4bd656[_0x2c8f08][_0x3b88('0x4e')]&&_0x4bd656[_0x2c8f08][_0x3b88('0x4f')]&&moment()[_0x3b88('0x50')](_0x4bd656[_0x2c8f08]['startAt'],_0x4bd656[_0x2c8f08][_0x3b88('0x52')])){manager[_0x3b88('0x56')](_0x2c8f08,_0x4bd656[_0x2c8f08][_0x3b88('0x4e')],handleJob(_0x4bd656[_0x2c8f08]));logger['info'](_0x3b88('0x57'),_0x4bd656[_0x2c8f08][_0x3b88('0x17')],_0x4bd656[_0x2c8f08][_0x3b88('0x4e')]);}else{manager[_0x3b88('0x55')](_0x2c8f08);manager[_0x3b88('0x48')](_0x2c8f08);logger[_0x3b88('0xb')](_0x3b88('0x58'),_0x4bd656[_0x2c8f08][_0x3b88('0x17')],_0x4bd656[_0x2c8f08]['cron']);}}}})[_0x3b88('0x32')](function(_0x2c9633){logger[_0x3b88('0x30')](JSON[_0x3b88('0x26')](_0x2c9633));});}exports[_0x3b88('0x59')]=function(_0x7d7908){return getJobs(_0x7d7908);};exports[_0x3b88('0x54')]=function(){setInterval(function(){return getJobs();},0x3c*0x3e8);return getJobs();};
\ No newline at end of file
+var _0xe0d5=['CustomReportId','exec\x20custom\x20report\x20id:%s','no\x20report\x20id','Schedule','findAll','MailServerOut','keys','jobs','map','toString','keyBy','difference','intersection','exists','delete\x20cron','toRun','length','resolve','run\x20job','active','startAt','add','add\x20cron','cron','deleteJob','isBetween','endAt','update','update\x20cron','stop\x20cron','run','start','path','lodash','moment','cron-job-manager','jayson/promise','../logger','../../mysqldb','../../api/analyticDefaultReport/analyticDefaultReport.controller','client','http','AnalyticExtractedReport','findOne','then','error','info','Try\x20to\x20send\x20a\x20mail\x20to','email','MailAccount','getSmtpOptions','\x22%s\x22\x20<%s>','Smtp','bcc','format','name','subtractNumber','subtractUnit','join','../../files/reports','savename','%s.%s','basename','extname','zip','status','message','attachments','text','stringify','existsSync','Sent','Empty','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','[handleSendEmail]\x20Unrecognized\x20status:','error\x20mail','email\x20sent','catch','currentAttempt','retryOptions','retries','job','data','operation','retry','still\x20loading','case\x20empty','stop','case\x20failed','Unrecognized\x20status:','entity','attempt','Job\x20ID\x20','\x20Attempt\x20#:','report\x20status:','dataValues','sendMail','isNil','subtractNumber\x20null\x20or\x20undefined','subtractUnit\x20null\x20or\x20undefined','subtract','YYYY-MM-DD\x20HH:mm:ss','output','DefaultReportId','exec\x20defaul\x20report\x20id:%s','runReport'];(function(_0x2d0b66,_0x43cc5e){var _0x21b7f5=function(_0x183e13){while(--_0x183e13){_0x2d0b66['push'](_0x2d0b66['shift']());}};_0x21b7f5(++_0x43cc5e);}(_0xe0d5,0xfe));var _0x5e0d=function(_0x3fce6c,_0x5c5440){_0x3fce6c=_0x3fce6c-0x0;var _0x229d62=_0xe0d5[_0x3fce6c];return _0x229d62;};'use strict';var fs=require('fs');var util=require('util');var path=require(_0x5e0d('0x0'));var _=require(_0x5e0d('0x1'));var moment=require(_0x5e0d('0x2'));var CronJobManager=require(_0x5e0d('0x3'));var jayson=require(_0x5e0d('0x4'));var BPromise=require('bluebird');var logger=require(_0x5e0d('0x5'))('schedule');var db=require(_0x5e0d('0x6'))['db'];const retry=require('retry');var analyticCustomReportController=require('../../api/analyticCustomReport/analyticCustomReport.controller');var analyticDefaultReportController=require(_0x5e0d('0x7'));var client=jayson[_0x5e0d('0x8')][_0x5e0d('0x9')]({'port':0x232b});var manager=new CronJobManager();function getReportData(_0x579d1d){const _0x5bceb8={};if(typeof _0x579d1d==='number'){_0x5bceb8['id']=_0x579d1d;}return db[_0x5e0d('0xa')][_0x5e0d('0xb')]({'where':_0x5bceb8})[_0x5e0d('0xc')](function(_0x352ba8){return _0x352ba8;})['catch'](function(_0x214258){logger[_0x5e0d('0xd')](_0x214258);});}function handleSendEmail(_0x5655c0,_0x5d5e8c){logger[_0x5e0d('0xe')](_0x5e0d('0xf'),_0x5655c0[_0x5e0d('0x10')]);var _0x43f42c=!![];var _0x16e11a=_0x5655c0[_0x5e0d('0x11')][_0x5e0d('0x12')]();var _0x4ef682={'account':_0x16e11a,'message':{'from':util['format'](_0x5e0d('0x13'),_0x5655c0[_0x5e0d('0x11')]['name'],_0x5655c0[_0x5e0d('0x11')]['email']||_0x5655c0['MailAccount'][_0x5e0d('0x14')]['user']),'to':_0x5655c0[_0x5e0d('0x10')],'cc':_0x5655c0['cc'],'bcc':_0x5655c0[_0x5e0d('0x15')],'subject':util[_0x5e0d('0x16')]('Report\x20%s\x20last\x20%s\x20%s',_0x5d5e8c[_0x5e0d('0x17')],_0x5655c0[_0x5e0d('0x18')],_0x5655c0[_0x5e0d('0x19')])}};var _0xc840ce=path[_0x5e0d('0x1a')](__dirname,_0x5e0d('0x1b'));var _0x488731=_0x5d5e8c[_0x5e0d('0x1c')];var _0x458bf6=util['format'](_0x5e0d('0x1d'),path[_0x5e0d('0x1e')](_0x5d5e8c[_0x5e0d('0x1c')],path[_0x5e0d('0x1f')](_0x5d5e8c[_0x5e0d('0x1c')])),_0x5e0d('0x20'));var _0x1b0e72=path[_0x5e0d('0x1a')](_0xc840ce,_0x488731);var _0x4a5c1b=path[_0x5e0d('0x1a')](_0xc840ce,_0x458bf6);if(fs['existsSync'](_0x1b0e72)){_0x5d5e8c[_0x5e0d('0x21')]='Sent';_0x4ef682[_0x5e0d('0x22')][_0x5e0d('0x23')]=[{'filename':_0x488731,'path':_0x1b0e72}];_0x4ef682[_0x5e0d('0x22')][_0x5e0d('0x24')]=util[_0x5e0d('0x16')]('Info\x20report:\x0a%s\x0aPlease\x20see\x20the\x20attachments\x0aThis\x20is\x20an\x20automatically\x20generated\x20email\x20–\x20please\x20do\x20not\x20reply\x20to\x20it.\x0a\x0a',JSON[_0x5e0d('0x25')](_0x5d5e8c,null,0x2));}else if(fs[_0x5e0d('0x26')](_0x4a5c1b)){_0x5d5e8c[_0x5e0d('0x21')]=_0x5e0d('0x27');_0x4ef682[_0x5e0d('0x22')]['attachments']=[{'filename':_0x458bf6,'path':_0x4a5c1b}];}else{if(_0x5d5e8c['status']===_0x5e0d('0x28')){_0x4ef682[_0x5e0d('0x22')][_0x5e0d('0x24')]=_0x5e0d('0x29');if(!_0x5655c0[_0x5e0d('0x2a')]){_0x43f42c=![];logger[_0x5e0d('0xe')](_0x5e0d('0x2b'));}}else if(_0x5d5e8c[_0x5e0d('0x21')]===_0x5e0d('0x2c')){_0x4ef682[_0x5e0d('0x22')][_0x5e0d('0x24')]=_0x5e0d('0x2d');}else if(_0x5d5e8c['status']===_0x5e0d('0x2e')){_0x4ef682[_0x5e0d('0x22')][_0x5e0d('0x24')]='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';}else if(_0x5d5e8c['status']==='Failed'){_0x4ef682[_0x5e0d('0x22')]['text']='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[_0x5e0d('0xd')](_0x5e0d('0x2f'),_0x5d5e8c[_0x5e0d('0x21')]);}}if(_0x43f42c){return client['request']('SendMail',_0x4ef682)[_0x5e0d('0xc')](function(_0x677ee9){if(_0x677ee9['error']){return logger[_0x5e0d('0xd')](_0x5e0d('0x30'),JSON[_0x5e0d('0x25')](_0x677ee9));}return logger[_0x5e0d('0xe')](_0x5e0d('0x31'));})[_0x5e0d('0x32')](function(_0x3fac58){return logger[_0x5e0d('0xd')](_0x5e0d('0x30'),JSON[_0x5e0d('0x25')](_0x3fac58));});}}function handleError(){return function(_0x4d4d8d){return logger[_0x5e0d('0xd')](JSON['stringify'](_0x4d4d8d));};}function loading(_0x3107aa){logger[_0x5e0d('0xe')]('case\x20loading');if(_0x3107aa[_0x5e0d('0x33')]===_0x3107aa[_0x5e0d('0x34')][_0x5e0d('0x35')]){handleSendEmail(_0x3107aa[_0x5e0d('0x36')],_0x3107aa[_0x5e0d('0x37')]);_0x3107aa[_0x5e0d('0x38')]['stop']();}else{_0x3107aa[_0x5e0d('0x38')][_0x5e0d('0x39')](_0x5e0d('0x3a'));}}function completed(_0x158453){logger['info']('case\x20completed');handleSendEmail(_0x158453['job'],_0x158453[_0x5e0d('0x37')]);_0x158453[_0x5e0d('0x38')]['stop']();}function empty(_0x3a731c){logger['info'](_0x5e0d('0x3b'));handleSendEmail(_0x3a731c[_0x5e0d('0x36')],_0x3a731c[_0x5e0d('0x37')]);_0x3a731c[_0x5e0d('0x38')][_0x5e0d('0x3c')]();}function failed(_0x249769){logger[_0x5e0d('0xe')](_0x5e0d('0x3d'));handleSendEmail(_0x249769['job'],_0x249769[_0x5e0d('0x37')]);_0x249769[_0x5e0d('0x38')][_0x5e0d('0x3c')]();}function urecognized(_0x47d489){logger[_0x5e0d('0xd')](_0x5e0d('0x3e'),_0x47d489[_0x5e0d('0x3f')]['dataValues'][_0x5e0d('0x21')]);_0x47d489[_0x5e0d('0x38')][_0x5e0d('0x3c')]();}const reportStatusStrategies={'Loading':loading,'Completed':completed,'Empty':empty,'Failed':failed,'Unrecognized':urecognized};function retryer(_0x1f14b2,_0xebbb9e){const _0x4cbcd9={'retries':0x3,'factor':0x2,'minTimeout':0x5b*0x3e8,'maxTimeout':0xa*0x3c*0x3e8};const _0x4aca66=retry['operation'](_0x4cbcd9);_0x4aca66[_0x5e0d('0x40')](_0x57fb25=>{logger[_0x5e0d('0xe')](_0x5e0d('0x41')+_0x1f14b2['id']+_0x5e0d('0x42')+_0x57fb25);try{getReportData(_0xebbb9e['id'])[_0x5e0d('0xc')](function(_0x4114fc){_0xebbb9e=_0x4114fc;logger[_0x5e0d('0xe')](_0x5e0d('0x43'),_0x4114fc['dataValues'][_0x5e0d('0x21')]);if(!reportStatusStrategies[_0x4114fc[_0x5e0d('0x44')]['status']]){logger['error'](_0x5e0d('0x43'),_0x4114fc[_0x5e0d('0x44')]['status']);_0x4aca66['retry']();}reportStatusStrategies[_0x4114fc[_0x5e0d('0x44')][_0x5e0d('0x21')]]({'operation':_0x4aca66,'currentAttempt':_0x57fb25,'retryOptions':_0x4cbcd9,'job':_0x1f14b2,'data':_0xebbb9e,'entity':_0x4114fc});});}catch(_0x593c08){_0x4aca66[_0x5e0d('0x39')](_0x593c08);}});}function handleResult(_0x427dc3){return function(_0x4d139f){if(_0x427dc3[_0x5e0d('0x45')]&&_0x427dc3[_0x5e0d('0x11')]&&_0x427dc3['MailAccount'][_0x5e0d('0x14')]&&!_[_0x5e0d('0x46')](_0x427dc3[_0x5e0d('0x10')])){retryer(_0x427dc3,_0x4d139f);}};}function handleJob(_0x2216a1){return function(){try{if(_[_0x5e0d('0x46')](_0x2216a1[_0x5e0d('0x18')])){return logger[_0x5e0d('0xe')](_0x5e0d('0x47'));}if(_['isNil'](_0x2216a1[_0x5e0d('0x19')])){return logger[_0x5e0d('0xe')](_0x5e0d('0x48'));}var _0x12afd0={'startDate':moment()[_0x5e0d('0x49')](_0x2216a1[_0x5e0d('0x18')],_0x2216a1[_0x5e0d('0x19')])[_0x5e0d('0x16')](_0x5e0d('0x4a')),'endDate':moment()['format'](_0x5e0d('0x4a')),'type':'scheduled','output':_0x2216a1[_0x5e0d('0x4b')],'name':_0x2216a1[_0x5e0d('0x17')]};if(!_['isNil'](_0x2216a1[_0x5e0d('0x4c')])){logger[_0x5e0d('0xe')](_0x5e0d('0x4d'),_0x2216a1[_0x5e0d('0x4c')]);return analyticDefaultReportController[_0x5e0d('0x4e')]({'id':_0x2216a1[_0x5e0d('0x4c')]},_0x12afd0)[_0x5e0d('0xc')](handleResult(_0x2216a1))[_0x5e0d('0x32')](handleError());}if(!_[_0x5e0d('0x46')](_0x2216a1[_0x5e0d('0x4f')])){logger[_0x5e0d('0xe')](_0x5e0d('0x50'),_0x2216a1[_0x5e0d('0x4f')]);return analyticCustomReportController[_0x5e0d('0x4e')]({'id':_0x2216a1[_0x5e0d('0x4f')]},_0x12afd0)[_0x5e0d('0xc')](handleResult(_0x2216a1))[_0x5e0d('0x32')](handleError());}}catch(_0x54c4c8){logger['error'](JSON[_0x5e0d('0x25')](_0x54c4c8));}return logger['info'](_0x5e0d('0x51'));};}function getJobs(_0x3ea8f4){var _0x26393c={};if(_0x3ea8f4){_0x26393c['id']=_0x3ea8f4;}return db[_0x5e0d('0x52')][_0x5e0d('0x53')]({'where':_0x26393c,'include':[{'model':db[_0x5e0d('0x11')],'attributes':['id',_0x5e0d('0x17'),_0x5e0d('0x10')],'include':[{'model':db[_0x5e0d('0x54')],'as':_0x5e0d('0x14'),'include':[{'model':db['CloudProvider'],'as':'CloudProvider'}]}]}]})['then'](function(_0x59529f){var _0x4821ef=_[_0x5e0d('0x55')](manager[_0x5e0d('0x56')]);var _0x41000f=_[_0x5e0d('0x57')](_0x59529f,function(_0x2279d6){return _0x2279d6['id'][_0x5e0d('0x58')]();});var _0x6783bd=_[_0x5e0d('0x59')](_0x59529f,function(_0xcc4029){return _0xcc4029['id'][_0x5e0d('0x58')]();});var _0x21e372=_0x3ea8f4?_0x41000f:_[_0x5e0d('0x5a')](_0x41000f,_0x4821ef);var _0x7d2790=_[_0x5e0d('0x5b')](_0x41000f,_0x4821ef);var _0x240ebd=_['difference'](_0x4821ef,_0x41000f);var _0x2b3a1b;var _0x9638b8;for(_0x2b3a1b=0x0;_0x2b3a1b<_0x240ebd['length']&&!_0x3ea8f4;_0x2b3a1b+=0x1){_0x9638b8=_0x240ebd[_0x2b3a1b][_0x5e0d('0x58')]();if(manager[_0x5e0d('0x5c')](_0x9638b8)){manager[_0x5e0d('0x3c')](_0x9638b8);manager['deleteJob'](_0x9638b8);logger['info'](_0x5e0d('0x5d'),_0x9638b8);}}logger['info'](_0x5e0d('0x5e'),JSON[_0x5e0d('0x25')](_0x21e372));for(_0x2b3a1b=0x0;_0x2b3a1b<_0x21e372[_0x5e0d('0x5f')];_0x2b3a1b+=0x1){_0x9638b8=_0x21e372[_0x2b3a1b][_0x5e0d('0x58')]();if(_0x3ea8f4){logger['info'](JSON[_0x5e0d('0x25')](_0x6783bd[_0x9638b8]));BPromise[_0x5e0d('0x60')]()[_0x5e0d('0xc')](handleJob(_0x6783bd[_0x9638b8]));logger[_0x5e0d('0xe')](_0x5e0d('0x61'),_0x6783bd[_0x9638b8]['name'],_0x6783bd[_0x9638b8]['cron']);}else if(_0x6783bd[_0x9638b8]['cron']&&_0x6783bd[_0x9638b8][_0x5e0d('0x62')]&&moment()['isBetween'](_0x6783bd[_0x9638b8][_0x5e0d('0x63')],_0x6783bd[_0x9638b8]['endAt'])){manager[_0x5e0d('0x64')](_0x9638b8,_0x6783bd[_0x9638b8]['cron'],handleJob(_0x6783bd[_0x9638b8]));manager['start'](_0x9638b8);logger[_0x5e0d('0xe')](_0x5e0d('0x65'),_0x6783bd[_0x9638b8][_0x5e0d('0x17')],_0x6783bd[_0x9638b8][_0x5e0d('0x66')]);}else if(manager['exists'](_0x9638b8)){manager[_0x5e0d('0x3c')](_0x9638b8);manager[_0x5e0d('0x67')](_0x9638b8);logger[_0x5e0d('0xe')]('stop\x20cron',_0x6783bd[_0x9638b8][_0x5e0d('0x17')],_0x6783bd[_0x9638b8]['cron']);}}for(_0x2b3a1b=0x0,_0x9638b8;_0x2b3a1b<_0x7d2790[_0x5e0d('0x5f')]&&!_0x3ea8f4;_0x2b3a1b+=0x1){_0x9638b8=_0x7d2790[_0x2b3a1b][_0x5e0d('0x58')]();if(manager['exists'](_0x9638b8)){if(_0x6783bd[_0x9638b8][_0x5e0d('0x66')]&&_0x6783bd[_0x9638b8][_0x5e0d('0x62')]&&moment()[_0x5e0d('0x68')](_0x6783bd[_0x9638b8]['startAt'],_0x6783bd[_0x9638b8][_0x5e0d('0x69')])){manager[_0x5e0d('0x6a')](_0x9638b8,_0x6783bd[_0x9638b8]['cron'],handleJob(_0x6783bd[_0x9638b8]));logger[_0x5e0d('0xe')](_0x5e0d('0x6b'),_0x6783bd[_0x9638b8]['name'],_0x6783bd[_0x9638b8]['cron']);}else{manager['stop'](_0x9638b8);manager[_0x5e0d('0x67')](_0x9638b8);logger[_0x5e0d('0xe')](_0x5e0d('0x6c'),_0x6783bd[_0x9638b8][_0x5e0d('0x17')],_0x6783bd[_0x9638b8]['cron']);}}}})['catch'](function(_0x5cc9b3){logger[_0x5e0d('0xd')](JSON[_0x5e0d('0x25')](_0x5cc9b3));});}exports[_0x5e0d('0x6d')]=function(_0x4c9212){return getJobs(_0x4c9212);};exports[_0x5e0d('0x6e')]=function(){setInterval(function(){return getJobs();},0x3c*0x3e8);return getJobs();};
\ No newline at end of file