feat(db): миграции групп, курсов, статусов и профиля

This commit is contained in:
2026-10-26 15:47:11 +03:00
parent cde04487e8
commit de9535d35c
14 changed files with 460 additions and 0 deletions

View File

@@ -0,0 +1,38 @@
-- Пост-миграционные проверки. Запускать после миграций и bootstrap курса C.
\pset pager off
\echo '=== 1. Лабы без курса (должно быть 0 перед SET NOT NULL) ==='
SELECT count(*) AS labs_without_course
FROM academic.labs
WHERE course_id IS NULL;
\echo '=== 2. Главы без курса (должно быть 0, если все текущие материалы курсовые) ==='
SELECT count(*) AS chapters_without_course
FROM academic.chapters
WHERE course_id IS NULL;
\echo '=== 3. Курсы (должен быть ровно один курс C) ==='
SELECT id, course_no, title, owner_account_id, status
FROM academic.courses
ORDER BY course_no;
\echo '=== 4. Комментарии без автора (старые записи) ==='
SELECT count(*) AS comments_without_author
FROM progress.grade_comments
WHERE author_account_id IS NULL;
\echo '=== 5. Аккаунты по ролям и статусам ==='
SELECT role, status, count(*) AS accounts
FROM identity.accounts
GROUP BY role, status
ORDER BY role, status;
\echo '=== 6. Группы без полного разбора ==='
SELECT id, name, stream, course, number, degree, enrollment_year
FROM identity.groups
WHERE stream IS NULL
OR course IS NULL
OR number IS NULL
OR degree IS NULL
OR enrollment_year IS NULL
ORDER BY name;