wiki:UseCase5

Version 4 (modified by 211228, 5 weeks ago) ( diff )

--

Доделување соба

Актери:

  • Студент
  • Вработен

Чекори:

  • Вработениот пристапува до системот
  • Вработениот се најавува на системот
  • Избира студент за доделување на соба
select s.u_id , du.first_name, du.last_name  
from dorm_user du 
join student s on s.u_id = du.u_id 
join studenttookroom str on str.student_id = s.u_id 
where str.student_id = null

  • Проверува дали постои барање од студентот
SELECT rr.request_id, rr.room_number 
FROM RoomRequest rr 
WHERE rr.student_id = ID_SELEKTIRAN_STUDENT
  • Проверува достапност на соба
SELECT r.room_number 
FROM Room r 
WHERE r.room_number = POBARANA_SOBA_BROJ 
  AND r.is_available = TRUE

  • Доколку нема барање или побараната соба е недостапна, доделува по случаен избор
SELECT r.room_number 
FROM Room r 
WHERE r.is_available = TRUE
ORDER BY RANDOM() 
LIMIT 1;
  • Доколку има барање и собата е достапна, ја доделува посакуваната соба
INSERT INTO StudentTookRoom (start_date, end_date, student_id, room_num, block_id) VALUES
('2025-10-05', NULL, 1, 102, 'B'),
  • Студентот добива повратен одговор за собата

Attachments (1)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.