wiki:UseCase04

Version 1 (modified by 236021, 3 days ago) ( diff )

--

UseCase04 - Doctor Views Patient Medical Records

Initiating Actor - Doctor

Description

A doctor views the complete medical history of a patient including diagnoses, symptoms, allergies, lab results, procedures, prescriptions, and medical reports. The system retrieves all associated clinical data to help the doctor make informed decisions.

Scenario

  1. Doctor searches for a patient by name or ID.
SELECT
  p.patient_id,
  p.embg,
  p.date_of_birth,
  p.blood_type,
  p.gender,
  u.first_name,
  u.last_name,
  u.phone_number,
  u.email
FROM patients p
JOIN users u ON p.user_id = u.user_id
WHERE u.last_name = 'Veljanova';
  1. Doctor navigates to the patient's medical record.
SELECT
  mr.record_id,
  mr.patient_id
FROM medical_records mr
WHERE mr.patient_id = (
SELECT patient_id 
FROM patients 
WHERE user_id = (
SELECT user_id 
FROM users 
WHERE username = 'maja.veljanova'));
  1. System displays all diagnoses for the patient.
SELECT
  diag.diagnosis_id,
  diag.name,
  diag.description,
  u.first_name AS doctor_first_name,
  u.last_name AS doctor_last_name
FROM diagnosis diag
JOIN doctors d ON diag.doctor_id = d.doctor_id
JOIN users u ON d.user_id = u.user_id
WHERE diag.patient_id = (
SELECT patient_id 
FROM patients 
WHERE user_id = (
SELECT user_id 
FROM users 
WHERE username = 'maja.veljanova'));
  1. System displays symptoms recorded in the medical record.
SELECT
  s.name,
  s.description,
  mrs.date_recorded
FROM medical_record_symptoms mrs
JOIN symptoms s ON mrs.symptom_id = s.symptom_id
WHERE mrs.record_id = (
SELECT record_id 
FROM medical_records 
WHERE patient_id = (
SELECT patient_id 
FROM patients 
WHERE user_id = (
SELECT user_id 
FROM users 
WHERE username = 'maja.veljanova')));
  1. System displays allergies with reaction and severity information.
SELECT
  a.name,
  a.description,
  mra.reaction,
  mra.severity
FROM medical_record_allergies mra
JOIN allergies a ON mra.allergy_id = a.allergy_id
WHERE mra.record_id = (
SELECT record_id 
FROM medical_records 
WHERE patient_id = (
SELECT patient_id 
FROM patients 
WHERE user_id = (
SELECT user_id 
FROM users 
WHERE username = 'maja.veljanova')));
  1. System displays lab results linked to the medical record.
SELECT
  lt.test_name,
  lr.results,
  lr.result_date
FROM medical_record_lab_results mrlr
JOIN lab_results lr ON mrlr.result_id = lr.result_id
JOIN lab_tests lt ON lr.test_id = lt.test_id
WHERE mrlr.record_id = (
SELECT record_id 
FROM medical_records 
WHERE patient_id = (
SELECT patient_id 
FROM patients 
WHERE user_id = (
SELECT user_id 
FROM users 
WHERE username = 'maja.veljanova')));
  1. System displays procedures linked to the medical record.
SELECT
  pr.procedure_type,
  pr.description
FROM medical_record_procedures mrp
JOIN procedures pr ON mrp.procedure_id = pr.procedure_id
WHERE mrp.record_id = (
SELECT record_id 
FROM medical_records 
WHERE patient_id = (
SELECT patient_id 
FROM patients 
WHERE user_id = (
SELECT user_id 
FROM users 
WHERE username = 'maja.veljanova')));
  1. System displays prescriptions linked to the medical record.
SELECT
  p.name AS prescription_name,
  pmr.dosage,
  pmr.frequency,
  pmr.duration
FROM prescription_medical_record pmr
JOIN prescriptions p ON pmr.prescription_id = p.prescription_id
WHERE pmr.record_id = (
SELECT record_id 
FROM medical_records 
WHERE patient_id = (
SELECT patient_id 
FROM patients 
WHERE user_id = (
SELECT user_id 
FROM users 
WHERE username = 'maja.veljanova')));
  1. System displays medical reports created for this patient.
SELECT
  rep.report_id,
  rep.content,
  rep.created_date,
  u.first_name AS doctor_first_name,
  u.last_name AS doctor_last_name
FROM medical_reports rep
JOIN doctors d ON rep.doctor_id = d.doctor_id
JOIN users u ON d.user_id = u.user_id
WHERE rep.record_id = (
SELECT record_id 
FROM medical_records 
WHERE patient_id = (
SELECT patient_id 
FROM patients 
WHERE user_id = (
SELECT user_id 
FROM users 
WHERE username = 'maja.veljanova')));
  1. Doctor reviews the complete patient history and proceeds with clinical decisions.
Note: See TracWiki for help on using the wiki.