private void requests_LoadData() { DB db = new DB(); db.openConnection(); String query; query = "SELECT [Requests.Area_id],[Requests.Request_id],[Renters.Name], [Renters.Surname],[Areas.AreaName],[Areas.Rooms], " + "[Areas.SpaceOfArea_squareMeter],[Areas.PricePerMonth],[Requests.Accept] " + "FROM ((Areas INNER JOIN Requests ON Areas.id=Requests.Area_id) INNER JOIN Renters ON Requests.Renter_id=Renters.id) " + "WHERE Requests_initiatair=@role AND Requests.Owner_id=@o_id AND "; OleDbCommand command = new OleDbCommand(query, db.getConnection()); command.Parameters.Add("@role", OleDbType.VarChar).Value = Client1.role; command.Parameters.Add("@o_id", OleDbType.VarChar).Value = Client1.id; OleDbDataReader reader = command.ExecuteReader(); List <string[]> data = new List <string[]>(); while (reader.Read()) { data.Add(new string[9]); data[data.Count - 1][0] = reader[0].ToString(); data[data.Count - 1][1] = reader[1].ToString(); data[data.Count - 1][2] = reader[2].ToString(); data[data.Count - 1][3] = reader[3].ToString(); data[data.Count - 1][4] = reader[4].ToString(); data[data.Count - 1][5] = reader[5].ToString(); data[data.Count - 1][6] = reader[6].ToString(); data[data.Count - 1][7] = reader[7].ToString(); data[data.Count - 1][8] = reader[8].ToString(); } reader.Close(); db.closeConnection(); foreach (string[] s in data) { RequestsStatusDgv.Rows.Add(s); } }
private void buttonAddObj_Click(object sender, EventArgs e) { DB db = new DB(); String tableName, column_id, column_name;; if (Client1.role == "Owners") { column_id = "Owner_id"; tableName = "Areas"; column_name = "AreaName"; } else { column_id = "Renter_id"; tableName = "LeasingAppID"; column_name = "LeasingAppName"; } OleDbCommand command = new OleDbCommand("INSERT INTO " + tableName + " ([" + column_id + "], [" + column_name + "], [SpaceOfArea_squareMeter], [Rooms],[PricePerMonth],[Describe]) VALUES (@person_id, @obj_name, @space, @rooms,@price,@descr)", db.getConnection()); command.Parameters.Add("@person_id", OleDbType.Integer).Value = Client1.id; command.Parameters.Add("@obj_name", OleDbType.VarChar).Value = textBoxName.Text; command.Parameters.Add("@space", OleDbType.Integer).Value = int.Parse(textBoxMetrs.Text); command.Parameters.Add("@rooms", OleDbType.Integer).Value = int.Parse(textBoxRooms.Text); command.Parameters.Add("@price", OleDbType.VarChar).Value = textBoxPrice.Text; command.Parameters.Add("@descr", OleDbType.VarChar).Value = textBoxDescribe.Text; db.openConnection(); if (command.ExecuteNonQuery() == 1) { MessageBox.Show("Объект успешно добавлен"); } else { MessageBox.Show("Ошибка"); } db.closeConnection(); }
private void dataGridView1_CellValueChanged(object sender, DataGridViewCellEventArgs e) { if (dataGridView1.Columns[e.ColumnIndex].Name == "Accept") { DB db = new DB(); OleDbCommand command = new OleDbCommand("Update Requests SET Accept=true WHERE Request_id=@r_id", db.getConnection()); command.Parameters.Add("@r_id", OleDbType.Integer).Value = dataGridView1.Rows[e.RowIndex].Cells["Rid"].Value; db.openConnection(); if (command.ExecuteNonQuery() == 1) { MessageBox.Show("Заявка принята. Ждите оплаты от клиента"); } else { MessageBox.Show("Error"); } db.closeConnection(); } }
//Определяем какие пользователи подали заявку клиенту //показываем их при выборе флага checkbox private void requests() { DB db = new DB(); db.openConnection(); String query = "SELECT [Area_id] FROM Requests WHERE Renter_id=@r_id AND Requests_initiatair<>@role"; OleDbCommand command = new OleDbCommand(query, db.getConnection()); command.Parameters.Add("@r_id", OleDbType.Integer).Value = Client1.id; command.Parameters.Add("@role", OleDbType.VarChar).Value = Client1.role; OleDbDataReader reader = command.ExecuteReader(); while (reader.Read()) { data.Add(reader[0].ToString()); } reader.Close(); db.closeConnection(); }
private void showContract() { DB db = new DB(); db.openConnection(); String query; query = "SELECT [Owners.Name],[Owners.Surname],[Areas.AreaName], [Areas.Rooms], " + "[Areas.SpaceOfArea_squareMeter],[Contracts.Amount_of_money] " + "FROM ((Areas INNER JOIN Contracts ON Areas.id=Contracts.Area_id) INNER JOIN Owners ON Contracts.Owner_id=Owners.id) " + "WHERE Contracts.Renter_id=@r_id"; OleDbCommand command = new OleDbCommand(query, db.getConnection()); command.Parameters.Add("@r_id", OleDbType.Integer).Value = Client1.id; OleDbDataReader reader = command.ExecuteReader(); List <string[]> data = new List <string[]>(); while (reader.Read()) { data.Add(new string[6]); data[data.Count - 1][0] = reader[0].ToString(); data[data.Count - 1][1] = reader[1].ToString(); data[data.Count - 1][2] = reader[2].ToString(); data[data.Count - 1][3] = reader[3].ToString(); data[data.Count - 1][4] = reader[4].ToString(); data[data.Count - 1][5] = reader[5].ToString(); } reader.Close(); db.closeConnection(); foreach (string[] s in data) { ContractDataGridView.Rows.Add(s); } }
private void buttonRegister_Click(object sender, EventArgs e) { if (userNameField.Text == "Введите имя") { MessageBox.Show("Введите имя"); return; } if (userSurnameField.Text == "Введите фамилию") { MessageBox.Show("Введите фамилию"); return; } if (loginField.Text == "Введите логин") { MessageBox.Show("Введите логин"); return; } if (passField.Text == "") { MessageBox.Show("Введите пароль"); return; } String tableName; if (RenterRadioButton.Checked) { tableName = "Renters"; } else if (OwnerRadioButton.Checked) { tableName = "Owners"; } else { MessageBox.Show("Укажите какой стороной арендного договора вы являетесь"); return; } if (isUserExists(tableName)) { return; } DB db = new DB(); OleDbCommand command = new OleDbCommand("INSERT INTO " + tableName + " ([Login], [Pass], [Name], [Surname]) VALUES (@login, @pass, @name, @surname)", db.getConnection()); command.Parameters.Add("@login", OleDbType.VarChar).Value = loginField.Text; command.Parameters.Add("@pass", OleDbType.VarChar).Value = passField.Text; command.Parameters.Add("@name", OleDbType.VarChar).Value = userNameField.Text; command.Parameters.Add("@surname", OleDbType.VarChar).Value = userSurnameField.Text; db.openConnection(); if (command.ExecuteNonQuery() == 1) { MessageBox.Show("Аккаунт был создан"); } else { MessageBox.Show("Аккаунт не был создан"); } db.closeConnection(); }
private void buttonSendRequest_Click(object sender, EventArgs e) { DB db = new DB(); if (buttonSendRequest.Text == "Принять заявку и оплатить") { OleDbCommand command = new OleDbCommand("INSERT INTO Contracts ([Owner_id], [Renter_id], [Area_id], [Amount_of_money]) VALUES (@own_id, @rent_id, @area_id, @money)", db.getConnection()); command.Parameters.Add("@own_id", OleDbType.Integer).Value = SelectedArea.person_id; command.Parameters.Add("@rent_id", OleDbType.Integer).Value = Client1.id; command.Parameters.Add("@area_id", OleDbType.Integer).Value = SelectedArea.area_id; command.Parameters.Add("@money", OleDbType.Integer).Value = SelectedArea.price; OleDbCommand commandCheck = new OleDbCommand("SELECT * FROM Contracts WHERE Owner_id=@own_id AND Renter_id=@rent_id AND Area_id=@area_id", db.getConnection()); commandCheck.Parameters.Add("@own_id", OleDbType.Integer).Value = SelectedArea.person_id; commandCheck.Parameters.Add("@rent_id", OleDbType.Integer).Value = Client1.id; commandCheck.Parameters.Add("@area_id", OleDbType.Integer).Value = SelectedArea.area_id; OleDbCommand commandUpdAccept = new OleDbCommand("Update Requests SET Accept=true WHERE Owner_id=@own_id AND Renter_id=@rent_id AND Area_id=@area_id", db.getConnection()); commandUpdAccept.Parameters.Add("@own_id", OleDbType.Integer).Value = SelectedArea.person_id; commandUpdAccept.Parameters.Add("@rent_id", OleDbType.Integer).Value = Client1.id; commandUpdAccept.Parameters.Add("@area_id", OleDbType.Integer).Value = SelectedArea.area_id; OleDbDataAdapter adapter = new OleDbDataAdapter(); DataTable table = new DataTable(); adapter.SelectCommand = commandCheck; adapter.Fill(table); if (table.Rows.Count > 0) { MessageBox.Show("Вы уже оплатили данную площадь. Дождитесь когда с вами свяжется владелец"); } else { db.openConnection(); if (command.ExecuteNonQuery() == 1 && commandUpdAccept.ExecuteNonQuery() == 1) { MessageBox.Show("Площадь оплачена. Подождите пока с вами свяжется владелец"); } else { MessageBox.Show("Error"); } db.closeConnection(); } } else { if (Client1.role == "Owners") { String ClientRole = Client1.role; int objectId = SelectedArea.area_id; // Если пользователь Owner, то objectId - ID запроса пользователя. Если пользователь renter, то object_id - id помещения int Role_Login = Client1.id; //Проверяем подавал ли пользователь уже эту заявку OleDbCommand command1 = new OleDbCommand("SELECT * FROM Requests WHERE Renter_id = @r_id AND Owner_id= @o_id AND Area_id=@a_id", db.getConnection()); command1.Parameters.Add("@r_id", OleDbType.Integer).Value = SelectedArea.person_id; command1.Parameters.Add("@o_id", OleDbType.Integer).Value = Client1.id; command1.Parameters.Add("@a_id", OleDbType.Integer).Value = data[AreasComboBox.SelectedIndex][0]; command1.Parameters.Add("@r_i", OleDbType.VarChar).Value = Client1.role; DataTable table = new DataTable(); OleDbDataAdapter adapter = new OleDbDataAdapter(); adapter.SelectCommand = command1; //выполняем команду adapter.Fill(table); //все полученные данные трансформируем внутрь объекта table if (table.Rows.Count > 0) { MessageBox.Show("Данная заявка клиенту с данной площадью уже существует."); } else { OleDbCommand commandCheck2 = new OleDbCommand("SELECT * FROM Contracts WHERE Owner_id=@own_id AND Renter_id=@rent_id AND Area_id=@area_id", db.getConnection()); commandCheck2.Parameters.Add("@own_id", OleDbType.Integer).Value = SelectedArea.person_id; commandCheck2.Parameters.Add("@rent_id", OleDbType.Integer).Value = Client1.id; commandCheck2.Parameters.Add("@area_id", OleDbType.Integer).Value = SelectedArea.area_id; DataTable table2 = new DataTable(); OleDbDataAdapter adapter2 = new OleDbDataAdapter(); adapter2.SelectCommand = command1; //выполняем команду adapter2.Fill(table2); //все полученные данные трансформируем внутрь объекта table if (table2.Rows.Count > 0) { MessageBox.Show("У вас уже оплачен контракт на данную площадь"); } else { OleDbCommand command2 = new OleDbCommand("INSERT INTO Requests ([Accept],[Area_id],[Renter_id],[Owner_id],[Requests_initiatair] ) VALUES (@accept, @a_id, @r_id, @o_id,@r_i)", db.getConnection()); command2.Parameters.Add("@accept", OleDbType.Boolean).Value = false; command2.Parameters.Add("@a_id", OleDbType.Integer).Value = data[AreasComboBox.SelectedIndex][0]; command2.Parameters.Add("@r_id", OleDbType.Integer).Value = SelectedArea.person_id; command2.Parameters.Add("@o_id", OleDbType.VarChar).Value = Client1.id; command2.Parameters.Add("@r_i", OleDbType.VarChar).Value = Client1.role; db.openConnection(); if (command2.ExecuteNonQuery() == 1) { MessageBox.Show("Ваша заявка отправлена. Дождитесь ответа от данного пользователя."); } else { MessageBox.Show("Произошла ошибка."); } db.closeConnection(); } } } else { String ClientRole = Client1.role; int objectId = SelectedArea.area_id; // Если пользователь Owner, то objectId - ID запроса пользователя. Если пользователь renter, то object_id - id помещения int Role_Login = Client1.id; //Проверяем подавал ли пользователь уже эту заявку OleDbCommand command1 = new OleDbCommand("SELECT * FROM Requests WHERE Renter_id = @r_id AND Owner_id= @o_id AND Area_id=@a_id AND Requests_initiatair=@r_i", db.getConnection()); command1.Parameters.Add("@r_id", OleDbType.Integer).Value = Client1.id; command1.Parameters.Add("@o_id", OleDbType.Integer).Value = SelectedArea.person_id; command1.Parameters.Add("@a_id", OleDbType.Integer).Value = SelectedArea.area_id; command1.Parameters.Add("@r_i", OleDbType.VarChar).Value = Client1.role; DataTable table = new DataTable(); OleDbDataAdapter adapter = new OleDbDataAdapter(); adapter.SelectCommand = command1; //выполняем команду adapter.Fill(table); //все полученные данные трансформируем внутрь объекта table if (table.Rows.Count > 0) { MessageBox.Show("Вы уже подавали заявку на данный объект!"); } else { OleDbCommand command2 = new OleDbCommand("INSERT INTO Requests ([Accept],[Area_id],[Renter_id],[Owner_id],[Requests_initiatair] ) VALUES (@accept, @a_id, @r_id, @o_id,@r_i)", db.getConnection()); command2.Parameters.Add("@accept", OleDbType.Boolean).Value = false; command2.Parameters.Add("@a_id", OleDbType.Integer).Value = SelectedArea.area_id; command2.Parameters.Add("@r_id", OleDbType.Integer).Value = Client1.id; command2.Parameters.Add("@o_id", OleDbType.VarChar).Value = SelectedArea.person_id; command2.Parameters.Add("@r_i", OleDbType.VarChar).Value = Client1.role; db.openConnection(); if (command2.ExecuteNonQuery() == 1) { MessageBox.Show("Ваша заявка отправлена. Дождитесь ответа от данного пользователя."); } else { MessageBox.Show("Произошла ошибка."); } db.closeConnection(); } } } }