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

42 lines
953 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 RichtextMultiline, RichtextSingleline
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 = RichtextSingleline()
body: str = RichtextMultiline(size=8)
class ProvisionTemplateUpdate(BaseModel):
name: str
title: str
body: str