Moving Dictionary Entry to Core

This commit is contained in:
2023-02-10 19:07:55 +01:00
parent 4f15f75c59
commit a92bae665a
3 changed files with 28 additions and 26 deletions

View File

@@ -1,7 +1,7 @@
from datetime import datetime
from beanie import Document
from pydantic import Field, validator
from pydantic import BaseModel, Field, validator
class CrudDocument(Document):
@@ -32,18 +32,25 @@ def text_area(*args, **kwargs):
def RichtextMultiline(*args, **kwargs):
kwargs['props'] = {
"richtext": True,
"multiline": True
}
if 'props' not in kwargs:
kwargs['props'] = {}
kwargs['props']['richtext'] = True
kwargs['props']['multiline'] = True
return Field(*args, **kwargs)
def RichtextSingleline(*args, **kwargs):
kwargs['props'] = {
"richtext": True,
"multiline": False
}
if 'props' not in kwargs:
kwargs['props'] = {}
kwargs['props']['richtext'] = True
kwargs['props']['multiline'] = False
return Field(*args, **kwargs)
class DictionaryEntry(BaseModel):
key: str
value: str = ""

View File

@@ -1,9 +1,9 @@
from typing import List, Dict
from typing import List
from html import unescape
from pydantic import BaseModel, Field, validator
from ..core.models import CrudDocument, RichtextMultiline, RichtextSingleline
from ..core.models import CrudDocument, RichtextMultiline, RichtextSingleline, DictionaryEntry
class PartyTemplate(BaseModel):
@@ -30,7 +30,7 @@ class ProvisionTemplate(CrudDocument):
name: str
title: str = RichtextSingleline()
label: str = ""
body: str = RichtextMultiline(size=8)
body: str = RichtextMultiline()
@validator("label", always=True)
def generate_label(cls, v, values, **kwargs):
@@ -53,13 +53,9 @@ class ProvisionTemplateReference(BaseModel):
)
class DictionaryEntry(BaseModel):
key: str
value: str = ""
class ContractTemplate(CrudDocument):
name: str
title: str
parties: List[PartyTemplate] = []
provisions: List[ProvisionTemplateReference] = Field(
default=[],

View File

@@ -12,10 +12,7 @@ class ContractTemplateRead(ContractTemplate):
class ContractTemplateCreate(Writer):
name: str
class ContractTemplateUpdate(BaseModel):
name: str
title: str
parties: List[PartyTemplate] = []
variables: List[DictionaryEntry] = Field(
default=[],
@@ -25,6 +22,10 @@ class ContractTemplateUpdate(BaseModel):
provisions: List[ProvisionTemplateReference] = []
class ContractTemplateUpdate(ContractTemplateCreate):
pass
class ProvisionTemplateRead(ProvisionTemplate):
pass
@@ -32,10 +33,8 @@ class ProvisionTemplateRead(ProvisionTemplate):
class ProvisionTemplateCreate(Writer):
name: str
title: str = RichtextSingleline()
body: str = RichtextMultiline(size=8)
body: str = RichtextMultiline()
class ProvisionTemplateUpdate(BaseModel):
name: str
title: str
body: str
class ProvisionTemplateUpdate(ProvisionTemplateCreate):
pass