Ejemplo n.º 1
0
 public ActionResult _DisplayEmailAudits(DisplayEmailAuditViewModel Model)
 {
     try
     {
         Model = _emailService.GetDisplayEmailAuditViewModel(Model.Pattern, Model.StartAt, Model.PageSize);
     }
     catch (Exception e)
     {
         Commons.Logger.GenerateError(e, System.Reflection.MethodBase.GetCurrentMethod().DeclaringType, "Model.Pattern = " + Model.Pattern);
         return(Content("ERROR"));
     }
     return(PartialView(Model));
 }
Ejemplo n.º 2
0
        public DisplayEmailAuditViewModel GetDisplayEmailAuditViewModel(string Pattern, int StartAt, int PageSize)
        {
            DisplayEmailAuditViewModel model = new DisplayEmailAuditViewModel();

            try
            {
                model.Pattern  = Pattern;
                model.PageSize = PageSize;
                model.StartAt  = StartAt;
                if (Pattern == null)
                {
                    Pattern = "";
                }
                Pattern = Pattern.ToLower().Trim();

                var EmailAudits = new List <EmailAudit>();
                if (String.IsNullOrWhiteSpace(Pattern) && StartAt >= 0 && PageSize >= 0)
                {
                    var FullEmailAuditsList = _emailAuditRepo.List().ToList();
                    model.Count = FullEmailAuditsList.Count;
                    EmailAudits = FullEmailAuditsList.Skip(StartAt).Take(PageSize).OrderByDescending(e => e.Id).ToList();
                }
                else
                {
                    EmailAudits = _emailAuditRepo.List().ToList();
                }

                foreach (var audit in EmailAudits)
                {
                    EMailAuditItem emailAuditItem = new EMailAuditItem();
                    emailAuditItem.Id                   = audit.Id;
                    emailAuditItem.UserId               = audit.UserId;
                    emailAuditItem.NewsId               = audit.ScheduledTask?.NewsId;
                    emailAuditItem.ScheduledTaskId      = audit.ScheduledTaskId;
                    emailAuditItem.LanguageId           = audit.EmailTypeLanguage.LanguageId;
                    emailAuditItem.LanguageName         = audit.EmailTypeLanguage.Language.Name;
                    emailAuditItem.EMailTypeId          = audit.EmailTypeLanguage.EMailTypeId;
                    emailAuditItem.EMailTypeLanguageId  = audit.EMailTypeLanguageId;
                    emailAuditItem.Date                 = audit.Date.ToLocalTime();
                    emailAuditItem.UserFirstNameDecrypt = audit.User?.FirstName;
                    emailAuditItem.UserLastNameDecrypt  = audit.User?.LastName;
                    emailAuditItem.EMailFromDecrypt     = audit.EMailFrom;
                    emailAuditItem.EMailToDecrypt       = audit.EMailTo;
                    emailAuditItem.CCUsersNumber        = audit.CCUsersNumber;
                    emailAuditItem.AttachmentNumber     = audit.AttachmentNumber ?? 0;
                    emailAuditItem.NewsTitle            = audit.ScheduledTask?.News?.Title;
                    emailAuditItem.Comment              = audit.Comment;
                    emailAuditItem.EMailTypeName        = audit.EmailTypeLanguage?.EmailType?.Name;

                    model.AuditsList.Add(emailAuditItem);
                }

                if (!String.IsNullOrWhiteSpace(Pattern) && StartAt >= 0 && PageSize >= 0)
                {
                    IEnumerable <EMailAuditItem> resultIEnumerable = model.AuditsList as IEnumerable <EMailAuditItem>;
                    resultIEnumerable = resultIEnumerable.Where(a => (a.Comment != null && a.Comment.ToLower().Contains(Pattern)) || (a.EMailTypeName != null && a.EMailTypeName.ToLower().Contains(Pattern)) || (a.NewsTitle != null && a.NewsTitle.ToLower().Contains(Pattern)) || (a.UserFirstNameDecrypt != null && a.UserFirstNameDecrypt.ToLower().Contains(Pattern)) || a.Id.ToString().Contains(Pattern) || a.EMailTypeName.Contains(Pattern) || (a.EMailToDecrypt != null && a.EMailToDecrypt.ToLower().Contains(Pattern)) || (a.EMailFromDecrypt != null && a.EMailFromDecrypt.ToLower().Contains(Pattern)) || (a.UserLastNameDecrypt != null && a.UserLastNameDecrypt.ToLower().Contains(Pattern)));
                    model.Count       = resultIEnumerable.ToList().Count;
                    model.AuditsList  = resultIEnumerable.Skip(StartAt).Take(PageSize).OrderByDescending(a => a.Id).ToList();
                }
            }
            catch (Exception e)
            {
                Commons.Logger.GenerateError(e, System.Reflection.MethodBase.GetCurrentMethod().DeclaringType, "Pattern = " + Pattern);
            }
            return(model);
        }