Техническое задание
Модель данных
Требования ТЗ к основным сущностям платформы и составу их полей.
Раздел 6 ТЗ задаёт основные сущности платформы и их поля.
Требования, а не схема хранения
Это требования ТЗ к составу данных. Физическая схема хранения принятой реализации описана в Хранилищах NEURO CORE.
Люди и организации
Пользователь
id; role; status; email; phone; password_hash;
esia_id (если потребуется); created_at; last_login_atУченик
id; user_id; school_id; class_id; age_group;
personal_data_status; parent_id; consent_statusРодитель
id; user_id; children_ids; consent_historyШкола
id; name; municipality_id; address; contacts; responsible_personМуниципалитет
id; nameКласс
id; school_id; parallel; letter; teacher_idПрофориентация
Профориентационная сессия
id; anonymous_user_id; personal_user_id (nullable); school_id; class_id;
status; started_at; finished_at; quality_score; sabotage_scoreОтвет
id; session_id; question_id; answer_text; answer_type; created_atПрофиль
id; session_id; profile_type; score; descriptionПрофессия
id; name; industry; description; skills;
education_level; employers; routesУчебное заведение
id; name; type; municipality; directions; admission_requirements;
dormitory_available; budget_places; partners; contactsРаботодатель
id; name; industry; description; professions;
events; internships; contacts; visibility_statusКонтент и события
Мероприятие
id; title; type; date_start; date_end; location; online/offline;
organizer_id; capacity; registration_required; consent_required; descriptionКурс
id; title; type; format; age_group; provider;
schedule; materials; teacher_id; statusМатериал
id; title; file_id; type; course_id; visibility; created_byУведомление
id; user_id; type; title; body; status; created_atКомплаенс
Согласие
id; user_id; subject_id; consent_type; version; text_hash;
status; given_at; revoked_at; ip; user_agentЖурнал действий
id; user_id; action; entity_type; entity_id; created_at; ip; metadata