feat(v3): robust search wildcards, smart status filtering, and fixed ID population

This commit is contained in:
Scott Idem
2026-01-06 15:54:31 -05:00
parent a42f32acf4
commit 45f6303219
19 changed files with 452 additions and 279 deletions

View File

@@ -49,6 +49,8 @@ class Organization_Base(BaseModel):
thumbnail_path: Optional[str]
thumbnail_bg_color: Optional[str]
enable: Optional[bool]
hide: Optional[bool]
priority: Optional[int]
sort: Optional[int]
group: Optional[str]
@@ -89,8 +91,16 @@ class Organization_Base(BaseModel):
log.setLevel(logging.WARNING)
log.debug(locals())
if values['account_id_random']:
return redis_lookup_id_random(record_id_random=values['account_id_random'], table_name='account')
if isinstance(v, int) and v > 0: return v
elif id_random := values.get('account_id_random'):
return redis_lookup_id_random(record_id_random=id_random, table_name='account')
return None
@validator('account_id_random', always=True)
def account_id_random_lookup(cls, v, values, **kwargs):
if isinstance(v, str) and len(v) >= 11: return v
elif account_id := values.get('account_id'):
return get_id_random(record_id=account_id, table_name='account')
return None
@validator('contact_id', always=True)