private void sentTestEmail(MailingModel mm, Job job) { string userEmail = _userService.CurrentUserEmail(); JobEmail mail = new JobEmail() { Body = _mailSendingUtils.ProcessMailReplaces(mm.Body), Guid = Guid.NewGuid(), ToAddress = userEmail, ToName = System.Web.HttpContext.Current.UserName(), Subject = job.Subject + " - (TEST)" }; alerts.Add(new Alert("Testni email poslan na " + userEmail, AlertType.Info, true)); job.JobEmails.Add(mail); mm.TestSent = true; }
public static List <JobEmail> GetCustomerEmails(Job job) { Dictionary <long, JobEmail> retVal = new Dictionary <long, JobEmail>(); foreach (JobQuote jobQuote in job.ListJobQuotes) { long patNum = jobQuote.PatNum; if (!retVal.ContainsKey(patNum)) { Patient pat = Patients.GetPat(patNum); if (pat == null) { continue; } string phones = "Hm:" + pat.HmPhone + "\r\nMo:" + pat.WirelessPhone + "\r\nWk:" + pat.WkPhone; retVal[patNum] = new JobEmail() { Pat = pat, EmailAddress = pat.Email, PhoneNums = phones, IsSend = false }; } retVal[patNum].IsQuote = true; } foreach (JobLink jobLink in job.ListJobLinks.FindAll(x => x.LinkType == JobLinkType.Task)) { Task task = Tasks.GetOne(jobLink.FKey); if (task == null || task.KeyNum == 0 || task.ObjectType != TaskObjectType.Patient) { continue; } long patNum = task.KeyNum; if (!retVal.ContainsKey(patNum)) { Patient pat = Patients.GetPat(patNum); if (pat == null) { continue; } string phones = "Hm:" + pat.HmPhone + "\r\nMo:" + pat.WirelessPhone + "\r\nWk:" + pat.WkPhone; retVal[patNum] = new JobEmail() { Pat = pat, EmailAddress = pat.Email, PhoneNums = phones, IsSend = true }; } retVal[patNum].IsTask = true; } foreach (JobLink jobLink in job.ListJobLinks.FindAll(x => x.LinkType == JobLinkType.Request)) { DataTable tableFR = GetFeatureRequestContact(jobLink.FKey); foreach (DataRow row in tableFR.Rows) { long patNum = PIn.Long(row["ODPatNum"].ToString()); Patient pat = Patients.GetPat(patNum); if (!retVal.ContainsKey(patNum)) { string phones = "Hm:" + row["HmPhone"].ToString() + "\r\nMo:" + row["WirelessPhone"].ToString() + "\r\nWk:" + row["WkPhone"].ToString(); retVal[patNum] = new JobEmail() { Pat = pat, EmailAddress = row["Email"].ToString(), PhoneNums = phones, IsSend = true }; } retVal[patNum].IsFeatureReq = true; retVal[patNum].Votes += PIn.Int(row["Votes"].ToString()); retVal[patNum].PledgeAmount += PIn.Double(row["AmountPledged_"].ToString()); } } return(retVal.Select(x => x.Value).ToList()); }
private void sendEmails(MailingModel mm, Job job) { int cnt = 0; int skippedCnt = 0; var mailsToSend = mm.ToEmails.Split(",;\n ".ToCharArray()).Where(m => !m.IsNullOrWhiteSpace()).Distinct(); foreach (var email in mailsToSend) { string mailaddress = email.Trim(); if (mm.NotToEmails != null && mm.NotToEmails.Contains(mailaddress)) { skippedCnt++; continue; } if (!string.IsNullOrEmpty(mailaddress) && EmailUtilities.IsValidEmail(mailaddress)) { JobEmail mail = new JobEmail() { Body = _mailSendingUtils.ProcessMailReplaces(mm.Body), Guid = Guid.NewGuid(), ToAddress = mailaddress, ToName = mailaddress }; job.JobEmails.Add(mail); cnt++; } } alerts.Add( new Alert( "Poslanih je " + cnt.ToString() + " emailov. " + (skippedCnt > 0 ? skippedCnt.ToString() + " jih mailov je bilo izvzetih." : ""), AlertType.Info, true)); }