Exemplo n.º 1
0
        public async Task <IActionResult> Index(AdminUserIndexViewModel model)
        {
            var filter = new AdminUserIndexFilter {
                Email       = model.Filter.Email,
                PageIndex   = model.Filter.PageIndex,
                PageSize    = model.Filter.PageSize,
                PhoneNumber = model.Filter.PhoneNumber,
                Status      = model.Filter.Status,
                Title       = model.Filter.Title,
                UserName    = model.Filter.UserName
            };

            var result = await _userService.GetAdminIndexAsyc(filter);

            var index = result.Adapt <AdminUserIndexViewModel>();

            index.DataSource.HasFilter = true;

            foreach (var user in index.DataSource.Items)
            {
                user.Checked = true;
            }

            return(await Task.FromResult(
                       View(index)
                       ));
        }
Exemplo n.º 2
0
        public ActionResult Index()
        {
            var userID      = Guid.Parse(UserService.GetUserData("id"));
            var information = new AdminUserIndexViewModel();
            var user        = _db.AdminUser.Find(userID);

            information.Name     = user.FirstName + " " + user.LastName;
            information.SiteName = user.Site.Name;
            return(View(information));
        }
Exemplo n.º 3
0
        public async Task <IActionResult> Index()
        {
            AdminUserIndexViewModel viewModel = new AdminUserIndexViewModel
            {
                Users        = await userService.GetAllAsync(),
                UserRoles    = await userRoleService.GetAllAsync(),
                UserStatuses = await userStatusService.GetAllAsync()
            };

            return(View(viewModel));
        }
Exemplo n.º 4
0
        public ActionResult Index(int?role, string username, UserIndexOptions options, PagerParameters pagerParameters)
        {
            var pager = new Pager(_siteService.GetSiteSettings(), pagerParameters);

            var userItems = new List <UserItemViewModel>();
            int userTotal;

            var skip = pager.Page > 0 ? (pager.Page - 1) * pager.PageSize : 0;
            var take = pager.PageSize == 0 ? int.MaxValue : pager.PageSize;

            using (var connection = new SqlConnection(_shellSettings.DataConnectionString))
            {
                connection.Open();

                using (var transaction = connection.BeginTransaction())
                {
                    using (var command = connection.CreateCommand())
                    {
                        command.Transaction = transaction;
                        command.CommandType = CommandType.StoredProcedure;
                        command.CommandText = "GetUsers";

                        if (role.HasValue)
                        {
                            var roleIdParameter = new SqlParameter("@RoleId", SqlDbType.Int)
                            {
                                Value = role.Value
                            };
                            command.Parameters.Add(roleIdParameter);
                        }
                        if (!string.IsNullOrWhiteSpace(username))
                        {
                            var usernameParameter = new SqlParameter("@UserName", SqlDbType.NVarChar)
                            {
                                Value = username
                            };
                            command.Parameters.Add(usernameParameter);
                        }

                        var skipParameter = new SqlParameter("@Skip", SqlDbType.Int)
                        {
                            Value = skip
                        };
                        var takeParameter = new SqlParameter("@Take", SqlDbType.Int)
                        {
                            Value = take
                        };

                        command.Parameters.Add(skipParameter);
                        command.Parameters.Add(takeParameter);

                        using (var reader = command.ExecuteReader())
                        {
                            while (reader.Read())
                            {
                                var userItemViewModel = new UserItemViewModel
                                {
                                    Email         = (!(reader["UserName"] is DBNull)) ? (string)reader["UserName"] : "",
                                    UserId        = (!(reader["UserId"] is DBNull)) ? (int)reader["UserId"] : 0,
                                    IsTeeyootUser = (!(reader["IsTeeyootUser"] is DBNull)) ? (bool)reader["IsTeeyootUser"] : false
                                };

                                if (reader["CurrencyName"] != DBNull.Value)
                                {
                                    userItemViewModel.Currency = (reader["CurrencyName"] is DBNull) ? (string)reader["CurrencyName"] : "";
                                }

                                userItems.Add(userItemViewModel);
                            }
                        }
                    }

                    using (var command = connection.CreateCommand())
                    {
                        command.Transaction = transaction;
                        command.CommandType = CommandType.StoredProcedure;
                        command.CommandText = "GetUsersCount";

                        if (role.HasValue)
                        {
                            var roleIdParameter = new SqlParameter("@RoleId", SqlDbType.Int)
                            {
                                Value = role.Value
                            };
                            command.Parameters.Add(roleIdParameter);
                        }

                        userTotal = (int)command.ExecuteScalar();
                    }

                    FillUsersWithRoles(userItems, transaction);

                    transaction.Commit();
                }
            }

            var pagerShape = Shape.Pager(pager).TotalItemCount(userTotal);

            var roles = _roleRepository.Table
                        .Select(r => new RoleItemViewModel
            {
                Id   = r.Id,
                Name = r.Name
            })
                        .ToList();

            var viewModel = new AdminUserIndexViewModel
            {
                Roles          = roles,
                SelectedRoleId = role,
                Users          = userItems,
                Pager          = pagerShape
            };

            return(View(viewModel));
        }