Диплом: Автоматизация учета пациентов на примере ООО «АРХИДЕНТ»

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
107
выберите его из списка слева.");
}
}
private void ButtonNewReception_Click(object sender, RoutedEventArgs e)
{
if (SelectionObj != null)
{
NewReception newReception = new NewReception(SelectionObj,
connection);
newReception.Show();
}
else
{
MessageBox.Show("Что бы создаь новую запись расписания
выберите пацента из списка слева.");
}
}
private void PatientDataGrid_SelectionChanged(object sender,
SelectionChangedEventArgs e)
{
Patient patient = PatientDataGrid.SelectedItem as Patient;
if (patient != null)
{
SelectionObj = patient;
ReceptionDataGrid.Items.Clear();
//загрузкарасписаниядляконкретногопацента
sqlExpression = "SELECT [Reception].[Id_Reception],
[Reception].[doctor], [Doctor].[nameDoctor], [Doctor].[surname],
108
[Doctor].[patronymic], [Reception].[patient], [Patient].[namePatient],
[Patient].[surname], [Patient].[patronymic], [Reception].[procedure],
[Procedure].[nameProcedure], [Reception].[begin_reception], [Reception].[status],
[Reception].[price] FROM (([Reception] LEFT JOIN [Doctor] ON
[Reception].[doctor] = [Doctor].[Id_doc]) LEFT JOIN [Patient] ON
[Reception].[patient] = [Patient].[Id_patient]) LEFT JOIN [Procedure] ON
[Reception].[procedure] = [Procedure].[Id_Procedure] WHERE
[Reception].[patient] = " + patient.Id;
command = new SqlCommand(sqlExpression, connection);
reader = command.ExecuteReader();
if (reader.HasRows)
{
while (reader.Read())
{
Reception_ temp = new Reception_();
temp.Id = reader.GetInt32(0);
temp.doctor_id = reader.GetInt32(1);
temp.nameDoctor = reader.GetString(2);
temp.surnameDoctor = reader.GetString(3);
temp.patronymicDoctor = reader.GetString(4);
temp.patient_id = reader.GetInt32(5);
temp.namePatient = reader.GetString(6);
temp.surnamePatient = reader.GetString(7);
temp.patronymicPatient = reader.GetString(8);
temp.procedure = reader.GetInt32(9);
temp.nameProcedure = reader.GetString(10);
109
temp.begin_reception = reader.GetDateTime(11);
temp.status = reader.GetBoolean(12);
temp.price = reader.GetInt32(13);
ReceptionDataGrid.Items.Add(temp);
}
}
}
}
private void ProcedureDataGrid_SelectionChanged(object sender,
SelectionChangedEventArgs e)
{
Procedure procedure = ProcedureDataGrid.SelectedItem as
Procedure;
if (procedure != null)
{
ReceptionDataGrid.Items.Clear();
//загрузкарасписаниядляконкретнойуслуги
sqlExpression = "SELECT [Reception].[Id_Reception],
[Reception].[doctor], [Doctor].[nameDoctor], [Doctor].[surname],
[Doctor].[patronymic], [Reception].[patient], [Patient].[namePatient],
[Patient].[surname], [Patient].[patronymic], [Reception].[procedure],
[Procedure].[nameProcedure], [Reception].[begin_reception], [Reception].[status],
[Reception].[price] FROM (([Reception] LEFT JOIN [Doctor] ON
[Reception].[doctor] = [Doctor].[Id_doc]) LEFT JOIN [Patient] ON
[Reception].[patient] = [Patient].[Id_patient]) LEFT JOIN [Procedure] ON
[Reception].[procedure] = [Procedure].[Id_Procedure] WHERE
[Reception].[procedure] = " + procedure.Id;
110
command = new SqlCommand(sqlExpression, connection);
reader = command.ExecuteReader();
if (reader.HasRows)
{
while (reader.Read())
{
Reception_ temp = new Reception_();
temp.Id = reader.GetInt32(0);
temp.doctor_id = reader.GetInt32(1);
temp.nameDoctor = reader.GetString(2);
temp.surnameDoctor = reader.GetString(3);
temp.patronymicDoctor = reader.GetString(4);
temp.patient_id = reader.GetInt32(5);
temp.namePatient = reader.GetString(6);
temp.surnamePatient = reader.GetString(7);
temp.patronymicPatient = reader.GetString(8);
temp.procedure = reader.GetInt32(9);
temp.nameProcedure = reader.GetString(10);
temp.begin_reception = reader.GetDateTime(11);
temp.status = reader.GetBoolean(12);
temp.price = reader.GetInt32(13);
ReceptionDataGrid.Items.Add(temp);
}
}
111
}
}
private void ReceptionDataGrid_SelectionChanged(object sender,
SelectionChangedEventArgs e)
{
Reception_ reception_ = ReceptionDataGrid.SelectedItem as
Reception_;
if (reception_ != null)
{
Patient targetpatient = new Patient();
sqlExpression = "SELECT [Patient].[Id_patient], [Patient].[namePatient],
[Patient].[surname], [Patient].[age], [Patient].[patronymic], [Patient].[passport],
[Patient].[phone] FROM Patient WHERE [Patient].[Id_patient] = " +
reception_.patient_id;
command = new SqlCommand(sqlExpression, connection);
reader = command.ExecuteReader();
if (reader.HasRows)
{
while (reader.Read())
{
targetpatient.Id = reader.GetInt32(0);
targetpatient.namePatient = reader.GetString(1);
targetpatient.surname = reader.GetString(2);
targetpatient.age = reader.GetInt32(3);
targetpatient.patronymic = reader.GetString(4);
targetpatient.passport = reader.GetString(5);
targetpatient.phone = reader.GetString(6);
}
112
}
SelectionObj = targetpatient;
}
}
private void DoctorDataGrid_SelectionChanged(object sender,
SelectionChangedEventArgs e)
{
Doctor doctor = DoctorDataGrid.SelectedItem as Doctor;
if (doctor != null)
{
ReceptionDataGrid.Items.Clear();
//загрузкарасписаниядляконкретногопацента
sqlExpression = "SELECT [Reception].[Id_Reception],
[Reception].[doctor], [Doctor].[nameDoctor], [Doctor].[surname],
[Doctor].[patronymic], [Reception].[patient], [Patient].[namePatient],
[Patient].[surname], [Patient].[patronymic], [Reception].[procedure],
[Procedure].[nameProcedure], [Reception].[begin_reception], [Reception].[status],
[Reception].[price] FROM (([Reception] LEFT JOIN [Doctor] ON
[Reception].[doctor] = [Doctor].[Id_doc]) LEFT JOIN [Patient] ON
[Reception].[patient] = [Patient].[Id_patient]) LEFT JOIN [Procedure] ON
[Reception].[procedure] = [Procedure].[Id_Procedure] WHERE
[Reception].[doctor] = " + doctor.Id;
command = new SqlCommand(sqlExpression, connection);
reader = command.ExecuteReader();
if (reader.HasRows)
{
while (reader.Read())
{
113
Reception_ temp = new Reception_();
temp.Id = reader.GetInt32(0);
temp.doctor_id = reader.GetInt32(1);
temp.nameDoctor = reader.GetString(2);
temp.surnameDoctor = reader.GetString(3);
temp.patronymicDoctor = reader.GetString(4);
temp.patient_id = reader.GetInt32(5);
temp.namePatient = reader.GetString(6);
temp.surnamePatient = reader.GetString(7);
temp.patronymicPatient = reader.GetString(8);
temp.procedure = reader.GetInt32(9);
temp.nameProcedure = reader.GetString(10);
temp.begin_reception = reader.GetDateTime(11);
temp.status = reader.GetBoolean(12);
temp.price = reader.GetInt32(13);
ReceptionDataGrid.Items.Add(temp);
}
}
}
}
private void Searchbox_SelectionChanged(object sender, RoutedEventArgs
e)
{
114
switch (usertabcontrol.SelectedIndex)
{
case 0: PatientDataGrid.Items.Filter = new Predicate<object>(item =>
((Patient)item).namePatient.Contains(searchbox.Text) ||
((Patient)item).surname.Contains(searchbox.Text) ||
((Patient)item).patronymic.Contains(searchbox.Text)); break;
case 1: DoctorDataGrid.Items.Filter = new Predicate<object>(item =>
((Doctor)item).nameDoctor.Contains(searchbox.Text) ||
((Doctor)item).surname.Contains(searchbox.Text) ||
((Doctor)item).patronymic.Contains(searchbox.Text)); break;
case 2: ProcedureDataGrid.Items.Filter = new Predicate<object>(item =>
((Procedure)item).nameProcedure.Contains(searchbox.Text)); break;
default: MessageBox.Show("err"); break;
}
}
private void ButtonHelp_Click(object sender, RoutedEventArgs e)
{
help help = new help();
help.Show();
}
private void ButtonUnSelection_Click(object sender, RoutedEventArgs e)
{
if (SelectionObj != null)
{
SelectionObj = null;
ReceptionDataGrid.Items.Clear();
//загрузкарасписаниядляконкретногопацента
sqlExpression = "SELECT [Reception].[Id_Reception],
[Reception].[doctor], [Doctor].[nameDoctor], [Doctor].[surname],
115
[Reception].[patient], [Patient].[namePatient], [Patient].[surname],
[Reception].[procedure], [Procedure].[nameProcedure],
[Reception].[begin_reception], [Reception].[status], [Reception].[price] FROM
(([Reception] LEFT JOIN [Doctor] ON [Reception].[doctor] = [Doctor].[Id_doc])
LEFT JOIN [Patient] ON [Reception].[patient] = [Patient].[Id_patient]) LEFT
JOIN [Procedure] ON [Reception].[procedure] = [Procedure].[Id_Procedure]";
command = new SqlCommand(sqlExpression, connection);
reader = command.ExecuteReader();
if (reader.HasRows)
{
while (reader.Read())
{
Reception_ temp = new Reception_();
temp.Id = reader.GetInt32(0);
temp.doctor_id = reader.GetInt32(1);
temp.nameDoctor = reader.GetString(2);
temp.surnameDoctor = reader.GetString(3);
temp.patient_id = reader.GetInt32(4);
temp.namePatient = reader.GetString(5);
temp.surnamePatient = reader.GetString(6);
temp.procedure = reader.GetInt32(7);
temp.nameProcedure = reader.GetString(8);
temp.begin_reception = reader.GetDateTime(9);
temp.status = reader.GetBoolean(10);
temp.price = reader.GetInt32(11);
116
ReceptionDataGrid.Items.Add(temp);
}
}
}
}
private void ButtonReport_Click(object sender, RoutedEventArgs e)
{
sqlExpression = "SELECT SUM(price) FROM [Reception]";
command = new SqlCommand(sqlExpression, connection);
object summMoney = command.ExecuteScalar();
sqlExpression = "SELECT SUM(price) FROM [Reception] WHERE
((([Reception].[begin_reception]) > #" + string.Format("{0}/{1}/{2}",
DateTime.Now.Month - 1, DateTime.Now.Day, DateTime.Now.Year) + "#));";
command = new SqlCommand(sqlExpression, connection);
object summMoney_1Month = command.ExecuteScalar();
sqlExpression = "SELECT COUNT(*) FROM [Patient] WHERE
((([Patient].[registration_date]) > #" + string.Format("{0}/{1}/{2}",
DateTime.Now.Month - 1, DateTime.Now.Day, DateTime.Now.Year) + "#));";
command = new SqlCommand(sqlExpression, connection);
object countnewclient = command.ExecuteScalar();
MessageBox.Show("Завсевремяклиентамибылопотрачено: " +
summMoney + "\n" +
"За месяц клиентами было потрачено: " + summMoney_1Month + "\n" +
"За месяц новых пацентов: " + countnewclient,
"отчет", MessageBoxButton.OK, MessageBoxImage.Information);
}

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
«Управление ресурсами проекта» (на примере организации ООО «ЛАКОСТЭ»)
Agile-методология в управлении проектами на примере ООО «Ресурсный центр «Академия КлассИнфо»
Aвтoмaтизaция пpoцecca вeдeния инфopмaциoннoй бaзы o дoлжнocтяx и вaкaнcияx c укaзaниeм тpeбoвaний к уpoвню знaний и нaвыкoв кaндидaтoв для гpуппы кaдpoв вoйcкoвoй чacти 3474»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
Cовершенствование управления рентабельности предприятия (на примере гуипп «бендерская типография «полиграфист»)