From eea444409e4a8e5648157b2249caa47e1ca6a10b Mon Sep 17 00:00:00 2001 From: Zuev Date: Fri, 20 Feb 2026 02:59:10 +0300 Subject: [PATCH] docs(rules): update database rules to match init.sql --- .agent/rules/main.md | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) 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