diff --git a/.agent/rules/main.md b/.agent/rules/main.md index b5d778e..e2209bc 100644 --- a/.agent/rules/main.md +++ b/.agent/rules/main.md @@ -96,10 +96,13 @@ trigger: always_on ## Основные сущности базы данных (Data Entities) - **Users**: Хранение пользователей и их ролей (Администратор, Преподаватель, Студент) для управления доступом. -- **Groups**: Группы студентов, их привязка к формам обучения. (Могут делиться на **подгруппы** для лабораторных и практик). +- **Education_Forms**: Формы обучения (Бакалавриат, Магистратура и т.д.). +- **Student_Groups**: Группы студентов, их привязка к формам обучения `education_forms(id)`. +- **Subgroups**: Подгруппы студентов конкретной группы `group_id` для лабораторных и практик. - **Equipments**: Справочник оборудования. -- **Classrooms**: Аудиторный фонд (название, вместимость, статус доступности, привязанный список оборудования Equipments). +- **Classrooms**: Аудиторный фонд (название, вместимость, статус доступности). +- **Classroom_Equipments**: Связующая таблица (Many-to-Many), определяющая какое оборудование находится в аудитории. - **Subjects**: Предметы/Дисциплины (Высшая математика, Физика, Базы данных и т.д.). -- **Teacher_Subjects**: Связующая таблица (Many-to-Many), определяющая, какие дисциплины ведет конкретный преподаватель. +- **Teacher_Subjects**: Связующая таблица (Many-to-Many), определяющая, какие дисциплины ведет конкретный преподаватель `users(id)`. - **Lesson_Types**: Типы занятий для валидации (Лекция, Практика, Лабораторная работа). -- **Lessons / Schedules**: Сами занятия (пары). Каждая запись связывает преподавателя, аудиторию, группу (или подгруппу), предмет (`subject_id`), тип занятия (`lesson_type`) и конкретное время. \ No newline at end of file +- **Lessons / Schedules**: Сами занятия (пары). Каждая запись связывает преподавателя, аудиторию, группу (и/или подгруппу), предмет (`subject_id`), тип занятия (`lesson_type_id`), день недели, четность недели и конкретное время (start_time, end_time). \ No newline at end of file