public vmNotificationMail GetNotificationMailObject(NotificationEntity model, string message) { vmNotificationMail obj = new vmNotificationMail(); try { using (var db = new ABS.Models.ERP_Entities()) { // if (model.NextWFUserID==null) obj.nextUser = db.CmnUsers.Where(x => x.UserID == model.NextWFUserID).FirstOrDefault().UserFullName; obj.companyName = db.CmnCompanies.Where(x => x.CompanyID == model.LoggedCompanyID).FirstOrDefault().CompanyName; obj.menuName = db.CmnMenus.Where(x => x.MenuID == model.MenuID).FirstOrDefault().MenuName; obj.customCode = model.TransactionID.ToString(); obj.customCode = db.CmnWorkFlowTransactions.Where(x => x.UserID == model.NextWFUserID && x.IsDeleted == false && x.StatusID == 1).FirstOrDefault().CustomCode; obj.message = message; obj.currentUser = db.CmnUsers.Where(x => x.UserID == model.CreatorID).FirstOrDefault().UserFullName; obj.comments = model.Comments; obj.nextUserEmailAddress = db.CmnUserAuthentications.Where(x => x.UserID == model.NextWFUserID).FirstOrDefault().LoginEmail; } } catch (Exception ex) { throw; } return(obj); }
public List <vmNotificationMail> GetNotificationMailObjectListDeclined(NotificationEntity model, string message) { List <vmNotificationMail> objList = new List <vmNotificationMail>(); try { using (var db = new ABS.Models.ERP_Entities()) { List <CmnWorkFlowTransactionTran> list = new List <CmnWorkFlowTransactionTran>(); list = db.CmnWorkFlowTransactionTrans.Where(x => x.TransactionID == model.TransactionID && x.IsActve == true && x.WFMID == model.WorkFlowID && x.IsDeleted == false).ToList(); foreach (CmnWorkFlowTransactionTran item in list) { vmNotificationMail obj = new vmNotificationMail(); obj.nextUser = db.CmnUsers.Where(x => x.UserID == item.TUserID).FirstOrDefault().UserFullName; obj.companyName = db.CmnCompanies.Where(x => x.CompanyID == item.CompanyID).FirstOrDefault().CompanyName; obj.menuName = db.CmnMenus.Where(x => x.MenuID == item.MenuID).FirstOrDefault().MenuName; obj.customCode = item.CustomCode.ToString(); obj.message = db.CmnWorkFlowTransactionTrans.Where(x => x.TransactionID == item.TransactionID && x.WFMID == item.WFMID && x.IsDeleted == false && x.Ccomment == "1").FirstOrDefault().Notification; obj.currentUser = db.CmnUsers.Where(x => x.UserID == item.UserID).FirstOrDefault().UserFullName; obj.comments = item.Notification; obj.nextUserEmailAddress = db.CmnUserAuthentications.Where(x => x.UserID == item.TUserID).FirstOrDefault().LoginEmail; obj.isApproved = false; objList.Add(obj); } } } catch (Exception ex) { } return(objList); }
public async Task <int> NotificationMail(vmNotificationMail model) { int result = 0; string sender = "*****@*****.**"; string receiver = model.nextUserEmailAddress; StreamReader reader = null; MailMessage Msg = new MailMessage(); try { Msg.From = new MailAddress(sender); Msg.To.Add(receiver); if (model.isApproved) { reader = new StreamReader(HttpContext.Current.Server.MapPath("~/EmailTemplate/Notification.html")); Msg.Subject = model.menuName + " - Notification"; } else { reader = new StreamReader(HttpContext.Current.Server.MapPath("~/EmailTemplate/Decline.html")); Msg.Subject = model.menuName + " - Declination"; } string readFile = reader.ReadToEnd(); string StrContent = ""; StrContent = readFile; StrContent = StrContent.Replace("[nextUser]", model.nextUser.ToString()); StrContent = StrContent.Replace("[companyName]", model.companyName); StrContent = StrContent.Replace("[menuName]", model.menuName); StrContent = StrContent.Replace("[customCode]", model.customCode); StrContent = StrContent.Replace("[message]", model.message); StrContent = StrContent.Replace("[currentUser]", model.currentUser); StrContent = StrContent.Replace("[comments]", model.comments); Msg.Body = StrContent.ToString(); Msg.IsBodyHtml = true; using (var smtp = new SmtpClient()) { var credential = new NetworkCredential { UserName = "******", Password = "******" }; smtp.Credentials = credential; smtp.Host = "mail.amber.com.bd"; smtp.Port = 25; smtp.EnableSsl = false; smtp.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network; smtp.Timeout = 50000; await smtp.SendMailAsync(Msg); result = 1; } } catch (Exception ex) { ex.ToString(); result = 0; } return(result); }