Пример #1
0
        public void Create_EmptyLogin_ReturnException()
        {
            var user = new UserItem()
            {
                Login = null,
                Password = PASSWORD
            };

            _userService.Create(user);
        }
Пример #2
0
        public int Create(UserItem user)
        {
            using (var sqlh = new SqlHelper())
            {
                return sqlh.ExecScalar<int>(@"
            insert into Access.[user] (login, password)
            values (@Login, @Password)

            select SCOPE_IDENTITY()", user);
            }
        }
Пример #3
0
 public void Update(UserItem user)
 {
     using (var sqlh = new SqlHelper())
     {
         sqlh.ExecNoQuery(@"
     update Access.[user]
     set
     login = @Login,
     password = @Password
     where [user] = @Id", user);
     }
 }
Пример #4
0
        public void Create_CreateUser_ReturnUserId()
        {
            var id = 1;
            var user = new UserItem()
            {
                Login = LOGIN,
                Password = PASSWORD
            };

            Mock.Get(_userRepository).Setup(x => x.Create(user)).Returns(id);
            var result = _userService.Create(user);
            Assert.AreEqual(id, result);
        }
Пример #5
0
        public void Create_Void_ReturnId()
        {
            var user = new UserItem()
            {
                Login = LOGIN,
                Password = PASSWORD
            };

            Mock.Get(_userRepository).Setup(x => x.Create(user)).Returns(ID);

            var result = _userService.Create(user);
            Assert.AreEqual(result, ID);
        }
Пример #6
0
        /// <summary>
        /// Создает пользователя.
        /// </summary>
        /// <param name="user">Данные о пользователе.</param>
        /// <returns>Идентификаторо созданного пользователя.</returns>
        public int Create(UserItem user)
        {
            if (string.IsNullOrEmpty(user.Login))
            {
                throw new Exception("Поле 'Login' не должно быть пустым.");
            }

            if (string.IsNullOrEmpty(user.Password))
            {
                throw new Exception("Поле 'Password' не должно быть пустым.");
            }

            return _userRepository.Create(user);
        }
Пример #7
0
        public void Create_IsCreated_ReturnCreatedUser()
        {
            var user = new UserItem()
            {
                Login = LOGIN,
                Password = PASSWORD
            };

            int id = _userRepository.Create(user);

            var result = _userRepository.Get(id);

            Assert.AreEqual(result.Id, id);
            Assert.AreEqual(result.Login, user.Login);
            Assert.AreEqual(result.Password, user.Password);
        }
Пример #8
0
 public void GetListByUser_Void_ReturnNotEmptyListWithRoles()
 {
     UserItem user = new UserItem()
     {
         Id = 2,
         Login = "******",
         Password = "******"
     };
     RoleItem role = _roleRepository.Get(1);
     var result = _roleRepository.GetListByUser(user);
     AreEqualRoles(result.First(x=>x.Id == role.Id), role);
 }
Пример #9
0
        public List<RoleItem> GetListByUser(UserItem user)
        {
            using (SqlHelper sqlh = new SqlHelper(@"
            select
            r.role Id,
            r.code Code,
            r.mem Mem
            from Access.[user] u
            join Access.user2role u2r on u2r.[user] = u.[user]
            join Access.role r on r.role = u2r.role
            where u.[user] = @Id"))
            {
                sqlh.AddWithValue("Id", user.Id);
                var dt = sqlh.ExecTable();

                var list = new List<RoleItem>();

                foreach (DataRow row in dt.Rows)
                {
                    list.Add(new RoleItem()
                    {
                        Id = (int)row["Id"],
                        Code = (string)row["Code"],
                        Mem = (string)row["Mem"]
                    });
                }
                return list;
            }
        }
Пример #10
0
 public bool UserInRole(UserItem user, string role_code)
 {
     return _accessService.UserInRole(user, role_code);
 }
Пример #11
0
        /// <summary>
        /// Получает список ролей по пользователю.
        /// </summary>
        /// <param name="user">Пользователь.</param>
        /// <returns>Список ролей.</returns>
        public List<RoleItem> GetListByUser(UserItem user)
        {
            List<RoleItem> listRole = new List<RoleItem>();

            using (var sqlh = new SqlHelper())
            {
                listRole = sqlh.ExecMappingList<RoleItem>(@"
            select
            r.role Id,
            r.code Code,
            r.mem Mem
            from Access.[user] u
            join Access.user2role u2r on u2r.[user] = u.[user]
            join Access.role r on r.role = u2r.role
            where u.[user] = @Id", user);
            }

            listRole.ForEach(delegate(RoleItem role)
            {
                listRole.AddRange(GetListByOwnerRole(role));
            });

            return listRole;
        }
Пример #12
0
 public bool UserInRole(UserItem user, string role_code)
 {
     var role = _roleRepository.GetByCode(role_code);
     return UserInRole(user, role);
 }
Пример #13
0
 public bool UserInRole(UserItem user, RoleItem role)
 {
     var list = _roleRepository.GetListByUser(user);
     return list.Exists(x => x.Code == "Admin" || role.Code.StartsWith(x.Code));
 }
Пример #14
0
 public void Update(UserItem user)
 {
     _userRepository.Update(user);
 }
Пример #15
0
 public void Delete(UserItem user)
 {
     _userRepository.Delete(user.Id);
 }
Пример #16
0
        public void Login(UserItem user, bool remember)
        {
            DateTime expiresDate = DateTime.Now.AddHours(6);
            if (remember)
                expiresDate = expiresDate.AddDays(10);

            FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(
                1,
                user.Login,
                DateTime.Now,
                expiresDate, remember, user.Id.ToString());
            string encryptedTicket = FormsAuthentication.Encrypt(ticket);

            SetValue(AUTH_COOKIE_NAME, encryptedTicket, expiresDate);
        }
Пример #17
0
 public void Register(UserItem user)
 {
     new UserService().Create(user);
 }
Пример #18
0
 public static bool UserInRole(UserItem user, RoleItem role)
 {
     return _accessService.UserInRole(user, role);
 }
Пример #19
0
 public bool UserInRole(UserItem user, RoleItem role)
 {
     var list = _roleRepository.GetListByUser(user);
     return list.Exists(x => x.Code == "Admin" || x.Id == role.Id);
 }
Пример #20
0
 public static bool CheckRole(UserItem user)
 {
     return true;
 }