示例#1
0
        public void Configuration(IAppBuilder app)
        {
            ReportJobs reportJobs = new ReportJobs();

            ConfigureAuth(app);
            GlobalConfiguration.Configuration.UseSqlServerStorage("CMS2Context");

            //for debugging with a UI on jobs
            //app.UseHangfireDashboard();

            //add recurring report generation every 30 minutes
            RecurringJob.AddOrUpdate(() => reportJobs.sendReport(reportJobs.generateReport()), Cron.MinuteInterval(30)); //set timer here
            app.UseHangfireServer();
        }
示例#2
0
 public ActionResult Edit([Bind(Include = "Id,ReportDetails,Approved")] SummaryReport summaryReport)
 {
     if (!loginHelper.isAuthorized(Convert.ToInt32(Session["userRole"]), roleRequired))
     {
         return(RedirectToAction("NotAuthorized", "Error"));
     }
     summaryReport.TimeStamp = DateTime.Now;
     if (ModelState.IsValid)
     {
         if (summaryReport.Approved == true)
         {
             ReportJobs reportJobs = new ReportJobs();
             BackgroundJob.Enqueue(() => reportJobs.sendReport(summaryReport));
         }
         db.Entry(summaryReport).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(summaryReport));
 }