
- •Введение
- •Анализ предметной области
- •Диаграммы прецедентов
- •Диаграммы взаимодействия
- •Диаграммы поведения
- •Проектирование бд с использованием case-средств
- •Создание сайта с использованием ms Visual Studio Разметка и наполнение сайта
- •Реализация личного кабинета пользователя
- •Фильтрация данных
- •Администрирование базы данных
- •Заключение
- •Список использованной литературы
- •Приложение а
- •Приложение б
- •Приложение в
- •Приложение г
- •Приложение д
- •Приложение е
- •Приложение ж
- •Приложение з
- •Приложение и
Заключение
В ходе выполнения курсовой работы была разработана информационная система туристического агентства. Реализованы основные функциональные возможности, такие как поиск и бронирование туров, управление турами и заказами, регистрация и авторизация пользователей.
Информационная система позволяет пользователям взаимодействовать с платформой в зависимости от их роли: регистрироваться, авторизоваться, искать туры с использованием различных фильтров, а также оформлять заявки на бронирование. Администраторы могут управлять каталогом туров, добавлять новые, редактировать существующие записи и обрабатывать поступившие заявки с возможностью изменения их статусов.
Таким образом, созданная информационная система представляет собой эффективный инструмент для автоматизации деятельности туристического агентства, улучшения качества обслуживания клиентов и оптимизации бизнес-процессов.
Список использованной литературы
Н.В. Барклаевская Г.В. О.М. Шарапова Объектно-ориентированный подход к проектированию информационных систем: методические указания к выполнению лабораторных работ - СПБ.: 2020 – 35с. (электронный вариант)
Преснякова Г.В., Барклаевская Н.В., Шарапова О.М. Работа с базами данных в среде Microsoft SQL Server 2012: учеб. пособие / Спб.: ГУАП, 2016. – 163 с.
Барклаевская Н.В., Шарапова О.М. Создание сайта с использованием MS Visul Studio и технологии ASPX.NET. - СПБ.: 2020 – 35с. (электронный вариант).
О.М. Шарапова, Н.В. Барклаевская Г.В. Создание интерфейса пользователя при помощи Visual Studio c применением Windows Forms -СПБ.: 2019 – 35с. (электронный вариант).
Приложение а
Листинг – Файл Site1.Master.cs
using System;
using System.Data.SqlClient;
using System.Web.UI;
namespace WebApplication3
{
public partial class Site1 : System.Web.UI.MasterPage
{
protected void Page_Load(object sender, EventArgs e)
{
if (Session["UserId"] != null)
{
// Пользователь авторизован
txtUsername.Visible = false;
txtPassword.Visible = false;
lblLogin.Visible = false;
lblPassword.Visible = false;
btnLogin.Visible = false;
btnRegister.Visible = false;
btnLogout.Visible = true;
lblMessage.Text = $"Здравствуйте, {Session["UserName"]}";
lblMessage.ForeColor = System.Drawing.Color.White;
// Отображение кнопок в зависимости от роли пользователя
string userType = Session["UserType"].ToString();
if (userType == "Employee")
{
btnEditProfile.Visible = true;
btnOrderHistory.Visible = true;
}
else if (userType == "Admin")
{
btnManageTours.Visible = true;
btnManageOrders.Visible = true;
}
}
else
{
// Пользователь не авторизован
txtUsername.Visible = true;
txtPassword.Visible = true;
lblLogin.Visible = true;
lblPassword.Visible = true;
btnLogin.Visible = true;
btnRegister.Visible = true;
btnLogout.Visible = false;
btnEditProfile.Visible = false;
btnOrderHistory.Visible = false;
btnManageTours.Visible = false;
lblMessage.Text = "";
}
}
protected void btnLogin_Click(object sender, EventArgs e)
{
string login = txtUsername.Text.Trim();
string password = txtPassword.Text.Trim();
if (string.IsNullOrEmpty(login) || string.IsNullOrEmpty(password))
{
lblMessage.Text = "Введите логин и пароль.";
lblMessage.ForeColor = System.Drawing.Color.Red;
return;
}
string connectionString = "Data Source=localhost;Initial Catalog=travel;Integrated Security=True";
string query = @"
SELECT 'Client' AS UserType, Client_ID AS UserId, Name_C AS FirstName
FROM Client WHERE LoginC = @Login AND PasswordC = @Password
UNION ALL
SELECT
CASE
WHEN Position_E = 'Администратор' THEN 'Admin'
ELSE 'Employee'
END AS UserType,
Employee_ID AS UserId, Name_E AS FirstName
FROM Employee WHERE LoginE = @Login AND PasswordE = @Password";
try
{
using (SqlConnection connection = new SqlConnection(connectionString))
{
connection.Open();
using (SqlCommand command = new SqlCommand(query, connection))
{
command.Parameters.AddWithValue("@Login", login);
command.Parameters.AddWithValue("@Password", password);
SqlDataReader reader = command.ExecuteReader();
if (reader.HasRows)
{
reader.Read();
// Сохранение данных в сессии
Session["UserType"] = reader["UserType"].ToString();
Session["UserId"] = reader["UserId"].ToString();
Session["UserName"] = reader["FirstName"].ToString();
lblMessage.ForeColor = System.Drawing.Color.Green;
lblMessage.Text = "Вход выполнен успешно!";
Response.Redirect("Home.aspx");
}
else
{
lblMessage.Text = "Неверный логин или пароль.";
lblMessage.ForeColor = System.Drawing.Color.Red;
}
}
}
}
catch (Exception ex)
{
lblMessage.Text = "Ошибка: " + ex.Message;
lblMessage.ForeColor = System.Drawing.Color.Red;
}
}
protected void btnLogout_Click(object sender, EventArgs e)
{
Session.Clear();
txtUsername.Visible = true;
txtPassword.Visible = true;
lblLogin.Visible = true;
lblPassword.Visible = true;
btnLogin.Visible = true;
btnRegister.Visible = true;
btnLogout.Visible = false;
lblMessage.Text = "Вы успешно вышли.";
lblMessage.ForeColor = System.Drawing.Color.Green;
Response.Redirect("Home.aspx");
}
protected void btnRegister_Click(object sender, EventArgs e)
{
Response.Redirect("Registration.aspx");
}
protected void btnEditProfile_Click(object sender, EventArgs e)
{
Response.Redirect("EditProfile.aspx");
}
protected void btnOrderHistory_Click(object sender, EventArgs e)
{
Response.Redirect("OrderHistory.aspx");
}
protected void LinkButton1_Click(object sender, EventArgs e)
{
Response.Redirect("Home.aspx");
}
protected void LinkButton2_Click(object sender, EventArgs e)
{
Response.Redirect("About.aspx");
}
protected void LinkButton3_Click(object sender, EventArgs e)
{
Response.Redirect("Find.aspx");
}
protected void btnManageTours_Click(object sender, EventArgs e)
{
Response.Redirect("ManageTours.aspx");
}
protected void btnManageOrders_Click(object sender, EventArgs e)
{
Response.Redirect("ManageOrders.aspx");
}
}
}