VIP medical card detail

This commit is contained in:
dderbentsov
2023-08-02 01:32:01 +03:00
parent 974ae44fd1
commit 276bfa69a1
2 changed files with 17 additions and 3 deletions

View File

@@ -26,5 +26,13 @@ class MedicalCardBase(BaseModel):
class MedicalCards(BaseModel): class MedicalCards(BaseModel):
__root__: List[MedicalCardBase] __root__: List[MedicalCardBase]
class Config:
orm_mode = True
class MedicalCardDetail(BaseModel):
id: UUID4
number: Optional[str]
created_at: Optional[datetime]
class Config: class Config:
orm_mode = True orm_mode = True

View File

@@ -1,9 +1,9 @@
from fastapi import Depends from fastapi import Depends
from fastapi.routing import APIRouter from fastapi.routing import APIRouter
from typing import List from typing import List, Optional
from pydantic.types import UUID4
from medical_info.db import models from medical_info.db import models
from medical_info.db.schemas import MedicalCardResponse, MedicalCardCreate, MedicalCardBase from medical_info.db.schemas import MedicalCardResponse, MedicalCardCreate, MedicalCardBase,MedicalCardDetail
from medical_info.services import MedicalCardService, get_medical_cards_service from medical_info.services import MedicalCardService, get_medical_cards_service
router = APIRouter(prefix='/medical_cards') router = APIRouter(prefix='/medical_cards')
@@ -14,6 +14,12 @@ def list_medical_cards(
): ):
return medical_cards_service.list('sss') return medical_cards_service.list('sss')
@router.get('/{medical_card_id}', response_model=MedicalCardDetail)
async def get_medical_card(
medical_card_id: UUID4, medical_cards_service: MedicalCardService = Depends(get_medical_cards_service)
) -> Optional[models.MedicalCard]:
return medical_cards_service.get(medical_card_id)
@router.post('/', status_code=201, response_model=MedicalCardBase) @router.post('/', status_code=201, response_model=MedicalCardBase)
async def create_medical_card( async def create_medical_card(
medical_card: MedicalCardCreate, medical_cards_service: MedicalCardService = Depends(get_medical_cards_service) medical_card: MedicalCardCreate, medical_cards_service: MedicalCardService = Depends(get_medical_cards_service)