示例#1
0
        public static void AddUserPosition(string infoStr)
        {
            var usersInfo = UserDBController.FindLike(infoStr);

            if (usersInfo.Any())
            {
                foreach (var userInfo in usersInfo)
                {
                    var currentUser = new User(userInfo);
                    if (!(ItemsPositions
                          .Select(x => (x as User))
                          .Where(x => x.Name == currentUser.Name || x.Id == currentUser.Id)
                          .Any()))
                    {
                        ItemsPositions.Add(currentUser);
                    }
                    else if (usersInfo.Count == 1)
                    {
                        MessageBox.Show(LanguageEngine.Language["UserControlServiceActivity AlreadyExist"],
                                        LanguageEngine.Language["UserControlServiceActivity AlreadyExistTitle"], MessageBoxButton.OK, MessageBoxImage.Error);
                    }
                }
            }
            else
            {
                MessageBox.Show(LanguageEngine.Language["UserControlServiceActivity NotFound"],
                                LanguageEngine.Language["UserControlServiceActivity NotFoundTitle"], MessageBoxButton.OK, MessageBoxImage.Error);
            }
        }
示例#2
0
 public static void SaveUsersPositions()
 {
     foreach (User user in ItemsPositions)
     {
         UserDBController.Update(user);
     }
     MessageBox.Show(LanguageEngine.Language["WareHouseActivity SaveMessageBox"],
                     LanguageEngine.Language["WareHouseActivity SaveMessageBoxTitle"], MessageBoxButton.OK, MessageBoxImage.Information);
 }
示例#3
0
        public static void UpdateUser(User user, string password)
        {
            UserDBController.Update(user, GetHash(password));
            var oldUser = ItemsPositions.FirstOrDefault(x => (x as User).Id == user.Id);

            ItemsPositions[ItemsPositions.IndexOf(oldUser)] = user;
            if (user.Id == CurrentUser.Id)
            {
                CurrentUser = user;
            }
        }
示例#4
0
        public static bool Authorize(string login, string password)
        {
            var    userInfo = UserDBController.FindById(login);
            string userHash = GetHash(password);

            if (userInfo.Any() && userInfo[3] == userHash)
            {
                CurrentUser = new User(userInfo);
                return(true);
            }
            MessageBox.Show(LanguageEngine.Language["LoginActivity AuthorizationMessageBox"],
                            LanguageEngine.Language["LoginActivity AuthorizationMessageBoxTitle"], MessageBoxButton.OK, MessageBoxImage.Error);
            return(false);
        }
示例#5
0
        public static bool AddNewUser(User newUser, string password)
        {
            var newUserHash = GetHash(password);

            try
            {
                UserDBController.Add(newUser.Id, newUser.Name, newUser.AccessLevel, newUserHash);
            }
            catch (System.Data.SQLite.SQLiteException)
            {
                return(false);
            }
            ItemsPositions.Add(newUser);
            return(true);
        }
示例#6
0
 public static void DeleteUserFromDB(int selectedIndex)
 {
     if (ItemsPositions.Count == 0)
     {
         MessageBox.Show(LanguageEngine.Language["UserControlServiceActivity NothingToRemove"],
                         LanguageEngine.Language["UserControlServiceActivity NothingToRemoveTitle"], MessageBoxButton.OK, MessageBoxImage.Error);
     }
     else if (ItemsPositions.Select(x => (x as User).Id).Contains(CurrentUser.Id))
     {
         MessageBox.Show(LanguageEngine.Language["UserControlServiceActivity SelfRemoveDisallowed"],
                         LanguageEngine.Language["UserControlServiceActivity SelfRemoveDisallowedTitle"], MessageBoxButton.OK, MessageBoxImage.Error);
     }
     else if (selectedIndex == -1)
     {
         if (MessageBox.Show(LanguageEngine.Language["UserControlServiceActivity DeletingAll"],
                             LanguageEngine.Language["UserControlServiceActivity DeletingAllTitle"], MessageBoxButton.YesNo,
                             MessageBoxImage.Warning) == MessageBoxResult.Yes)
         {
             foreach (User user in ItemsPositions)
             {
                 UserDBController.Remove(user.Id);
             }
             ItemsPositions.Clear();
         }
     }
     else
     {
         if (MessageBox.Show(LanguageEngine.Language["UserControlServiceActivity ConfirmUserRemoving"],
                             LanguageEngine.Language["UserControlServiceActivity ConfirmUserRemovingTitle"], MessageBoxButton.YesNo,
                             MessageBoxImage.Warning) == MessageBoxResult.Yes)
         {
             var id = (ItemsPositions[selectedIndex] as User).Id;
             UserDBController.Remove(id);
             ItemsPositions.RemoveAt(selectedIndex);
         }
     }
 }