public Guid InsertImplicitSyncEmailUpload(EmailInfo emailinfo) { Guid requestguid = Guid.NewGuid(); Logger.Current.Verbose("Request received for logging the mail response"); var sentMail = new SentMailDb { TokenGuid = Guid.NewGuid(), RequestGuid = requestguid, From = emailinfo.FromEmail, PriorityID = 0, ScheduledTime = emailinfo.SentDate, QueueTime = DateTime.Now.ToUniversalTime(), StatusID = Responses.CommunicationStatus.Success, ServiceResponse = "" }; var sentMailDetail = new SentMailDetailDb { RequestGuid = requestguid, To = emailinfo.To != null?string.Join(",", emailinfo.To) : "", CC = emailinfo.CC != null?string.Join(",", emailinfo.CC) : "", BCC = emailinfo.BCC != null?string.Join(",", emailinfo.BCC) : "", Subject = emailinfo.Subject, Body = emailinfo.Body, IsBodyHtml = true }; unitOfWork.SentMailsRepository.Add(sentMail); unitOfWork.SentMailDetailsRepository.Add(sentMailDetail); unitOfWork.Commit(); Logger.Current.Verbose("Logging mail response was successful"); return(requestguid); }
public void LogScheduledMessageResponse(SendMailRequest request, SendMailResponse response) { var queueTime = DateTime.UtcNow; Logger.Current.Verbose("Request received for logging scheduled mails response"); var sentMail = new SentMailDb { TokenGuid = request.TokenGuid, RequestGuid = request.RequestGuid, From = request.From, PriorityID = request.PriorityID, ScheduledTime = request.ScheduledTime, QueueTime = queueTime, StatusID = response.StatusID, ServiceResponse = response.ServiceResponse }; unitOfWork.SentMailsRepository.Add(sentMail); unitOfWork.Commit(); Logger.Current.Verbose("Logging mail response was successful"); }
public void LogResponse(SendMailRequest request, SendMailResponse response) { var queueTime = DateTime.UtcNow; //SentMail & SentMailDetail Table Logger.Current.Verbose("Request received for logging the mail response"); var sentMail = new SentMailDb { TokenGuid = response.Token, RequestGuid = request.RequestGuid, From = request.From, PriorityID = request.PriorityID, ScheduledTime = request.ScheduledTime, QueueTime = queueTime, StatusID = response.StatusID, ServiceResponse = response.ServiceResponse }; var sentMailDetail = new SentMailDetailDb { RequestGuid = request.RequestGuid, DisplayName = request.DisplayName, ReplyTo = request.ReplyTo, To = request.To.ToPlainString(), //To = request.To, CC = request.CC.ToPlainString(), BCC = request.BCC.ToPlainString(), Subject = request.Subject, Body = request.Body, IsBodyHtml = request.IsBodyHtml, AttachmentGUID = !string.IsNullOrEmpty(request.NotificationAttachementGuid) ? new Guid(request.NotificationAttachementGuid) : request.AttachmentGUID, CategoryID = request.CategoryID, AccountID = request.AccountID }; unitOfWork.SentMailsRepository.Add(sentMail); unitOfWork.SentMailDetailsRepository.Add(sentMailDetail); unitOfWork.Commit(); Logger.Current.Verbose("Logging mail response was successful"); }