public async Task <IActionResult> Notice() { EmailConfigRequest model = new EmailConfigRequest(); IJobDetail job = await _scheduler.GetJobDetail(new JobKey(EmailJobKeys.NameKey, EmailJobKeys.GroupKey)); if (job != null) { model.Host = job.JobDataMap.GetString(EmailJobKeys.Host); model.Port = job.JobDataMap.GetInt(EmailJobKeys.Port); model.UserName = job.JobDataMap.GetString(EmailJobKeys.UserName); model.Password = job.JobDataMap.GetString(EmailJobKeys.Password); model.To = job.JobDataMap.GetString(EmailJobKeys.To); model.NickName = job.JobDataMap.GetString(EmailJobKeys.NickName); model.CacheExpiry = job.JobDataMap.GetInt(EmailJobKeys.CacheExpiry); } return(View(model)); }
public async Task Notice(EmailConfigRequest request) { JobKey key = new JobKey(EmailJobKeys.NameKey, EmailJobKeys.GroupKey); JobDataMap dataMap = new JobDataMap(); dataMap.Put(EmailJobKeys.Host, request.Host); dataMap.Put(EmailJobKeys.Port, request.Port); dataMap.Put(EmailJobKeys.UserName, request.UserName); dataMap.Put(EmailJobKeys.Password, request.Password); dataMap.Put(EmailJobKeys.To, request.To); dataMap.Put(EmailJobKeys.NickName, request.NickName); dataMap.Put(EmailJobKeys.CacheExpiry, request.CacheExpiry); IJobDetail job = JobBuilder.Create <HttpJob>() .StoreDurably(true) .RequestRecovery() .WithDescription("邮件通知配置Job,切勿删除") .WithIdentity(key) .UsingJobData(dataMap) .Build(); await _scheduler.AddJob(job, true); // 更新邮件通知配置 }