Пример #1
0
        public ActionResult Index()
        {
            var rows  = this.RowFilterManager.RowFilters.ToList();
            var model = new List <PrincipalRowFilterViewModel>();

            try
            {
                foreach (var item in rows)
                {
                    var principalName = item.PrincipalType == "G" ? GroupManager.FindById(item.PrincipalId).Name
                                           : UserManager.FindByIdAsync(item.PrincipalId).Result.Email;
                    var viewModel = new PrincipalRowFilterViewModel
                    {
                        Id                = item.Id,
                        PrincipalName     = principalName,
                        RowFilterTypeName = item.ApplicationRowFilterType.Name,
                        RowFilterValue    = item.RowFilterValue,
                    };
                    model.Add(viewModel);
                }
                return(View(model));
            }
            catch (System.Exception e)
            {
                throw e;
            }
        }
Пример #2
0
        private ApplicationPrincipalRowFilter DtoToModel(PrincipalRowFilterViewModel viewModel)
        {
            var model = new ApplicationPrincipalRowFilter
            {
                Id              = viewModel.Id,
                PrincipalId     = viewModel.SelectedPrincipalId,
                PrincipalType   = viewModel.PrincipalType,
                RowFilterValue  = viewModel.RowFilterValue,
                RowFilterTypeId = viewModel.SelectedRowFilterTypeId
            };

            return(model);
        }
Пример #3
0
        public async Task <ActionResult> Create(PrincipalRowFilterViewModel rowFilter)
        {
            if (ModelState.IsValid)
            {
                var result = await this.RowFilterManager.CreateRowFiltersAsync(DtoToModel(rowFilter));

                if (result.Succeeded)
                {
                    return(RedirectToAction("Index"));
                }
            }
            var user  = new SelectList(UserManager.Users.ToList(), "Id", "Email");
            var group = new SelectList(GroupManager.Groups.ToList(), "Id", "Name");
            var lst   = user.ToList();

            lst.AddRange(group);
            rowFilter.PrincipalList = lst;
            return(View(rowFilter));
        }
Пример #4
0
        private PrincipalRowFilterViewModel ModelToDto(ApplicationPrincipalRowFilter model)
        {
            var principalName = "";

            if (model.PrincipalId != -1)
            {
                principalName = model.PrincipalType == "G" ? GroupManager.FindById(model.PrincipalId).Name
                                                           : UserManager.FindByIdAsync(model.PrincipalId).Result.Email;
            }
            else
            {
                principalName = "";
            }

            var user  = new SelectList(UserManager.Users.ToList(), "Id", "Email");
            var group = new SelectList(GroupManager.Groups.ToList(), "Id", "Name");
            var type  = new SelectList(RowFilterManager.RowFilterTypes.ToList(), "Id", "Name");

            var lst = user.ToList();

            lst.AddRange(group);
            var viewModel = new PrincipalRowFilterViewModel
            {
                Id                      = model.Id,
                PrincipalName           = principalName,
                PrincipalType           = model.PrincipalType,
                SelectedRowFilterTypeId = model.ApplicationRowFilterType != null ? model.ApplicationRowFilterType.Id : 0,
                RowFilterTypeName       = model.ApplicationRowFilterType != null ? model.ApplicationRowFilterType.Name : "",
                RowFilterTypeList       = type,
                RowFilterValue          = model.RowFilterValue,
                PrincipalList           = lst,
                SelectedPrincipalId     = model.PrincipalId
            };

            return(viewModel);
        }