| Version 2 (modified by , 2 weeks ago) ( diff ) |
|---|
UC003 - Приказ на личен профил
Иницијален актер: Студент
Други актери: -
Студентот сака да ги прегледа своите лични податоци, контакт податоците, податоците за средното образование и матичните податоци за студирањето, сите на едно место.
Сценарио
- Студентот избира Профил од менито.
- Системот го чита идентификаторот од пристапниот токен и ги презема податоците на корисникот заедно со контакт податоците и средното образование. Врските се 1:1, но се користи LEFT JOIN бидејќи професорите и администраторите немаат такви записи.
SELECT u.id, u.name, u.surname, u.embg, u."index", u.bday, u.email, u.quota, u.enrollment_year, u.created_at, c.city, c.municipality, c.address, c.number, c.microsoft_email, h.gpa, h.type AS high_school_type FROM project.users u LEFT JOIN project.contact c ON c.user_id = u.id LEFT JOIN project.high_school h ON h.user_id = u.id WHERE u.id = 1;
- Системот ја презема тековната студиска програма. Програмата не е атрибут на корисникот, туку се добива од последниот запишан семестар.
SELECT m.name AS major, a.year, a.type FROM project.enrolled_semesters es JOIN project.major m ON m.id = es.major_id JOIN project.active_semesters a ON a.id = es.semester_id WHERE es.user_id = 1 ORDER BY a.year DESC, (a.type = 'summer') DESC LIMIT 1;
- Системот ги прикажува податоците групирани во делови: лични податоци, податоци за раѓање, претходно образование, податоци за запишување и контакт.
Забелешки
- Лозинката никогаш не се презема ниту прикажува.
- Ако студентот нема ниту еден запишан семестар, барањето во чекор 3 не враќа ред и полето за студиска програма останува празно.
Note:
See TracWiki
for help on using the wiki.
