Beispiel #1
0
 /// <summary>
 /// Создает элемент списка, соответствующий пользователю
 /// </summary>
 /// <param name="user">Данные пользователя</param>
 private ListViewItem CreateUserItem(UserData user)
 {
     ListViewItem item = new ListViewItem(user.Name);
     item.ImageIndex = user.SecurityGroup == CashSecurityGroup.Cashier ? 1 : 0;
     item.Tag = user;
     lvUsers.Items.Add(item);
     return item;
 }
Beispiel #2
0
 /// <summary>
 /// Удаление пользователя
 /// </summary>
 /// <param name="user">Пользователь</param>
 /// <param name="connection">Соединение</param>
 /// <param name="transaction">Транзакция</param>
 public static void Delete(UserData user, FbConnection connection,
     FbTransaction transaction)
 {
     // создаем команду
     using (FbCommand command = new FbCommand("delete from users where id = @id",
         connection, transaction))
     {
         // параметры команды
         command.Parameters.Add("@id", user.Id);
         // выполняем команду
         command.ExecuteNonQuery();
     }
 }
Beispiel #3
0
 /// <summary>
 /// Проверка существования записи в базе
 /// </summary>
 /// <param name="user">Пользователь</param>
 /// <param name="connection">Соединение</param>
 /// <param name="transaction">Транзакция</param>
 public static Boolean Exists(UserData user, FbConnection connection,
     FbTransaction transaction)
 {
     // создаем команду
     using (FbCommand command = new FbCommand("select id from users where id = @id",
         connection, transaction))
     {
         // параметры команды
         command.Parameters.Add("@id", user.Id);
         // выполняем команду
         using (FbDataReader reader = command.ExecuteReader())
         {
             // возвращаем результат поиска
             return reader.Read();
         }
     }
 }
Beispiel #4
0
        /// <summary>
        /// Добавление пользователя
        /// </summary>
        /// <param name="user">Пользователь</param>
        /// <param name="connection">Соединение</param>
        /// <param name="transaction">Транзакция</param>
        public static void Insert(UserData user, FbConnection connection,
            FbTransaction transaction)
        {
            // текст команды
            StringBuilder commandText = new StringBuilder();
            commandText.Append("insert into users values ");
            commandText.Append("(@id, @name, @password, @group, @can_close, @cashier_mode_only)");

            // создаем команду
            using (FbCommand command = new FbCommand(commandText.ToString(), connection, transaction))
            {
                // параметры
                command.Parameters.Add("@id", user.Id);
                command.Parameters.Add("@name", user.Name);
                command.Parameters.Add("@password", user.Password);
                command.Parameters.Add("@group", (Int32)user.SecurityGroup);
                command.Parameters.Add("@can_close", user.CanClose ? 1 : 0);
                command.Parameters.Add("@cashier_mode_only", user.CashierModeOnly ? 1 : 0);

                // выполняем команду
                command.ExecuteNonQuery();
            }
        }
Beispiel #5
0
        private void OnNewUser(object sender, EventArgs e)
        {
            // создаем нового пользователя
            UserData user = new UserData(
                NewUserId,
                String.Format("Пользователь{0}", NewUserId),
                String.Empty,
                CashSecurityGroup.Cashier,
                true,
                false);

            // добавляем его в список
            _users.Add(user);
            CreateUserItem(user).Selected = true;
        }
Beispiel #6
0
        /// <summary>
        /// Обновление сведений о пользователе
        /// </summary>
        /// <param name="user">Пользователь</param>
        /// <param name="connection">Соединение</param>
        /// <param name="transaction">Транзакция</param>
        public static void Update(UserData user, FbConnection connection,
            FbTransaction transaction)
        {
            // текст команды
            StringBuilder commandText = new StringBuilder();
            commandText.Append("update users set ");
            commandText.Append("name = @name, user_password = @password, ");
            commandText.Append("security_group = @group, can_close = @can_close, ");
            commandText.Append("cashier_mode_only = @cashier_mode_only ");
            commandText.Append("where id = @id");

            // создаем команду
            using (FbCommand command = new FbCommand(commandText.ToString(), connection, transaction))
            {
                // параметры
                command.Parameters.Add("@id", user.Id);
                command.Parameters.Add("@name", user.Name);
                command.Parameters.Add("@password", user.Password);
                command.Parameters.Add("@group", (Int32)user.SecurityGroup);
                command.Parameters.Add("@can_close", user.CanClose ? 1 : 0);
                command.Parameters.Add("@cashier_mode_only", user.CashierModeOnly ? 1 : 0);

                // выполняем команду
                command.ExecuteNonQuery();
            }
        }