Changes between Initial Version and Version 1 of UseCase09


Ignore:
Timestamp:
06/12/26 18:11:48 (9 days ago)
Author:
236021
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • UseCase09

    v1 v1  
     1= UseCase09 - Doctor Records Procedure Outcome =
     2
     3== Initiating Actor - `Doctor` ==
     4
     5== Description ==
     6After performing a procedure, a doctor records the outcome. The system stores the procedure result, links it to the patient's medical record, and updates the performed procedure notes.
     7
     8== Scenario ==
     9
     101. Doctor navigates to pending procedures for a patient.
     11
     12{{{
     13#!sql
     14SELECT
     15  pp.performed_id,
     16  pr.procedure_type,
     17  pr.description,
     18  pp.procedure_date,
     19  pp.notes
     20FROM performed_procedures pp
     21JOIN procedures pr ON pp.procedure_id = pr.procedure_id
     22WHERE pp.patient_id = (
     23SELECT patient_id
     24FROM users
     25WHERE username = 'maja.veljanova')
     26  AND pp.doctor_id = (
     27SELECT doctor_id
     28FROM users
     29WHERE username = 'elena.kirova');
     30}}}
     31
     322. Doctor selects a performed procedure to record the outcome for.
     33
     34{{{
     35#!sql
     36SELECT
     37  pp.performed_id,
     38  pr.procedure_type,
     39  pr.description,
     40  u_p.first_name AS patient_first_name,
     41  u_p.last_name AS patient_last_name,
     42  pp.procedure_date,
     43  pp.notes
     44FROM performed_procedures pp
     45JOIN procedures pr ON pp.procedure_id = pr.procedure_id
     46JOIN patients p ON pp.patient_id = p.patient_id
     47JOIN users u_p ON p.patient_id = u_p.patient_id
     48WHERE pp.performed_id = (
     49SELECT MAX(performed_id)
     50FROM performed_procedures
     51WHERE doctor_id = (
     52SELECT doctor_id
     53FROM users
     54WHERE username = 'elena.kirova'));
     55}}}
     56
     573. Doctor enters the outcome notes and submits.
     58
     59{{{
     60#!sql
     61UPDATE performed_procedures
     62SET notes = 'ECG completed successfully. Heart rhythm normal, no arrhythmias detected.'
     63WHERE performed_id = (SELECT MAX(performed_id) FROM performed_procedures
     64  WHERE doctor_id = (SELECT doctor_id FROM users WHERE username = 'elena.kirova'));
     65}}}
     66
     674. System stores the detailed procedure result.
     68
     69{{{
     70#!sql
     71INSERT INTO procedure_results (procedure_id, result_description, result_date)
     72VALUES (
     73  (SELECT procedure_id FROM procedures WHERE procedure_type = 'ECG'),
     74  'Normal sinus rhythm. Heart rate 72 bpm. No ST elevation.',
     75  '2026-06-10'
     76)
     77RETURNING result_id;
     78}}}
     79
     805. System links the procedure result to the patient's medical record.
     81
     82{{{
     83#!sql
     84INSERT INTO medical_record_procedure_results (record_id, result_id)
     85VALUES (
     86  (SELECT record_id FROM medical_records WHERE patient_id = (
     87SELECT patient_id
     88FROM users
     89WHERE username = 'maja.veljanova')),
     90  (SELECT MAX(result_id)
     91FROM procedure_results)
     92);
     93}}}
     94
     956. System confirms and displays all procedure results on the patient's medical record.
     96
     97{{{
     98#!sql
     99SELECT
     100  p.procedure_type,
     101  pr.result_description,
     102  pr.result_date
     103FROM medical_record_procedure_results mpr
     104JOIN procedure_results pr ON mpr.result_id = pr.result_id
     105JOIN procedures p ON pr.procedure_id = p.procedure_id
     106WHERE mpr.record_id = (
     107SELECT record_id
     108FROM medical_records
     109WHERE patient_id = (
     110SELECT patient_id
     111FROM users
     112WHERE username = 'maja.veljanova'));
     113}}}