public ResponseResult <Cookie> Post([FromBody] ReminderEmail value) { ResponseResult <Cookie> result = new ResponseResult <Cookie>(); try { using (SmtpClient smtp = new SmtpClient()) { smtp.DeliveryMethod = SmtpDeliveryMethod.Network; smtp.UseDefaultCredentials = false; smtp.EnableSsl = true; smtp.Host = "smtp.gmail.com"; smtp.Port = 587; smtp.Credentials = new NetworkCredential("*****@*****.**", "Admin!23"); DateTime date = new DateTime(); // send the email MailMessage mailMessage = new MailMessage(); mailMessage.From = new MailAddress("*****@*****.**"); mailMessage.To.Add(value.OwnerEmail); // value.OwnerEmail var body = "Hi " + value.Name + ", <br /> This is to remind you of your appointment with us on " + value.Date.ToString("yyyy/MM/dd HH:mm:ss"); mailMessage.Subject = "***Reminder***"; AlternateView htmlView = AlternateView.CreateAlternateViewFromString(body, new ContentType("text/html")); mailMessage.AlternateViews.Add(htmlView); smtp.Send(mailMessage); } } catch (Exception e) { result.IsSuccess = false; result.Message = e.Message; } return(result); }
public EmailModel GetEmailList() { EmailModel Model = new EmailModel(); Model.ReminderList = new List <ReminderEmail>(); Model.BdayList = new List <BdayEmail>(); //Get Reminder List Dictionary <string, MySqlParameter> Parameter = new Dictionary <string, MySqlParameter>(); DataTable dt = _GenClassnew.ExecuteQuery("SP_ReminderList", Parameter); foreach (DataRow row in dt.Rows) { ReminderEmail reminder = new ReminderEmail(); reminder.Name = row.Field <string>("Name"); reminder.ExpiryDate = row.Field <DateTime>("ExpiryDate"); reminder.days = Convert.ToInt32(row.Field <Int64>("days")); Model.ReminderList.Add(reminder); } //Get Birthday List DataTable dt1 = _GenClassnew.ExecuteQuery("SP_Bdayreminder", Parameter); foreach (DataRow row in dt1.Rows) { BdayEmail breminder = new BdayEmail(); breminder.Name = row.Field <string>("Name"); breminder.Mobile = row.Field <string>("Mobile"); breminder.Email = row.Field <string>("Email"); breminder.Age = Convert.ToInt32(row.Field <Int64>("Age")); Model.BdayList.Add(breminder); } return(Model); }
private ReminderEmail GetRecheckedReminderEmail(ReminderEmail reminderEmailRecord) { reminderEmailRecord.DateChecked = VirtualDateTime.Now; dataRepository.SaveChanges(); return(reminderEmailRecord); }
private void MarkReminderEmailAsCompleted(ReminderEmail reminderEmail, bool wasAnEmailSent) { reminderEmail.Status = ReminderEmailStatus.Completed; reminderEmail.DateChecked = VirtualDateTime.Now; reminderEmail.EmailSent = wasAnEmailSent; dataRepository.SaveChanges(); }
private void SaveReminderEmailRecord(User user, SectorTypes sectorType) { var reminderEmailRecord = new ReminderEmail { UserId = user.UserId, SectorType = sectorType, DateSent = VirtualDateTime.Now }; _SharedBusinessLogic.DataRepository.Insert(reminderEmailRecord); _SharedBusinessLogic.DataRepository.SaveChangesAsync().Wait(); }
private static void SaveReminderEmailRecord(User user, SectorTypes sectorType, bool wasAnEmailSent) { var reminderEmailRecord = new ReminderEmail { UserId = user.UserId, SectorType = sectorType, DateChecked = VirtualDateTime.Now, EmailSent = wasAnEmailSent }; var dataRepository = Global.ContainerIoC.Resolve <IDataRepository>(); dataRepository.Insert(reminderEmailRecord); dataRepository.SaveChanges(); }
private ReminderEmail CreateAndGetReminderEmailRecord(User user, SectorTypes sectorType, DateTime reminderDate) { var reminderEmailRecord = new ReminderEmail { UserId = user.UserId, SectorType = sectorType, DateChecked = VirtualDateTime.Now, ReminderDate = reminderDate, EmailSent = false, Status = ReminderEmailStatus.InProgress }; dataRepository.Insert(reminderEmailRecord); dataRepository.SaveChanges(); return(reminderEmailRecord); }
private void SendReminderEmailsForReportingYear(User user, int year, ReminderEmail reminderEmail) { var snapshotDate = reminderEmail.SectorType.GetAccountingStartDate(year); List <Organisation> inScopeActiveOrganisationsForUserAndSectorTypeThatStillNeedToReport = user.UserOrganisations .Where(uo => uo.HasBeenActivated()) .Select(uo => uo.Organisation) .Where(o => o.Status == OrganisationStatuses.Active) .Where(o => o.SectorType == reminderEmail.SectorType) .Where(OrganisationIsInScopeForSnapshotDate(snapshotDate)) .Where(OrganisationHasNotReportedForSnapshotDate(snapshotDate)) .ToList(); CheckAndSendReminderEmailsForReportingYear( user, inScopeActiveOrganisationsForUserAndSectorTypeThatStillNeedToReport, year, reminderEmail); }
private void CheckAndSendReminderEmailsForReportingYear( User user, List <Organisation> inScopeOrganisationsForUserAndSectorTypeThatStillNeedToReport, int year, ReminderEmail reminderEmail) { bool anyOrganisationsToEmailAbout = inScopeOrganisationsForUserAndSectorTypeThatStillNeedToReport.Count > 0; if (anyOrganisationsToEmailAbout) { SendReminderEmailForReportingYear( user, reminderEmail.SectorType, inScopeOrganisationsForUserAndSectorTypeThatStillNeedToReport, year); } MarkReminderEmailAsCompleted( reminderEmail, anyOrganisationsToEmailAbout); }
private bool ReminderEmailSendingHasExpired(ReminderEmail reminderEmailRecord) { return(reminderEmailRecord.Status == ReminderEmailStatus.InProgress && reminderEmailRecord.DateChecked < VirtualDateTime.Now.AddMinutes(-15)); }
protected void ButtonSubmit_Click(object sender, EventArgs e) { try { User user = (User)Session["CurrentUser"]; if (user == null) return; int aid = (ViewState["AssessmentOID"] != null) ? (Convert.ToInt32(ViewState["AssessmentOID"])) : 0; Assessment ass = new Assessment(); ass = ass.GetAssessmentByOID(aid); ReminderEmail reminderEmail = new ReminderEmail(); //reminderEmail.EmailBody = TextBoxEMail.Text; //reminderEmail.EmailBody = Server.HtmlEncode(TextBoxEMail.Text); reminderEmail.EmailBody = EMailBodyHtml; reminderEmail.AssessmentOID = aid; reminderEmail.CreatedBy = user.UserOID; reminderEmail.LastModifiedBy = user.UserOID; //Result Detail ReminderEmail rEmail = reminderEmail.GetReminderEmailByAOID(aid); bool status = false; if (rEmail == null) { status = reminderEmail.AddReminderEmail(); } else { reminderEmail.AssessmentReminderOID = rEmail.AssessmentReminderOID; status = reminderEmail.UpdateReminderEmail(); } if (status) { LabelMessage.Text = "Saved Successfully."; this.ShowEmailBody(aid); } else { LabelMessage.Text = "Not Saved."; } } catch (Exception ex) { LabelMessage.Text = "Not Saved."; } }
private void ShowEmailBody(int assessmentOID) { ReminderEmail reminderEmail = new ReminderEmail(); reminderEmail = reminderEmail.GetReminderEmailByAOID(assessmentOID); if (reminderEmail == null) { //TextBoxEMail.Text = ""; this.EMailBodyHtml = ""; } else { //TextBoxEMail.Text = reminderEmail.EmailBody; //TextBoxEMail.Text = Server.HtmlDecode(reminderEmail.EmailBody); this.EMailBodyHtml = reminderEmail.EmailBody; } }
public ReminderEmail GetReminderEmailByOID(int OID) { ReminderEmail reminderEmail = null; using (OdbcConnection connection = new OdbcConnection(connectionString)) { using (OdbcCommand command = new OdbcCommand()) { command.Connection = connection; command.CommandText = "{CALL ReminderEmail_ByOID(?)}"; command.CommandType = CommandType.StoredProcedure; //Set Parameter Value command.Parameters.AddWithValue("@AssessmentReminderOID", OID); //Open connection connection.Open(); //Read using reader using (OdbcDataReader dataReader = command.ExecuteReader()) { ResultEmailDetail eDetail = new ResultEmailDetail(); if (dataReader.Read()) { reminderEmail = new ReminderEmail(); reminderEmail.AssessmentOID = Convert.ToInt32(dataReader["AssessmentOID"]); reminderEmail.AssessmentReminderOID = Convert.ToInt32(dataReader["AssessmentReminderOID"]); reminderEmail.CreatedBy = Convert.ToInt32(dataReader["CreatedBy"]); reminderEmail.CreatedDate = Convert.ToDateTime(dataReader["CreatedDate"]); reminderEmail.EmailBody = Convert.ToString(dataReader["EmailBody"]); reminderEmail.LastModifiedBy = Convert.ToInt32(dataReader["LastModifiedBy"]); reminderEmail.LastModifiedDate = Convert.ToDateTime(dataReader["LastModifiedDate"]); } } } } return reminderEmail; }