feat: implement V3 Uniform Lookup System with hierarchical overrides and site-based whitelisting
This commit is contained in:
38
app/models/lookup_models.py
Normal file
38
app/models/lookup_models.py
Normal file
@@ -0,0 +1,38 @@
|
||||
from typing import Optional
|
||||
from pydantic import Field
|
||||
from .core_object_models import Core_Std_Obj_Base
|
||||
|
||||
class Lookup_Base(Core_Std_Obj_Base):
|
||||
"""
|
||||
Standardized Baseline for Aether V3 Lookups.
|
||||
Follows the Hierarchical, Identity-Agnostic System.
|
||||
"""
|
||||
id_random: Optional[str] = Field(None, description="Public String ID (ID Vision)")
|
||||
account_id: Optional[int] = Field(None, description="Internal Account ID (NULL = Global)")
|
||||
account_id_random: Optional[str] = Field(None, description="Public Account ID")
|
||||
|
||||
for_type: Optional[str] = Field(None, description="Polymorphic Context Type")
|
||||
for_id: Optional[int] = Field(None, description="Polymorphic Context Internal ID")
|
||||
for_id_random: Optional[str] = Field(None, description="Polymorphic Context Public ID")
|
||||
|
||||
group: Optional[str] = Field(None, description="Primary Business Key / Cluster Key")
|
||||
name: Optional[str] = Field(None, description="Primary Display Label")
|
||||
description: Optional[str] = Field(None, description="Detailed Explanation")
|
||||
|
||||
enable: Optional[bool] = Field(True, description="Active status (Shadowing/Negative Overrides)")
|
||||
hide: Optional[bool] = Field(False, description="UI Visibility flag")
|
||||
sort: Optional[int] = Field(0, description="Ordering priority")
|
||||
|
||||
class Lu_Country_V3_Base(Lookup_Base):
|
||||
alpha_2_code: Optional[str] = None
|
||||
alpha_3_code: Optional[str] = None
|
||||
numeric_code: Optional[str] = None
|
||||
english_short_name: Optional[str] = None
|
||||
|
||||
class Lu_Country_Subdivision_V3_Base(Lookup_Base):
|
||||
country_alpha_2_code: Optional[str] = None
|
||||
code: Optional[str] = None
|
||||
|
||||
class Lu_Time_Zone_V3_Base(Lookup_Base):
|
||||
timezone: Optional[str] = None
|
||||
offset: Optional[str] = None
|
||||
Reference in New Issue
Block a user