Skip to content

BarMan555/enterprise-development

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Разработка корпоративных приложений

Задание «Поликлиника»

В базе данных поликлиники содержится информация о записях пациентов на прием к врачам.

Пациент характеризуется номером паспорта, ФИО, полом, датой рождения, адресом, группой крови, резус фактором и контактным телефоном. Пол пациента является перечислением. Группа крови пациента является перечислением. Резус фактор пациента является перечислением.

Информация о враче включает номер паспорта, ФИО, год рождения, специализацию, стаж работы. Специализация врача является справочником.

При записи на прием пациента в базе данных фиксируется дата и время приема, номер кабинета, а также индикатор того, является ли прием повторным.

Классы

  • Patient - класс описывает пациента
  • Doctor - класс описывает доктора
  • Appointment - класс описывает прием к врачу

Перечисления

  • BloodType - группа крови пациента
  • Gender - гендер пациента
  • RhFactor - резус фактор пациента
  • Speciallization - специализация врача

Тесты

HospitalMongoTests - заданные по варианту юнит-тесты

  1. GetDoctorsWithExperience_WhenExperienceAtLeast10Years_ReturnsExperiencedDoctorsOrderedByName() - Вывести информацию о всех врачах, стаж работы которых не менее 10 лет.
  2. GetPatientsByDoctor_WhenDoctorIsSpecified_ReturnsPatientsOrderedByName() - Вывести информацию о всех пациентах, записанных на прием к указанному врачу, упорядочить по ФИО.
  3. CountAppointments_WhenRepeatVisitsInLastMonth_ReturnsCorrectCount() - Вывести информацию о количестве повторных приемов пациентов за последний месяц.
  4. GetPatients_WhenOver30WithMultipleDoctors_ReturnsPatientsOrderedByBirthDate() - Вывести информацию о пациентах старше 30 лет, которые записаны на прием к нескольким врачам, упорядочить по дате рождения.
  5. GetAppointments_WhenInSpecificRoomCurrentMonth_ReturnsAppointmentsOrderedByDateTime() - Вывести информацию о приемах за текущий месяц, проходящих в выбранном кабинете.

Hospital.Infrastructure.EfCore - Слой для доступа к данным в базе данных

Hospital.Application.Contracts - Контракты для сервисного слоя

Dtos

Interfaces - Контракты сервисов

Hospital.Application - Сервисы

Services - Реализации сервисов с CRUD операциями

Hospital.Api - Веб-API

Controllers - API контроллеры

Hospital.AppHost - Aspire для оркестрации

About

Разработка корпоративных приложений. 4 курс. 1 Лаба

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 100.0%