wiki:WikiStart/UseCaseModel/ImportantUseCase6

Version 8 (modified by 121232, 4 months ago) ( diff )

--

Внесување на нов час

Актери:

  • Нaјавен студент

Забелешка: Сликите не се конечен изглед на апликацијата.

Чекори во сценариото:

Чекор 1
Одкако корисникот успешно ќе се најави, му се презентира почетната страна на апликацијата.

Чекор 2
Најавениот корисник го кликнува главното(Hamburger) мени лоцирано од левата страна на екранот.

Чекор 3
Најавениот студент ja избира опцијата "Распоред" (евенти со type: class)

Чекор 4
На овој приказ на студентот му се излистуваат сите часови кои ги има внесено за тековниот семестар.

Чекор 5
Најавениот корисник го избира копчето за додавање на нов час.

Чекор 6

На најавениот корисник му се прикажува форма за пополнување за часот кој што сака да го додаде. Во формата на кандидатот му се листаат сите внесени предмети распоредени од најскорашните предмети до најстарите од каде селектира еден од предметите по кој го внесува часот, се листаат и местата кои ги има внесено кандидатот за да избере едно од нив, внесува други потребни податоци во формата како време на почеток на часот и време на завршување на часот, опционално може да внесе опис на часот.

--Листање на сите предмети кои студентот ги има запишано
DECLARE correct_student_id INT;
SET correct_student_id = 11111;

SELECT
    subject_name,
    term_type,
    starting_year,
    finishing_year
FROM 
    subject_at_term
WHERE 
    student_id = correct_student_id
ORDER BY 
    finishing_year DESC; 

--Листање на сите места внесени од студентот
DECLARE correct_student_id INT;
SET correct_student_id = 11111;

SELECT 
	p.building_name,
	p.room_name
FROM place as p
JOIN happens_at_place as hap
ON hap.place_id = p.place_id
JOIN calendar_event as ce
ON hap.calendar_event_id = ce.calendar_event_id
JOIN student_event as se
ON ce.calendar_event_id = se.calendar_event_id
JOIN subject_event as sje
ON sje.calendar_event_id = ce.calendar_event_id
WHERE
	se.student_id = correct_student_id
	OR sje.student_id = correct_student_id

Чекор 7
Кандидатот селектира дали часот е повторлив или ќе се одржи само еднаш и според тоа му се отвараат полиња во формата. Доколку часот е повторлив ќе му се отворат полиња за внесување од кој до кој датум се повторува часот, ден од неделата во кој се повторува часот и на колку недели се повторува часот. Доколку часот не е повторлив се отвара само поле за внесување на датум.

Чекор 8
По внес на сите податоци, најавениот корисник кликнува на опцијата "Потврди".

Чекор 9
Сите податоци се внесуваат во базата.

INSERT INTO calendar_event(calendar_event_id, event_type, event_name, event_description, event_start_time, event_end_time)
VALUES
(123, ‘Class’, ‘Vneseno ime na ispit’, ‘vnesen opis’, ‘12:00:00’, ‘13:00:00’);

--Доколку е неповторлив час
INSERT INTO non_repeating_event(calendar_event_id, event_date)
VALUES
(123, ‘2024-02-05’);

--Доколку е повторлив час
INSERT INTO repeating_event(calendar_event_id, starting_date, ending_date, event_week_day, repeats_every_n_weeks)
VALUES
(123, ‘2024-01-05’, ‘2024-02-15’, ‘WEDNESDAY’, 1);

INSERT INTO subject_event(calendar_event_id, student_id, starting_year, finishing_year, term_type, term_subject_id)
VALUES
(123, 11111, 2023, 2024, ‘Z’, 555);
-- забелешка: вредностите за student_id, starting_year, finishing_year, term_type,
-- term_subject_id се превземаат од селектираниот предмет

INSERT INTO happens_at_place(calendar_event_id, place_id)
VALUES
(123, 3333) --претпоставуваме дека 3333 е селектираното место

Attachments (2)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.