File size: 2,758 Bytes
b4f2238 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 | """Module for documents query."""
from __future__ import annotations
from typing import TYPE_CHECKING, cast
if TYPE_CHECKING:
from apps.core.protocols import (
IDocumentService,
IDocumentTemplateBindingService,
IEvidenceListPlaceholderService,
IEvidenceQueryService,
)
def build_folder_template_service() -> None:
from apps.documents.services.folder_template.command_service import FolderTemplateCommandService
from apps.documents.services.folder_template.id_service import FolderTemplateIdService
from apps.documents.services.folder_template.query_service import FolderTemplateQueryService
from apps.documents.services.folder_template.repo import FolderTemplateRepo
from apps.documents.services.folder_template.structure_rules import FolderTemplateStructureRules
from apps.documents.services.folder_template.validation_service import FolderTemplateValidationService
from apps.documents.services.template.folder_service import FolderTemplateService
from apps.documents.usecases.folder_template.folder_template_usecases import FolderTemplateUsecases
id_service = FolderTemplateIdService()
repo = FolderTemplateRepo()
validation_service = FolderTemplateValidationService()
structure_rules = FolderTemplateStructureRules(id_service=id_service)
command_service = FolderTemplateCommandService(
repo=repo,
validation_service=validation_service,
structure_rules=structure_rules,
)
query_service = FolderTemplateQueryService(repo=repo, id_service=id_service)
return FolderTemplateService( # type: ignore[return-value]
usecases=FolderTemplateUsecases(
command_service=command_service,
query_service=query_service,
validation_service=validation_service,
structure_rules=structure_rules,
)
)
def build_document_service() -> IDocumentService:
from apps.documents.services.document_service_adapter import DocumentServiceAdapter
return DocumentServiceAdapter()
def build_document_template_binding_service() -> IDocumentTemplateBindingService:
from apps.documents.services.template.contract_template.binding_service import DocumentTemplateBindingService
return DocumentTemplateBindingService()
def build_evidence_query_service() -> IEvidenceQueryService:
from apps.evidence.services.evidence_query_service import EvidenceQueryService
return EvidenceQueryService()
def build_evidence_list_placeholder_service() -> IEvidenceListPlaceholderService:
from apps.evidence.services.evidence_list_placeholder_service import EvidenceListPlaceholderService
return cast(IEvidenceListPlaceholderService, EvidenceListPlaceholderService())
|