Files
OSIT-AE-API-FastAPI/app/object_definitions/journals.py
Scott Idem 6ca79e9a02 chore(api): stabilize SQL core and enhance searchability
- Refactor SQL CRUD to use engine.connect() context managers for thread safety
- Optimize connection pooling in lib_sql_core
- Clean up app/routers/api.py to fix duplicate definitions and OpenAPI KeyError
- Add 'default_qry_str' to searchable_fields for Event, Session, Presentation, Presenter, Badge, and Journal
- Add 'event_location_name' to searchable_fields for Event Session
- Verified 20/20 E2E success via repro_intermittent_errors.py
2026-01-21 15:23:04 -05:00

56 lines
2.0 KiB
Python

from app.models.journal_models import *
from app.models.journal_entry_models import *
journal_obj_li = {
'journal': {
'tbl': 'journal',
'tbl_default': 'v_journal',
'tbl_update': 'journal',
'mdl': Journal_Base,
'mdl_default': Journal_Base,
'mdl_in': Journal_Base,
'mdl_out': Journal_Base,
# Legacy V2 keys:
'table_name': 'v_journal',
'tbl_name_update': 'journal',
'base_name': Journal_Base,
'exp_default': [
'journal_id_random',
'title', 'description',
],
# V3 Search Security:
'searchable_fields': [
'id', 'account_id', 'person_id', 'user_id',
'journal_id_random', 'account_id_random', 'person_id_random', 'user_id_random',
'name', 'short_name', 'summary', 'outline',
'description', 'type_code', 'tags', 'billable', 'enable', 'hide',
'priority', 'sort', 'group', 'notes', 'created_on', 'updated_on', 'default_qry_str'
],
},
'journal_entry': {
'tbl': 'journal_entry',
'tbl_default': 'v_journal_entry',
'tbl_update': 'journal_entry',
'mdl': Journal_Entry_Base,
'mdl_default': Journal_Entry_Base,
'mdl_in': Journal_Entry_Base,
'mdl_out': Journal_Entry_Base,
# Legacy V2 keys:
'table_name': 'v_journal_entry',
'tbl_name_update': 'journal_entry',
'base_name': Journal_Entry_Base,
'exp_default': [
'journal_entry_id_random',
],
# V3 Search Security:
'searchable_fields': [
'id', 'journal_id', 'account_id',
'journal_entry_id_random', 'journal_id_random', 'account_id_random',
'name', 'short_name',
'summary', 'content', 'type_code', 'topic_code', 'category_code',
'tags', 'location', 'billable', 'enable', 'hide', 'priority', 'sort',
'group', 'notes', 'created_on', 'updated_on'
],
},
}