---
title: Use Case — ИС регистрации пациента в больнице
---
flowchart TB
  %% Actors
  actor_P["Пациент"]
  actor_R["Регистратор"]
  actor_D["Врач"]
  actor_H["Заведующий отделением"]
  actor_F["Бухгалтерия"]
  actor_A["Администратор системы"]

  %% System boundary
  subgraph System[ИС регистрации пациента]
    UC_Login["Авторизация пользователя"]
    UC_Register["Регистрация пациента"]
    UC_Find["Поиск пациента"]
    UC_Edit["Редактирование данных пациента"]
    UC_Admission["Госпитализация пациента"]
    UC_Appointment["Запись на приём"]
    UC_Treatment["Назначить лечение"]
    UC_MedRec["Создать запись в медкарте"]
    UC_Prescription["Выписать рецепт/назначения"]
    UC_Discharge["Выписка пациента"]
    UC_Invoice["Выставить счёт"]
    UC_Calc["Рассчитать стоимость услуг"]
    UC_Payment["Принять оплату"]
    UC_Report["Просмотр отчётов"]
    UC_ReportGen["Сформировать отчёт"]
    UC_UserAdmin["Управление пользователями"]
  end

  %% Associations (actors -> use cases)
  actor_R --- UC_Login
  actor_D --- UC_Login
  actor_H --- UC_Login
  actor_F --- UC_Login
  actor_A --- UC_Login

  actor_R --- UC_Register
  actor_R --- UC_Find
  actor_R --- UC_Edit
  actor_R --- UC_Admission
  actor_R --- UC_Appointment

  actor_D --- UC_Treatment
  actor_D --- UC_MedRec
  actor_D --- UC_Prescription
  actor_D --- UC_Discharge

  actor_F --- UC_Invoice
  actor_F --- UC_Payment

  actor_H --- UC_Report

  actor_A --- UC_UserAdmin

  %% Includes / Extends (modeled as dotted arrows with labels)
  UC_Register -. включает .-> UC_Find
  UC_Treatment -. включает .-> UC_MedRec
  UC_Treatment -. включает .-> UC_Prescription
  UC_Invoice -. включает .-> UC_Calc
  UC_Report -. включает .-> UC_ReportGen

  UC_Admission -. расширяет .-> UC_Register
  UC_Discharge -. расширяет .-> UC_Treatment

  %% Patient-facing actions
  actor_P --- UC_Appointment
  actor_P --- UC_Payment
