generated from coulomb/repo-seed
Implement financial Fabric vNext read model
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
import uuid
|
||||
from datetime import datetime
|
||||
|
||||
from sqlalchemy import Boolean, DateTime, ForeignKey, Integer, String, Text, UniqueConstraint
|
||||
from sqlalchemy import Boolean, DateTime, Float, ForeignKey, Integer, String, Text, UniqueConstraint
|
||||
from sqlalchemy.dialects.postgresql import JSONB, UUID
|
||||
from sqlalchemy.orm import Mapped, mapped_column, relationship
|
||||
|
||||
@@ -26,8 +26,15 @@ class FabricGraphImport(Base, TimestampMixin):
|
||||
source_commit: Mapped[str | None] = mapped_column(String(80), nullable=True, index=True)
|
||||
source_path: Mapped[str | None] = mapped_column(Text, nullable=True)
|
||||
api_version: Mapped[str | None] = mapped_column(String(100), nullable=True)
|
||||
schema_version: Mapped[str | None] = mapped_column(String(100), nullable=True, index=True)
|
||||
export_kind: Mapped[str | None] = mapped_column(String(100), nullable=True, index=True)
|
||||
exported_at: Mapped[datetime | None] = mapped_column(DateTime(timezone=True), nullable=True, index=True)
|
||||
netkingdom_id: Mapped[str | None] = mapped_column(Text, nullable=True)
|
||||
king_actor_id: Mapped[str | None] = mapped_column(Text, nullable=True)
|
||||
actor_count: Mapped[int] = mapped_column(Integer, nullable=False, default=0, server_default="0")
|
||||
fabric_count: Mapped[int] = mapped_column(Integer, nullable=False, default=0, server_default="0")
|
||||
unresolved_count: Mapped[int] = mapped_column(Integer, nullable=False, default=0, server_default="0")
|
||||
compatibility: Mapped[dict] = mapped_column(JSONB, nullable=False, default=dict, server_default="{}")
|
||||
content_hash: Mapped[str] = mapped_column(String(64), nullable=False, index=True)
|
||||
node_count: Mapped[int] = mapped_column(Integer, nullable=False, default=0, server_default="0")
|
||||
edge_count: Mapped[int] = mapped_column(Integer, nullable=False, default=0, server_default="0")
|
||||
@@ -72,6 +79,18 @@ class FabricGraphNode(Base):
|
||||
canon_anchor: Mapped[str | None] = mapped_column(Text, nullable=True)
|
||||
mapping_fit: Mapped[str | None] = mapped_column(String(20), nullable=True, index=True)
|
||||
evidence_state: Mapped[str | None] = mapped_column(String(20), nullable=True, index=True)
|
||||
evidence_review_state: Mapped[str | None] = mapped_column(String(20), nullable=True, index=True)
|
||||
evidence_confidence: Mapped[float | None] = mapped_column(Float, nullable=True)
|
||||
netkingdom_id: Mapped[str | None] = mapped_column(Text, nullable=True)
|
||||
fabric_id: Mapped[str | None] = mapped_column(Text, nullable=True, index=True)
|
||||
subfabric_id: Mapped[str | None] = mapped_column(Text, nullable=True, index=True)
|
||||
environment: Mapped[str | None] = mapped_column(String(100), nullable=True, index=True)
|
||||
deployment_scenario_id: Mapped[str | None] = mapped_column(Text, nullable=True)
|
||||
owner_actor_id: Mapped[str | None] = mapped_column(Text, nullable=True, index=True)
|
||||
owner_role: Mapped[str | None] = mapped_column(String(20), nullable=True, index=True)
|
||||
ownership_resolution: Mapped[str | None] = mapped_column(String(20), nullable=True, index=True)
|
||||
cost_center_id: Mapped[str | None] = mapped_column(Text, nullable=True, index=True)
|
||||
profit_center_id: Mapped[str | None] = mapped_column(Text, nullable=True, index=True)
|
||||
display_only: Mapped[bool] = mapped_column(Boolean, nullable=False, default=False, server_default="false", index=True)
|
||||
attributes: Mapped[dict] = mapped_column(JSONB, nullable=False, default=dict, server_default="{}")
|
||||
raw_json: Mapped[dict] = mapped_column(JSONB, nullable=False, default=dict, server_default="{}")
|
||||
@@ -103,6 +122,26 @@ class FabricGraphEdge(Base):
|
||||
canon_anchor: Mapped[str | None] = mapped_column(Text, nullable=True)
|
||||
mapping_fit: Mapped[str | None] = mapped_column(String(20), nullable=True, index=True)
|
||||
evidence_state: Mapped[str | None] = mapped_column(String(20), nullable=True, index=True)
|
||||
evidence_review_state: Mapped[str | None] = mapped_column(String(20), nullable=True, index=True)
|
||||
evidence_confidence: Mapped[float | None] = mapped_column(Float, nullable=True)
|
||||
relationship_category: Mapped[str | None] = mapped_column(String(30), nullable=True, index=True)
|
||||
provider_owner_actor_id: Mapped[str | None] = mapped_column(Text, nullable=True, index=True)
|
||||
provider_fabric_id: Mapped[str | None] = mapped_column(Text, nullable=True, index=True)
|
||||
provider_subfabric_id: Mapped[str | None] = mapped_column(Text, nullable=True, index=True)
|
||||
consumer_owner_actor_id: Mapped[str | None] = mapped_column(Text, nullable=True, index=True)
|
||||
consumer_fabric_id: Mapped[str | None] = mapped_column(Text, nullable=True, index=True)
|
||||
consumer_subfabric_id: Mapped[str | None] = mapped_column(Text, nullable=True, index=True)
|
||||
crosses_fabric_boundary: Mapped[bool | None] = mapped_column(Boolean, nullable=True, index=True)
|
||||
crosses_subfabric_boundary: Mapped[bool | None] = mapped_column(Boolean, nullable=True, index=True)
|
||||
utility_type: Mapped[str | None] = mapped_column(String(100), nullable=True, index=True)
|
||||
utility_contract_id: Mapped[str | None] = mapped_column(Text, nullable=True)
|
||||
utility_payment_schema_id: Mapped[str | None] = mapped_column(Text, nullable=True, index=True)
|
||||
utility_metering_basis: Mapped[str | None] = mapped_column(String(100), nullable=True)
|
||||
utility_business_model: Mapped[str | None] = mapped_column(String(100), nullable=True, index=True)
|
||||
cost_center_id: Mapped[str | None] = mapped_column(Text, nullable=True, index=True)
|
||||
profit_center_id: Mapped[str | None] = mapped_column(Text, nullable=True, index=True)
|
||||
provider_profit_center_id: Mapped[str | None] = mapped_column(Text, nullable=True, index=True)
|
||||
consumer_cost_center_id: Mapped[str | None] = mapped_column(Text, nullable=True, index=True)
|
||||
display_only: Mapped[bool] = mapped_column(Boolean, nullable=False, default=False, server_default="false", index=True)
|
||||
attributes: Mapped[dict] = mapped_column(JSONB, nullable=False, default=dict, server_default="{}")
|
||||
raw_json: Mapped[dict] = mapped_column(JSONB, nullable=False, default=dict, server_default="{}")
|
||||
|
||||
Reference in New Issue
Block a user