public MemberActivityLogViewModel(IMemberService memberService, DatabaseContext databaseContext, Guid?memberGuid = null)
        {
            Filters = new MemberFilters
            {
                From     = DateTime.Today.AddMonths(-1),
                To       = DateTime.Today,
                Page     = 1,
                PageSize = 10
            };

            if (memberGuid.HasValue)
            {
                // Specific member
                IMember member = memberService.GetByKey(memberGuid.Value);

                // Only show this member's activity
                Filters.MemberId = member?.Id;
            }
            else
            {
                // All members
                Members = memberService
                          .GetAll(0, int.MaxValue, out int _)
                          .OrderBy(m => m.Name)
                          .Select(m => new ApiMember
                {
                    Id   = m.Id,
                    Name = m.Name,
                    Guid = m.Key
                });
            }

            SearchResults = ApiMemberLogItem.Search(Filters, databaseContext);

            Actions = Enums.Values <MemberAuditAction>()
                      .ToDictionary(aa => (int)aa, aa => aa.GetDisplayName())
                      .ToList();
        }
Esempio n. 2
0
 public SearchResults <ApiMemberLogItem> SearchActivityLog(MemberFilters filters)
 {
     return(ApiMemberLogItem.Search(filters, DbContext));
 }