public SchoolBell(Calendar calendar, SchoolBellDbContext context, IScheduler quartzScheduler) { _context = context; _calendar = calendar; _quartzScheduler = quartzScheduler; InitializeComponent(); }
static void Main() { var context = new SchoolBellDbContext(); Calendar calendar; ISchedulerFactory schedFact = new StdSchedulerFactory(); var quartzScheduler = schedFact.GetScheduler(); quartzScheduler.Start(); using (context) { var schedulers = context.Schedulers.Include("Bells").Where(x => x.Date >= DateTime.Today).ToList(); calendar = new Calendar { ID = 1, Schedulers = schedulers == null ? new List <Scheduler>() : schedulers }; foreach (var scheduler in calendar.Schedulers) { if (scheduler.Enabled == true) { foreach (var bell in scheduler.Bells) { if (!quartzScheduler.CheckExists(new JobKey("myJob" + bell.BellTime.ToShortTimeString(), "group" + scheduler.Date.ToShortDateString()))) { if (bell.BellTime > DateTime.Now) { IJobDetail job = JobBuilder.Create <PlaySound>() .UsingJobData("path", bell.SoundPath) .UsingJobData("sec", bell.NumberOfSeconds) .UsingJobData("full", bell.PlayFullSound) .WithIdentity("myJob" + bell.BellTime.ToShortTimeString(), "group" + scheduler.Date.ToShortDateString()) .Build(); ITrigger trigger = TriggerBuilder.Create() .WithIdentity("myTrigger" + bell.BellTime.ToShortTimeString(), "group" + scheduler.Date.ToShortDateString()) .StartAt(bell.BellTime.ToUniversalTime()) .Build(); quartzScheduler.ScheduleJob(job, trigger); } } } } } Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new SchoolBell(calendar, context, quartzScheduler)); } }
public EditBellForm(Scheduler scheduler, int index, SchoolBellDbContext context) { _scheduler = scheduler; _bell = _scheduler.Bells.ElementAt(index); InitializeComponent(); dateTimePicker1.Value = _bell.BellTime; pathTextBox.Text = _bell.SoundPath; fullSoundRadioButton.Checked = _bell.PlayFullSound; stopSoundRadioButton.Checked = !_bell.PlayFullSound; timerNum.Value = _bell.NumberOfSeconds; _context = context; }
public DayScheduler(Scheduler scheduler, SchoolBellDbContext context) { _scheduler = scheduler; _context = context; InitializeComponent(); foreach (var item in _scheduler.Bells) { var v = new ListViewItem(item.BellTime.ToLongTimeString()); v.SubItems.Add(item.SoundPath); bellListView.Items.Add(v); } }