
Курсовая работа
.pdfРисунок 44 – Отображения сообщения об ошибке при несовпадении полей
«Пароль» и «Повторите пароль»
Во данной главе были получены навыки создания процедур нажатия кнопок, добавление данных с помощью SQL запросов, работы со специаль-
ными ЭУ (валидаторами). Также была улучшен блок авторизации и страница регистрации клиентов.
31
Заключение
В процессе выполнения курсовой работы была создана информационная система для стоматологической клиники. Были построены диаграммы прецен-
дентов для основных категорий пользователей и сформулированы функцио-
нальные требования к информационной системе, выделены объекты и изу-
чены отношения между объектами системы, визуализированы, сконструиро-
ваны и задокументированы динамические аспекты системы, выявлены сущно-
сти для создания базы данных, определены и описаны атрибуты каждой сущ-
ности будущей базы данных, подробно описаны связи между сущностями. В
среде ErWin были созданы логические и физические модели будущей базы данных. Были создан и размечен сайт с использованием технологии ASP.NET,
включая создание информационных страниц, страницы с регистрацией, стра-
ниц, выводящих информацию из БД. Также были разработаны поисковые страницы с возможностью просмотра информации с фильтрами, включая со-
здание представлений для таблиц, отображение их в Gridview, создание ЭУ выпадающих списков и кнопок для фильтров и выполнение их функционала при помощи SQL запросов. Были созданы процедуры нажатия кнопок, добав-
ление данных с помощью SQL запросов, работы со специальными ЭУ (вали-
даторами), улучшен блок авторизации и страница регистрации клиентов.
В перспективе стоит создать функционал для добавления новых услуг,
новых пользователей медицинского персонала, управления расписанием вра-
чей, создания и управления талонами. Создание личного кабинета для зареги-
стрированного пользователя и медицинского персонала улучшит информаци-
онную систему стоматологической клиники.
32
Список использованных источников
1.Н.В. Барклаевская Г.В. О.М. Шарапова Объектно-ориентированный под-
ход к проектированию информационных систем: методические указания к выполнению лабораторных работ - СПБ.: 2020 – 35с. (электронный вари-
ант).
2.Преснякова Г.В, Шарапова О.М., Шахомиров А.В. Методические указания
к выполнению курсовой работы по дисциплине «Базы данных» / С.-Петерб.
гос. ун-т аэрокосм. приборостроения. - СПб.: Изд-во ГУАП, 2018. - 56 с.
3.Преснякова Г.В., Барклаевская Н.В., Шарапова О.М. Работа с базами дан-
ных в среде Microsoft SQL Server 2012: учеб. пособие / Спб.: ГУАП, 2016.
– 163 с.
4.Преснякова Г.В., Шахомиров А. В. Проектирование реляционных баз дан-
ных: учебное пособие / С.-Петерб. гос. ун-т аэрокосм. приборостроения. -
СПб.: Изд-во ГУАП, 2015. - 126 с.
5.Барклаевская Н.В., Шарапова О.М. Создание сайта с использованием
MS Visul Studio и технологии ASPX.NET. - СПБ.: 2020 – 35с. (электронный вариант).
6.О.М. Шарапова, Н.В. Барклаевская Г.В. Создание интерфейса пользователя при помощи Visual Studio c применением Windows Forms -СПБ.: 2019 – 35с. (электронный вариант).
7.Барклаевская Н.В., Шарапова О.М «Сравнение технологий ADO.NET и Linq to SQL при разработке веб-сайтов» Сборник. Научная сессия ГУАП,
2019
33

Приложение
Листинг 1 – Шаблон MasterPage.master.cs
using System;
using System.Collections.Generic; using System.Linq;
using System.Web; using System.Web.UI;
using System.Web.UI.WebControls;
public partial class MasterPage : System.Web.UI.MasterPage
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void LinkButton6_Click(object sender, EventArgs e)
{
Response.Redirect("AboutUs.aspx");
}
}
Листинг 2 – Шаблон MasterPage_admin.master.cs
using System;
using System.Collections.Generic; using System.Linq;
using System.Web; using System.Web.UI;
using System.Web.UI.WebControls;
public partial class MasterPage_admin : System.Web.UI.MasterPage
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
}
}
34

Листинг 3 – Страница Main.aspx.cs
using System;
using System.Collections.Generic; using System.Linq;
using System.Web; using System.Web.UI;
using System.Web.UI.WebControls;
public partial class Main : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
}
Листинг 4 – Страница AboutUs.aspx.cs
using System;
using System.Collections.Generic; using System.Linq;
using System.Web; using System.Web.UI;
using System.Web.UI.WebControls;
public partial class AboutUs : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
}
Листинг 5 – Страница Licension.aspx.cs
using System;
using System.Collections.Generic; using System.Linq;
using System.Web; using System.Web.UI;
using System.Web.UI.WebControls;
public partial class Licension : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
}
35

