from __future__ import annotations

from typing import Any

from .pillar_construction import ConstructionPillarMixin
from .pillar_logistics import LogisticsPillarMixin
from .pillar_materials import MaterialsPillarMixin
from .pillar_rental import RentalPillarMixin


class FourPillarsService(
    ConstructionPillarMixin,
    LogisticsPillarMixin,
    RentalPillarMixin,
    MaterialsPillarMixin,
):
    """Enterprise domain service executing deep operational logic across all 4 Dinh Son Business Pillars."""

    def __init__(self, postgres_client: Any | None = None) -> None:
        if postgres_client is None:
            from app.core.postgres.project_crud_repository import ProjectCrudRepository
            postgres_client = ProjectCrudRepository()
        self.postgres_client = postgres_client

