private UserGroupUpdateViewModel GetFinancialBrokerPoolUpdateViewModel(UserGroupUpdateCommand userGroupUpdateCommand)
        {
            IList <User>             users = UserService.GetAll();
            UserGroupUpdateViewModel userGroupUpdateViewModel = new UserGroupUpdateViewModel(userGroupUpdateCommand, users);

            return(userGroupUpdateViewModel);
        }
        public ActionResult UpdateForm(UserGroup userGroup)
        {
            Require.NotNull(userGroup, nameof(userGroup));
            UserGroupDto             userGroupDto             = userGroup.GetDto();
            UserGroupUpdateCommand   userGroupUpdateCommand   = new UserGroupUpdateCommand(userGroupDto);
            UserGroupUpdateViewModel userGroupUpdateViewModel =
                GetFinancialBrokerPoolUpdateViewModel(userGroupUpdateCommand);

            return(View("Update", userGroupUpdateViewModel));
        }
        public ActionResult Update(UserGroup userGroup, UserGroupUpdateCommand userGroupUpdateCommand, User currentUser)
        {
            Require.NotNull(userGroup, nameof(userGroup));
            Require.NotNull(currentUser, nameof(currentUser));
            if (!ModelState.IsValid)
            {
                UserGroupUpdateViewModel brokerPoolUpdateViewModel = GetFinancialBrokerPoolUpdateViewModel(userGroupUpdateCommand);
                return(View(brokerPoolUpdateViewModel));
            }
            UserGroupService.Update(userGroup, userGroupUpdateCommand.UserGroupDto, currentUser);

            return(RedirectToAction("Index"));
        }