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

42 lines
894 B
Python

from pydantic import BaseModel, Field
from typing import List
from .models import ContractTemplate, ProvisionTemplate, PartyTemplate, ProvisionTemplateReference, DictionaryEntry
from ..core.schemas import Writer
from ..core.models import text_area
class ContractTemplateRead(ContractTemplate):
pass
class ContractTemplateCreate(Writer):
name: str
class ContractTemplateUpdate(BaseModel):
name: str
parties: List[PartyTemplate] = []
variables: List[DictionaryEntry] = Field(
default=[],
format="dictionary",
props={"required": False}
)
provisions: List[ProvisionTemplateReference] = []
class ProvisionTemplateRead(ProvisionTemplate):
pass
class ProvisionTemplateCreate(Writer):
name: str
title: str
body: str = text_area(size=8)
class ProvisionTemplateUpdate(BaseModel):
name: str
title: str
body: str