admin felület fejlesztése garázs, előfizeztési csomagok

This commit is contained in:
Roo
2026-06-25 01:58:04 +00:00
parent 80a5d67f79
commit 52011606ff
334 changed files with 46636 additions and 1606 deletions

View File

@@ -170,6 +170,14 @@ class User(Base):
scope_level: Mapped[str] = mapped_column(String(30), server_default="individual")
scope_id: Mapped[Optional[str]] = mapped_column(String(50))
# ── P0: Scope-Based Admin RBAC ──
# Defines the admin's scope type and value for organization-level access control.
# scope_type: "GLOBAL", "REGION", or "SEGMENT"
# scope_value: The specific value (e.g., "Pest_County", "Fleet", "Budapest")
scope_type: Mapped[Optional[str]] = mapped_column(String(30), nullable=True, server_default=None)
scope_value: Mapped[Optional[str]] = mapped_column(String(100), nullable=True, server_default=None)
custom_permissions: Mapped[Any] = mapped_column(JSON, server_default=text("'{}'::jsonb"))
# E-mail történetiség és alternatív e-mailek (MB 2.0.1)

View File

@@ -20,7 +20,11 @@ class SourceType(str, enum.Enum):
api_import = "import"
class ServiceProvider(Base):
""" Közösség által beküldött szolgáltatók (v1.3.1). """
""" Közösség által beküldött szolgáltatók (v1.3.1).
P0 HYBRID VENDOR REFACTOR: Kibővítve atomizált címmezőkkel és
kapcsolatfelvételi adatokkal a quick_add_provider() refactorhoz.
"""
__tablename__ = "service_providers"
__table_args__ = {"schema": "marketplace"}
@@ -29,6 +33,19 @@ class ServiceProvider(Base):
address: Mapped[str] = mapped_column(String, nullable=False)
category: Mapped[Optional[str]] = mapped_column(String)
# === P0 HYBRID VENDOR REFACTOR: Atomizált címmezők ===
city: Mapped[Optional[str]] = mapped_column(String(100), nullable=True)
address_zip: Mapped[Optional[str]] = mapped_column(String(20), nullable=True)
address_street_name: Mapped[Optional[str]] = mapped_column(String(150), nullable=True)
address_street_type: Mapped[Optional[str]] = mapped_column(String(50), nullable=True)
address_house_number: Mapped[Optional[str]] = mapped_column(String(20), nullable=True)
plus_code: Mapped[Optional[str]] = mapped_column(String(20), nullable=True)
# === P0 HYBRID VENDOR REFACTOR: Kapcsolatfelvételi adatok ===
contact_phone: Mapped[Optional[str]] = mapped_column(String(50), nullable=True)
contact_email: Mapped[Optional[str]] = mapped_column(String(255), nullable=True)
website: Mapped[Optional[str]] = mapped_column(String(255), nullable=True)
status: Mapped[ModerationStatus] = mapped_column(
PG_ENUM(ModerationStatus, name="moderation_status", inherit_schema=True),
default=ModerationStatus.pending