Skip to content

Add submission model#655

Merged
TThanos3000 merged 1 commit into
masterfrom
feature/submission-model
Jul 20, 2026
Merged

Add submission model#655
TThanos3000 merged 1 commit into
masterfrom
feature/submission-model

Conversation

@TThanos3000

Copy link
Copy Markdown
Collaborator

Добавляет MVP-модель Submission для будущей сдачи решений по активности.

Что сделано:

  • добавлена модель Submission рядом с Application;
  • Submission связан с Application, Program и submitted_by;
  • Submission не связан с Project и не заменяет Project/Application;
  • добавлены статусы draft, submitted, returned, final, cancelled;
  • добавлены поля title, description, form_data, links, stage_key, version и submitted_at;
  • Stage model не добавлялась: для MVP используется stage_key="main";
  • файлы и ссылки отдельными моделями не добавлялись: links временно хранится в JSONField;
  • добавлены properties is_draft, is_submitted, is_final, can_edit, can_submit;
  • добавлена проверка совпадения Program и владельца Application;
  • запрещено создание Submission для withdrawn/rejected/cancelled Application;
  • добавлены DB constraints:
    • уникальность application + stage_key + version;
    • проверка version >= 1;
  • добавлена миграция 0019_submission;
  • добавлена настройка Submission в Django admin;
  • добавлены model tests.

Важно:

  • Submission API не добавлялся;
  • serializers и views не менялись;
  • React frontend не менялся;
  • legacy endpoints не менялись;
  • Project, PartnerProgramUserProfile, PartnerProgramProject и Application API не менялись;
  • Stage, Team, Evaluation и SubmissionFile не добавлялись;
  • deploy, Docker/nginx, GitHub Actions, env и настройки не менялись;
  • миграция нигде не применялась.

Проверки:

  • py_compile — passed;
  • flake8 — passed;
  • migration check — passed;
  • Submission tests — 21 passed;
  • partner_programs.tests — 128 passed;
  • git diff --check — passed.

@TThanos3000
TThanos3000 merged commit 00f6b78 into master Jul 20, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant