Migrate Event Exhibit and Tracking modules to unified type system

- Added ae_EventExhibit and ae_EventExhibitTracking interfaces to ae_types.ts.
- Replaced local interfaces in ae_events__exhibit.ts with unified imports.
- Standardized Promise return types for all core data loading, creation, and update functions in Exhibit and Tracking logic.
- Integrated triple-ID patterns for lead retrieval and booth management components.
This commit is contained in:
Scott Idem
2026-01-08 14:15:45 -05:00
parent 0749e899b2
commit e138f12c6d
2 changed files with 129 additions and 7 deletions

View File

@@ -40,7 +40,25 @@ export interface ae_Account extends ae_BaseObj {
account_id: string;
account_id_random: string;
account_cfg?: any;
account_cfg?: ae_AccountCfg;
}
/**
* AccountCfg - Configuration settings for an account
*/
export interface ae_AccountCfg {
id: string;
account_id_random: string;
modules_enabled?: any;
default_no_reply_email?: string;
default_no_reply_name?: string;
post_rules?: string;
post_comment_rules?: string;
created_on: string | Date;
updated_on: string | Date;
}
/**
@@ -678,3 +696,104 @@ export interface ae_Organization extends ae_BaseObj {
logo_path?: string;
industry?: number;
}
/**
* EventRegistration - An attendee's registration for an event
*/
export interface ae_EventRegistration extends ae_BaseObj {
event_registration_id: string;
event_registration_id_random: string;
event_id: string;
event_id_random: string;
person_id: string;
person_id_random: string;
organization_id_random?: string;
contact_id_random?: string;
}
/**
* EventExhibit - A booth or display at an event
*/
export interface ae_EventExhibit extends ae_BaseObj {
event_exhibit_id: string;
event_exhibit_id_random: string;
event_id: string;
event_id_random: string;
organization_id_random?: string;
contact_id_random?: string;
person_id_random?: string;
tagline?: string;
logo_path?: string;
staff_limit?: number;
}
/**
* EventExhibitTracking - Lead retrieval or interaction data
*/
export interface ae_EventExhibitTracking extends ae_BaseObj {
event_exhibit_tracking_id: string;
event_exhibit_tracking_id_random: string;
event_id: string;
event_id_random: string;
event_exhibit_id_random: string;
event_person_id_random?: string;
event_badge_id_random?: string;
exhibitor_notes?: string;
responses_json?: any;
}
/**
* EventPerson - An individual linked to an event
*/
export interface ae_EventPerson extends ae_BaseObj {
event_person_id: string;
event_person_id_random: string;
event_id: string;
event_id_random: string;
person_id: string;
person_id_random: string;
event_badge_id_random?: string;
event_registration_id_random?: string;
passcode?: string;
agree_to_tc?: boolean;
}
/**
* EventPersonProfile - Detailed bio/info for an attendee
*/
export interface ae_EventPersonProfile extends ae_BaseObj {
event_person_profile_id: string;
event_person_profile_id_random: string;
event_id: string;
event_id_random: string;
event_person_id_random: string;
tagline?: string;
biography?: string;
website_url?: string;
thumbnail_path?: string;
picture_path?: string;
}
/**
* EventPersonTracking - Attendance and session interaction tracking
*/
export interface ae_EventPersonTracking extends ae_BaseObj {
event_person_id_random: string;
event_id: string;
event_id_random: string;
event_session_id_random?: string;
check_in_out?: boolean;
in_datetime?: string | Date;
out_datetime?: string | Date;
}