alabuga/backend/app/schemas/rank.py
danilgryaznev e050bd46ef 1 vers
2025-09-21 19:30:55 +02:00

44 lines
920 B
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

"""Схемы рангов."""
from __future__ import annotations
from datetime import datetime
from pydantic import BaseModel
class RankBase(BaseModel):
"""Базовая информация о ранге."""
id: int
title: str
description: str
required_xp: int
class Config:
from_attributes = True
class RankRequirementMission(BaseModel):
"""Обязательная миссия."""
mission_id: int
mission_title: str
class RankRequirementCompetency(BaseModel):
"""Требование к компетенции."""
competency_id: int
competency_name: str
required_level: int
class RankDetailed(RankBase):
"""Полный ранг со списком условий."""
mission_requirements: list[RankRequirementMission]
competency_requirements: list[RankRequirementCompetency]
created_at: datetime
updated_at: datetime