medical card create base

This commit is contained in:
dderbentsov
2023-07-22 02:14:53 +03:00
parent af7a397355
commit 4ff74c63eb
4 changed files with 46 additions and 7 deletions

View File

@@ -6,7 +6,8 @@ import sqlalchemy as sa
from sqlalchemy.dialects.postgresql import UUID, ARRAY, JSONB
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import relationship, DeclarativeBase
from sqlalchemy.sql.schema import ForeignKey
from sqlalchemy.sql.schema import ForeignKey, UniqueConstraint
class Base(DeclarativeBase):
pass
@@ -26,12 +27,14 @@ class MedicalCard(BaseModel):
health_maps = relationship('HealthMap', back_populates='medical_card')
confidant_persons = sa.Column(ARRAY(UUID(as_uuid=True)))
person_id = sa.Column(UUID(as_uuid=True), nullable=False)
__table_args__ = (UniqueConstraint("person_id", name="person_id"),)
class Checkup(BaseModel):
__tablename__ = 'checkups'
medical_card_id = sa.Column(UUID(as_uuid=True), sa.ForeignKey("medical_cards.id"), nullable=False)
medical_card_id = sa.Column(UUID(as_uuid=True), ForeignKey("medical_cards.id"), nullable=False)
medical_card = relationship('MedicalCard', back_populates='checkups')
medic_id = sa.Column(UUID(as_uuid=True))
claims = sa.Column(ARRAY(sa.String)) # жалобы
@@ -49,5 +52,5 @@ class HealthMap(BaseModel):
comment = sa.Column(sa.Text)
attachments = sa.Column(ARRAY(sa.String))
medical_card_id = sa.Column(UUID(as_uuid=True), sa.ForeignKey("medical_cards.id"), nullable=False)
medical_card_id = sa.Column(UUID(as_uuid=True), ForeignKey("medical_cards.id"), nullable=False)
medical_card = relationship('MedicalCard', back_populates='health_maps')

View File

@@ -1,11 +1,14 @@
from pydantic import BaseModel
from pydantic.types import UUID4
class MedicalCard(BaseModel):
number: str
person_id: str
person_id: UUID4
class Config:
orm_mode = True
class MedicalCardCreate(BaseModel):
person_id: str
number: str
person_id: UUID4