示例#1
0
 public bool SaveUser(UserDto userDto)
 {
     try
     {
         var   users = m_PersistenceManager.RetrieveEquals <Users>("UserID", userDto.UserID);
         Users user;
         if (users.Count == 0)
         {
             user = new Users()
             {
                 UserID   = userDto.UserID,
                 UserName = userDto.UserName,
                 FullName = userDto.FullName,
                 Password = MD5Util.EncodeMD5(userDto.Password),
             };
         }
         else
         {
             user          = users[0];
             user.FullName = userDto.FullName;
         }
         m_PersistenceManager.Save <Users>(user);
         var allUserRoles = m_PersistenceManager.RetrieveEquals <UserRole>("UserID", user.UserID);
         var allOldRoleId = new HashSet <long>();
         foreach (var userRole in allUserRoles)
         {
             allOldRoleId.Add(userRole.RoleID);
             userRole.IsActive = false;
             m_PersistenceManager.Save(userRole);
         }
         foreach (var roleDto in userDto.AllRoles)
         {
             var role = m_PersistenceManager.RetrieveEquals <Roles>("RoleCode", roleDto.RoleCode)[0];
             if (allOldRoleId.Contains(role.RoleID))
             {
                 m_PersistenceManager.Save(new UserRole()
                 {
                     UserID   = user.UserID,
                     RoleID   = role.RoleID,
                     IsActive = true
                 });
             }
             else
             {
                 m_PersistenceManager.SaveNew(new UserRole()
                 {
                     UserID   = user.UserID,
                     RoleID   = role.RoleID,
                     IsActive = true
                 });
             }
         }
         return(true);
     }
     catch (Exception e)
     {
         Console.WriteLine(e.Message);
         return(false);
     }
 }
        public UserDto checkUser(string userName, string password)
        {
            var userDto = new UserDto();

            if (String.IsNullOrEmpty(userName))
            {
                userDto.Message = "Chưa nhập tên đăng nhập. Vui lòng thử lại.";
                return(userDto);
            }
            if (String.IsNullOrEmpty(password))
            {
                userDto.Message = "Chưa nhập mật khẩu. Vui lòng thử lại.";
                return(userDto);
            }
            var users = RetrieveEquals <Users>("UserName", userName.ToUpper());

            if (users.Count == 0)
            {
                userDto.Message = "Người dùng chưa đăng ký. Vui lòng thử lại.";
                return(userDto);
            }
            var user = users[0];

            if (string.Compare(MD5Util.EncodeMD5(password), user.Password, true) != 0)
            {
                userDto.Message = "Mật khẩu không khớp. Vui lòng thử lại.";
                return(userDto);
            }
            userDto.UserID   = user.UserID;
            userDto.UserName = user.UserName;
            userDto.FullName = user.FullName;
            userDto.AllRoles = GetAllUserRole(user.UserID).ToArray();
            return(userDto);
        }
示例#3
0
 public string ResetPassword(long userId)
 {
     try
     {
         var   users = m_PersistenceManager.RetrieveEquals <Users>("UserID", userId);
         Users user;
         if (users.Count == 0)
         {
             return(String.Empty);
         }
         user          = users[0];
         user.Password = MD5Util.EncodeMD5(ConstUtil.DEFAULT_PASSWORD);
         m_PersistenceManager.Save <Users>(user);
         return(ConstUtil.DEFAULT_PASSWORD);
     }
     catch (Exception e)
     {
         Console.WriteLine(e.Message);
         return(String.Empty);
     }
 }
        public string changePassword(string userId, string oldPassword, string newPassword)
        {
            if (String.IsNullOrEmpty(userId))
            {
                return("-1");
            }
            if (String.IsNullOrEmpty(oldPassword))
            {
                return("-2");
            }
            var users = RetrieveEquals <Users>("UserID", long.Parse(userId));

            if (users.Count == 0)
            {
                return("-3");
            }
            var user = users[0];

            oldPassword = MD5Util.EncodeMD5(oldPassword);
            newPassword = MD5Util.EncodeMD5(newPassword);
            if (string.Compare(oldPassword, user.Password, true) != 0)
            {
                return("-4");
            }
            if (String.IsNullOrEmpty(newPassword))
            {
                return("-5");
            }
            if (string.Compare(oldPassword, newPassword, true) == 0)
            {
                return("-6");
            }

            // Update new password
            user.Password = newPassword;

            // Save user
            Save(user);
            return("0");
        }