Changes between Initial Version and Version 1 of WikiStart/UseCaseModel/ImportantUseCase5


Ignore:
Timestamp:
01/29/24 15:38:23 (10 months ago)
Author:
121232
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • WikiStart/UseCaseModel/ImportantUseCase5

    v1 v1  
     1== **[[span(style=color: #BF1B1B, Внесување на нов испит )]]**
     2
     3[[span(style=color: #BF1B1B, **Актери:**)]]
     4
     5• **Нaјавен** студент
     6
     7**Забелешка: Сликите не се конечен изглед на апликацијата.**
     8
     9[[span(style=color: #BF1B1B,** Чекори во сценариото:**)]]
     10
     11
     12[[span(style=color: #BF1B1B, **Чекор 1**)]]\\
     13Одкако корисникот успешно ќе се најави, му се презентира **почетната страна на апликацијата**
     14
     15[[span(style=color: #BF1B1B, **Чекор 2**)]]\\
     16Најавениот корисник го кликнува главното(Hambuerger) мени лоцирано од левата страна на екранот.
     17
     18[[span(style=color: #BF1B1B, **Чекор 3**)]]\\
     19Најавениот студент се навигира до приказот на испити.
     20
     21[[span(style=color: #BF1B1B, **Чекор 4**)]]\\
     22На овој приказ на студентот му се излистуваат сите испити кои ги има внесено, а се'уште немаат изминато (по хронолошки редослед).
     23
     24
     25{{{
     26DECLARE correct_student_id INT;
     27SET correct_student_id = 11111;
     28
     29SELECT
     30    sat.subject_name,
     31    ce.event_name,
     32    ce.event_type,
     33    nre.event_date,
     34    ce.event_start_time,
     35    ce.event_end_time
     36FROM
     37    non_repeating_events AS nre
     38JOIN
     39    calendar_event AS ce ON nre.calendar_event_id = ce.calendar_event_id
     40JOIN
     41    subject_event AS sbe ON ce.calendar_event_id = sbe.calendar_event_id
     42JOIN
     43    subject_at_term AS sat ON sat.term_subject_id = sbe.term_subject_id
     44        AND sat.term_type = sbe.term_type
     45        AND sat.starting_year = sbe.starting_year
     46        AND sat.finishing_year = sbe.finishing_year
     47        AND sat.student_id = sbe.student_id -- Fixed alias from se to sbe
     48WHERE
     49    nre.event_date >= CURRENT_DATE
     50    AND ce.event_type = 'Exam'
     51    AND sbe.student_id = correct_student_id
     52ORDER BY
     53    nre.event_date,
     54    ce.event_start_time;
     55
     56}}}
     57
     58[[span(style=color: #BF1B1B, **Чекор 5**)]]\\
     59
     60Најавениот корисник го избира копчето за додавање на нов испит ("Додади нов").
     61
     62
     63[[span(style=color: #BF1B1B, **Чекор 6**)]]\\
     64На најавениот корисник му се прикажува форма за пополнување за испитот кој што сака да го додаде.
     65
     66[[span(style=color: #BF1B1B, **Чекор 7**)]]\\
     67Од листата на внесени предмети, најавениот корисник го избира предметот за кој се однесува испитот кој сака да го внесе (предметите се излистани по редослед на внесување).
     68
     69{{{
     70--Листање на сите предмети кои студентот ги има запишано
     71DECLARE correct_student_id INT;
     72SET correct_student_id = 11111;
     73
     74SELECT
     75    subject_name,
     76    term_type,
     77    starting_year,
     78    finishing_year
     79FROM
     80    subject_at_term
     81WHERE
     82    student_id = correct_student_id
     83ORDER BY
     84    finishing_year DESC;
     85--Листање на сите места внесени од студентот
     86DECLARE correct_student_id INT;
     87SET correct_student_id = 11111;
     88
     89SELECT
     90        p.building_name,
     91        p.room_name
     92FROM place as p
     93JOIN happens_at_place as hap
     94ON hap.place_id = p.place_id
     95JOIN calendar_event as ce
     96ON hap.calendar_event_id = ce.calendar_event_id
     97JOIN student_event as se
     98ON ce.calendar_event_id = se.calendar_event_id
     99JOIN subject_event as sje
     100ON sje.calendar_event_id = ce.calendar_event_id
     101WHERE
     102        se.student_id = correct_student_id
     103        OR sje.student_id = correct_student_id
     104
     105}}}
     106
     107[[span(style=color: #BF1B1B, **Чекор 8**)]]\\
     108Најавениот корисник дополнително внесува и име на испит, датум на полагање на испитот, време на почеток на испитот и време на завршување на испитот. Опционално може да внесе и опис на испитот.
     109
     110
     111[[span(style=color: #BF1B1B, **Чекор 9**)]]\\
     112По клик на копчето потврди, сите нововнесени податоци се внесуваат во базата.
     113
     114
     115{{{
     116INSERT INTO calendar_event(calendar_event_id, event_type, event_name, event_description, event_start_time, event_end_time)
     117VALUES
     118(123, ‘Exam’, ‘Vneseno ime na ispit’, ‘vnesen opis’, ‘12:00:00’, ‘13:00:00’);
     119
     120INSERT INTO non_repeating_event(calendar_event_id, event_date)
     121VALUES
     122(123, ‘2024-02-05’);
     123
     124INSERT INTO subject_event(calendar_event_id, student_id, starting_year, finishing_year, term_type, term_subject_id)
     125VALUES
     126(123, 11111, 2023, 2024, ‘Z’, 555);
     127-- забелешка: вредностите за student_id, starting_year, finishing_year, term_type,
     128-- term_subject_id се превземаат од селектираниот предмет
     129
     130INSERT INTO happens_at_place(calendar_event_id, place_id)
     131VALUES
     132(123, 3333) --претпоставуваме дека 3333 е селектираното место
     133
     134}}}
     135
     136
     137
     138
     139
     140
     141
     142
     143