/// <summary> /// Initialize Db Context /// </summary> public DbContext() { if (Context == null) { Context = new HyggeMailEntities(); } }
/// <summary> /// Dispose the context /// </summary> public void Dispose() { if (Context != null) { Context.Dispose(); Context = null; } }
/// <summary> /// Add log for push notification /// </summary> /// <param name="message">Messsage of notification</param> /// <param name="deviceId">Device id to whom notification sent</param> /// <param name="deviceType">Device type to whom notification sent</param> /// <param name="type">Type of notification</param> /// <param name="status">Status of notification</param> void IPushNotificationManager.AddNotificationLog(string message, string deviceId, DeviceType deviceType, NotificationType type, NotificationStatus status) { Context = new HyggeMailEntities(); Context.PushNotifications.Add(new PushNotification { CreatedOn = DateTime.Now, DeviceId = deviceId, DeviceTypeId = Convert.ToInt16(deviceType), Message = message, StatusId = Convert.ToInt16(status), TypeId = Convert.ToInt16(type) }); Context.SaveChanges(); }
private EmailTemplateModel GetTemplate(int type) { using (var Context = new HyggeMailEntities()) { var Template = Context.EmailTemplates.FirstOrDefault(z => z.TemplateType == type); if (Template != null) { EmailTemplateModel newModel = new EmailTemplateModel(); newModel = Mapper.Map <EmailTemplate, EmailTemplateModel>(Template, newModel); return(newModel); } else { return(null); } } }
/// <summary> /// Add log for push notification in bulk /// </summary> /// <param name="model"></param> void IPushNotificationManager.AddNotificationLog(List <PushNotificationViewModel> model) { Context = new HyggeMailEntities(); model.ForEach(p => { var noti = new PushNotification { CreatedOn = DateTime.Now, DeviceId = p.DeviceId, DeviceTypeId = Convert.ToInt16(p.DeviceType), Message = p.Message, ErrorMessage = p.ErrorMessage, StatusId = Convert.ToInt16(p.Status), TypeId = Convert.ToInt16(p.Type) }; Context.PushNotifications.Add(noti); }); Context.SaveChanges(); }
public void SendNotificationEmail() { using (var Context = new HyggeMailEntities()) { var template4Users = Context.Users.Where(p => p.CardsCount < 10 && !p.IsDeleted && p.Email != null && p.ActivatedUID != null && p.IsActivated != null).ToList(); var template5Users = Context.Users.Where(p => p.CardsCount == 10 && !p.IsDeleted && p.Email != null && p.ActivatedUID != null && p.IsActivated != null).ToList(); foreach (var item in template4Users) { var emaildata = GetTemplate(Convert.ToInt32(TemplateTypes.LittleBitsOfHappiness)); var Domain = Config.Link; var result = Utilities.SendEMail(item.Email, emaildata.EmailSubject, emaildata.TemplateContent); } foreach (var item in template5Users) { var emaildata = GetTemplate(Convert.ToInt32(TemplateTypes.StepsToBuyingCards)); var Domain = Config.Link; var result = Utilities.SendEMail(item.Email, emaildata.EmailSubject, emaildata.TemplateContent); } } }
public void SendMail() { using (var Context = new HyggeMailEntities()) { try { var template4Users = Context.Users.Where(p => p.CardsCount < 10 && !p.IsDeleted && p.Email != null && p.ActivatedUID != null && (p.IsActivated != null && (bool)p.IsActivated)).ToList(); var template5Users = Context.Users.Where(p => p.CardsCount == 10 && !p.IsDeleted && p.Email != null && p.ActivatedUID != null && (p.IsActivated != null && (bool)p.IsActivated)).ToList(); foreach (var item in template4Users) { var emaildata = GetTemplate(Convert.ToInt32(TemplateTypes.LittleBitsOfHappiness)); var Domain = Config.Link; var result = Utilities.SendEMail(item.Email, emaildata.EmailSubject, emaildata.TemplateContent); Context.ChroneLogs.Add(new ChroneLog() { UserId = item.UserID, TemplateSent = TemplateTypes.LittleBitsOfHappiness.ToString(), MailFiredOn = DateTime.Now }); Context.SaveChanges(); } foreach (var item in template5Users) { var emaildata = GetTemplate(Convert.ToInt32(TemplateTypes.StepsToBuyingCards)); var Domain = Config.Link; var result = Utilities.SendEMail(item.Email, emaildata.EmailSubject, emaildata.TemplateContent); Context.ChroneLogs.Add(new ChroneLog() { UserId = item.UserID, TemplateSent = TemplateTypes.StepsToBuyingCards.ToString(), MailFiredOn = DateTime.Now }); Context.SaveChanges(); } } catch (Exception ex) { } } }
/// <summary> /// Reinitiate the database context. /// </summary> public void ReinitiateContext() { Dispose(); Context = new HyggeMailEntities(); }