КУРСОВАЯ РАБОТА, АВИАБИЛЕТЫ, БИЛЕТЫ НА САМОЛЕТ, MICROSOFTVISUALSTUDIO 2019, WINDOWSFORMS, .NET FRAMEWORK 4.5, C#. Данный проект идеально подходит для курсовой работы. В нём используется база данных MySql, она находится в самом проекте. Интерфейс приложения понятный для всех.
Задание
Разработать приложение на Windows Forms с использованием базы данных для управления рейсами и авиабилетами. Программа должна позволять добавлять и изменять рейсы, просматривать их информацию, бронировать и покупать билеты на авиарейс, а также управлять личными данными пользователя и просматривать отчеты о купленных билетах.
Функционал программы
В приложении есть 2 вида пользователей:
а) Администратор;
б) Клиент;
Администратор имеет доступ ко всему функционалу, может добавлять и изменять любые данные. Также администратор может посмотреть сумму купленных билетов на конкретный авиарейс.
Клиент имеет возможность брони билета, покупки билета, а также к просмотру личных данных и изменении их. При покупке билета свободные места выделяются зеленым цветом, а занятые - красным.
Функции программы:
а) Авторизация и регистрация;
б) Добавление авиарейсов;
в) Изменение авиарейсов;
г) Просмотр информации о пользователях, авиарейсах;
д) Бронь билетов;
е) Покупка билетов;
ё) Просмотр и изменение личных данных;
ж) Просмотр справки о всех купленных авиабилетах;
Фрагмент программного кода (форма авторизации)
using System; using System.Data.SqlClient; using System.Windows.Forms; namespace Airline { public partial class Authorization : Form { DataBase dataBase = new DataBase(); private const string adminLogin = "admin"; private const string adminPassword = "123"; public string id; public Authorization() { InitializeComponent(); checkBox1.Checked = true; } private void button1_Click(object sender, EventArgs e) { try { dataBase.openConnection(); if (textBox1.Text == "" || textBox2.Text == "") { MessageBox.Show("Не все поля заполнены!", "Ошибка авторизации", MessageBoxButtons.OK, MessageBoxIcon.Error); } else if (textBox1.Text == adminLogin && textBox2.Text == adminPassword) { MessageBox.Show("Успешная автоизация!", "Админ-аккаунт", MessageBoxButtons.OK, MessageBoxIcon.Information); Form adminMenu = new AdminMenu(); adminMenu.Show(); Hide(); } else { using (SqlCommand cmd = new SqlCommand("SELECT * FROM Users WHERE Login = @Login AND Password = @Password", dataBase.getConnection())) { cmd.Parameters.AddWithValue("@Login", textBox1.Text); cmd.Parameters.AddWithValue("@Password", textBox2.Text); if (cmd.ExecuteScalar() == null) { MessageBox.Show("Неверный логин или пароль", "Ошибка авторизации", MessageBoxButtons.OK, MessageBoxIcon.Error); textBox1.Text = ""; textBox2.Text = ""; } else { using (SqlCommand cmd1 = new SqlCommand("SELECT TOP 1 id FROM Users WHERE Login = @Login", dataBase.getConnection())) { cmd1.Parameters.AddWithValue("@Login", textBox1.Text); id = cmd1.ExecuteScalar().ToString(); } MessageBox.Show("Успешная авторизация!", "Аккаунт пользователя", MessageBoxButtons.OK, MessageBoxIcon.Information); Form userMenu = new UserMenu(id); userMenu.Show(); Hide(); } } } } catch { MessageBox.Show("Ошибка авторизации!", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); } finally { dataBase.closeConnection(); } } private void button2_Click(object sender, EventArgs e) { Form registration = new Registration(); registration.ShowDialog(); } private void checkBox1_CheckedChanged(object sender, EventArgs e) { if (checkBox1.Checked) { textBox2.UseSystemPasswordChar = true; checkBox1.Text = "показать"; } else { textBox2.UseSystemPasswordChar = false; checkBox1.Text = "скрыть"; } } private void Authorization_FormClosing(object sender, FormClosingEventArgs e) { Application.Exit(); } } }
Пояснения по запуску программы
Для запуска программы необходимо в файле DataBase.cs изменить путь к базе данных Airline ticket sales.mdf в строчке кода:
SqlConnection connection = new SqlConnection(@"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=ПУТЬ К БД;Integrated Security=True");
Также необходимо в файле SeatSelection.cs изменить путь к картинке 1.png, которая находится в котологе Image в строчке кода:
string pathImage = @"ПУТЬ К КАРТИНКЕ";
Данные для входа администратора:
-логин: admin
-пароль: 111
Содержание архива
- Исходник программы для MicrosoftVisualStudio 2019 (и более новых версий) на языке C#
Brian