Files
cht-lawfirm/back/app/contract/schemas.py

39 lines
854 B
Python

import datetime
from typing import List
from pydantic import Field
from .models import ContractDraft, DraftProvision, Party
from ..entity.models import Entity
from ..core.schemas import Writer
from ..core.models import DictionaryEntry
class ContractDraftRead(ContractDraft):
pass
class ContractDraftCreate(Writer):
name: str
title: str
parties: List[Party]
provisions: List[DraftProvision]
variables: List[DictionaryEntry] = Field(
default=[],
format="dictionary",
)
location: str = ""
date: datetime.date = datetime.date(1, 1, 1)
async def validate_foreign_key(self):
return
for p in self.parties:
p.entity = await Entity.get(p.entity)
if p.entity is None:
raise ValueError
class ContractDraftUpdate(ContractDraftCreate):
pass