initial commit
This commit is contained in:
9
back/app/template/__init__.py
Normal file
9
back/app/template/__init__.py
Normal file
@@ -0,0 +1,9 @@
|
||||
from fastapi import APIRouter
|
||||
|
||||
from .routes_contract import router as contract_router
|
||||
from .routes_clause import router as clause_router
|
||||
|
||||
template_router = APIRouter()
|
||||
|
||||
template_router.include_router(contract_router, prefix="/contract", tags=["template"], )
|
||||
template_router.include_router(clause_router, prefix="/clause", tags=["template"], )
|
||||
BIN
back/app/template/__pycache__/__init__.cpython-310.pyc
Normal file
BIN
back/app/template/__pycache__/__init__.cpython-310.pyc
Normal file
Binary file not shown.
BIN
back/app/template/__pycache__/models.cpython-310.pyc
Normal file
BIN
back/app/template/__pycache__/models.cpython-310.pyc
Normal file
Binary file not shown.
BIN
back/app/template/__pycache__/routes_clause.cpython-310.pyc
Normal file
BIN
back/app/template/__pycache__/routes_clause.cpython-310.pyc
Normal file
Binary file not shown.
BIN
back/app/template/__pycache__/routes_contract.cpython-310.pyc
Normal file
BIN
back/app/template/__pycache__/routes_contract.cpython-310.pyc
Normal file
Binary file not shown.
BIN
back/app/template/__pycache__/schemas.cpython-310.pyc
Normal file
BIN
back/app/template/__pycache__/schemas.cpython-310.pyc
Normal file
Binary file not shown.
34
back/app/template/models.py
Normal file
34
back/app/template/models.py
Normal file
@@ -0,0 +1,34 @@
|
||||
from datetime import datetime
|
||||
from typing import List
|
||||
from enum import Enum
|
||||
|
||||
from pydantic import BaseModel, Field
|
||||
from beanie import Document
|
||||
|
||||
|
||||
class ContractType(str, Enum):
|
||||
individual = 'individual'
|
||||
corporation = 'corporation'
|
||||
|
||||
|
||||
class PartyTemplate(BaseModel):
|
||||
entity_id: str
|
||||
part: str
|
||||
name: str
|
||||
address: str
|
||||
|
||||
|
||||
class ClauseTemplate(Document):
|
||||
name: str
|
||||
body: str
|
||||
created_at: datetime = Field(default=datetime.utcnow(), nullable=False)
|
||||
updated_at: datetime = Field(default_factory=datetime.utcnow, nullable=False)
|
||||
|
||||
|
||||
class ContractTemplate(Document):
|
||||
id: str
|
||||
type: ContractType
|
||||
parties: List[PartyTemplate]
|
||||
clauses: List[ClauseTemplate]
|
||||
created_at: datetime = Field(default=datetime.utcnow(), nullable=False)
|
||||
updated_at: datetime = Field(default_factory=datetime.utcnow, nullable=False)
|
||||
5
back/app/template/routes_clause.py
Normal file
5
back/app/template/routes_clause.py
Normal file
@@ -0,0 +1,5 @@
|
||||
from ..core.routes import get_crud_router
|
||||
from .models import ClauseTemplate
|
||||
from .schemas import ClauseTemplateCreate, ClauseTemplateRead, ClauseTemplateUpdate
|
||||
|
||||
router = get_crud_router(ClauseTemplate, ClauseTemplateCreate, ClauseTemplateRead, ClauseTemplateUpdate)
|
||||
5
back/app/template/routes_contract.py
Normal file
5
back/app/template/routes_contract.py
Normal file
@@ -0,0 +1,5 @@
|
||||
from ..core.routes import get_crud_router
|
||||
from .models import ContractTemplate
|
||||
from .schemas import ContractTemplateCreate, ContractTemplateRead, ContractTemplateUpdate
|
||||
|
||||
router = get_crud_router(ContractTemplate, ContractTemplateCreate, ContractTemplateRead, ContractTemplateUpdate)
|
||||
32
back/app/template/schemas.py
Normal file
32
back/app/template/schemas.py
Normal file
@@ -0,0 +1,32 @@
|
||||
import uuid
|
||||
|
||||
from datetime import datetime
|
||||
from pydantic import BaseModel
|
||||
|
||||
from .models import ContractTemplate, ClauseTemplate
|
||||
|
||||
|
||||
class ContractTemplateRead(ContractTemplate):
|
||||
pass
|
||||
|
||||
|
||||
class ContractTemplateCreate(BaseModel):
|
||||
name: str
|
||||
|
||||
|
||||
class ContractTemplateUpdate(BaseModel):
|
||||
name: str
|
||||
|
||||
|
||||
class ClauseTemplateRead(ClauseTemplate):
|
||||
pass
|
||||
|
||||
|
||||
class ClauseTemplateCreate(BaseModel):
|
||||
name: str
|
||||
body: str
|
||||
|
||||
|
||||
class ClauseTemplateUpdate(BaseModel):
|
||||
name: str
|
||||
body: str
|
||||
Reference in New Issue
Block a user