Листинг 6 – Страница Staff.aspx.cs
using System;
using System.Collections.Generic; using System.Linq;
using System.Web; using System.Web.UI;
using System.Web.UI.WebControls;
public partial class PriceList : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
}
protected void Button4_Click(object sender, EventArgs e)
{
string crit;
crit = "SELECT * FROM Q_medic WHERE name_speciality= '" + DropDownList1.SelectedValue + "'";
SqlDataSource1.SelectCommand = crit; GridView1.DataBind();
}
protected void DropDownList2_SelectedIndexChanged(object sender, EventArgs e)
{
}
protected void Button5_Click(object sender, EventArgs e)
{
string crit;
crit = "SELECT * FROM Q_medic WHERE surname_M= '" + DropDownList2.SelectedValue + "'";
SqlDataSource1.SelectCommand = crit; GridView1.DataBind();
}
protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
{
}
protected void Button6_Click(object sender, EventArgs e)
{
string crit;
crit = "SELECT * FROM Q_medic"; SqlDataSource2.SelectCommand = crit; GridView1.DataBind();
}
}
36

Листинг 7 – Страница PriceList.aspx.cs
using System;
using System.Collections.Generic; using System.Linq;
using System.Web; using System.Web.UI;
using System.Web.UI.WebControls;
public partial class PriceList : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
}
protected void Button4_Click(object sender, EventArgs e)
{
int crit = Convert.ToInt32(DropDownList1.SelectedValue); switch (crit)
{
case 1:
SqlDataSource2.SelectCommand = "SELECT * FROM Q_priceList WHERE price
<= 3000";
break; case 2:
SqlDataSource2.SelectCommand = "SELECT * FROM Q_priceList WHERE price > 3000 AND price <= 9000";
break; case 3:
SqlDataSource2.SelectCommand = "SELECT * FROM Q_priceList WHERE price
> 9000";
break;
}
GridView1.DataBind();
}
protected void Button5_Click(object sender, EventArgs e)
{
string crit;
crit = "SELECT * FROM Q_priceList"; SqlDataSource2.SelectCommand = crit; GridView1.DataBind();
}
}
37

Листинг 8 – Страница Registration.aspx.cs
using System;
using System.Collections.Generic; using System.Linq;
using System.Web; using System.Web.UI;
using System.Web.UI.WebControls;
public partial class Registration : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
}
Листинг 9 – Страница Admin.aspx.cs
using System;
using System.Collections.Generic; using System.Linq;
using System.Web; using System.Web.UI;
using System.Web.UI.WebControls;
public partial class Admin : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
}
38

Листинг 10 – шаблон страницы MasterPage.master.cs
using System;
using System.Collections.Generic; using System.Linq;
using System.Web; using System.Web.UI;
using System.Web.UI.WebControls; using System.Data.OleDb;
public partial class MasterPage : System.Web.UI.MasterPage
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void LinkButton6_Click(object sender, EventArgs e)
{
Response.Redirect("AboutUs.aspx");
}
protected void Button1_Click(object sender, EventArgs e)
{
string connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Stomat\\Clinic.accdb";
var connect = new OleDbConnection(connectionString); connect.Open();
string sparol, slogin;
sparol = Convert.ToString(TextBox2.Text); slogin = Convert.ToString(TextBox1.Text);
string sqlQ1 = "SELECT * FROM patient WHERE login_P='" + slogin + "' AND password_P='" + sparol + "'";
string sqlQ2 = "SELECT * FROM medical_staff WHERE login_M='" + slogin + "' AND password_M='" + sparol + "'";
var mycom = new OleDbCommand(); var mycom1 = new OleDbCommand(); mycom.CommandText = sqlQ1; mycom1.CommandText = sqlQ2; mycom.Connection = connect; mycom1.Connection = connect; OleDbDataReader myread; OleDbDataReader myread1;
myread = mycom.ExecuteReader(); myread1 = mycom1.ExecuteReader(); if (myread.Read() == true)
{
Session["IdU"] = slogin;
Session["IdP"] = Convert.ToString(myread.GetValue(0)); TextBox1.Visible = false;
TextBox2.Visible = false; Label4.Visible = false; Label3.Visible = false; Label2.Visible = false; Button1.Visible = false; Button2.Visible = true; Button4.Visible = false; Label1.Visible = true;
Label1.Text = "Привет " + slogin + "!";
}
else
{
if (myread1.Read() == true)
{
39

Session["IdU"] = |
slogin; |
Session["IdP"] = |
Convert.ToString(myread1.GetValue(0)); |
TextBox1.Visible |
= false; |
TextBox2.Visible |
= false; |
Label4.Visible = |
false; |
Label3.Visible = |
false; |
Label2.Visible = |
false; |
Button1.Visible = false; Button2.Visible = true; Button4.Visible = false; Label1.Visible = true;
Label1.Text = "Привет " + slogin + "!";
}
else
{
Label2.Visible = true;
Label2.ForeColor = System.Drawing.Color.Red; Label2.Text = "Неправильно введен логин или пароль";
}
}
connect.Close();
}
protected void Button2_Click(object sender, EventArgs e)
{
Session.Clear(); TextBox1.Visible = true; TextBox2.Visible = true; Label1.Visible = false; Label2.Visible = false; Label3.Visible = true; Label4.Visible = true; Button1.Visible = true; Button2.Visible = false; Button4.Visible = true;
}
}
40