private void ExecuteApprovalAction(ProductTypeIndexViewModel model, ReferenceKeys.ApprovalStatus statusApproval, Enums.ActionType actionType, string email, string subject, string sender, string display, string sendTo) { var comment = (model.ViewModel.RevisionData != null) ? model.ViewModel.RevisionData.Comment : null; var updated = _productTypeService.ChangeStatus(model.ViewModel.ProdCode, statusApproval, (int)Enums.MenuList.ProductType, (int)actionType, (int)CurrentUser.UserRole, CurrentUser.USER_ID, comment); if (updated != null) { //AddMessageInfo(Constans.SubmitMessage.Updated + " and sending email", Enums.MessageInfoType.Success); List <string> mailAddresses = new List <string>(); if (statusApproval == ReferenceKeys.ApprovalStatus.AwaitingAdminApproval) { var approvers = _refService.GetAdminApprovers().ToList(); foreach (var appr in approvers) { var _email = _refService.GetUserEmail(appr.REFF_VALUE.Trim()); if (!string.IsNullOrEmpty(_email)) { mailAddresses.Add(_email); } } } else { var admins = _refService.GetAdmins().ToList(); foreach (var adm in admins) { var _email = _refService.GetUserEmail(adm.USER_ID); if (!string.IsNullOrEmpty(_email) && _email != sender) { mailAddresses.Add(_email); } } //mailAddresses.Add(sendTo); } bool mailStatus = ItpiMailer.Instance.SendEmail(mailAddresses.ToArray(), null, null, null, subject, email, true, sender, display); if (!mailStatus) { AddMessageInfo("Send email failed!", Enums.MessageInfoType.Warning); } else { AddMessageInfo(Constans.SubmitMessage.Updated, Enums.MessageInfoType.Success); } } }