All checks were successful
Build and Deploy / build-and-push (push) Successful in 1m50s
- Removed all hardcoded MOCK_ATTENDANCES, USERS, and TENANTS generators from constants.ts since the system is now production-ready. - Renamed 'summary' to 'title' in the database and across all frontend components for clarity. - Added 'full_summary' to the attendances schema to explicitly store the large, detailed AI analysis texts from n8n. - Updated the 'Resumo da Interação' UI to render the 'full_summary' without adding any artificial filler text. - Localized all dates and times across the dashboard to Brazilian formatting (pt-BR).
84 lines
1.7 KiB
TypeScript
84 lines
1.7 KiB
TypeScript
|
|
export enum FunnelStage {
|
|
NO_CONTACT = 'Sem atendimento',
|
|
IDENTIFICATION = 'Identificação',
|
|
NEGOTIATION = 'Negociação',
|
|
WON = 'Ganhos',
|
|
LOST = 'Perdidos',
|
|
}
|
|
|
|
export interface FunnelStageDef {
|
|
id: string;
|
|
funnel_id: string;
|
|
name: string;
|
|
color_class: string;
|
|
order_index: number;
|
|
}
|
|
|
|
export interface FunnelDef {
|
|
id: string;
|
|
tenant_id: string;
|
|
name: string;
|
|
stages: FunnelStageDef[];
|
|
teamIds: string[];
|
|
}
|
|
|
|
export interface User {
|
|
id: string;
|
|
tenant_id: string;
|
|
name: string;
|
|
email: string;
|
|
slug?: string;
|
|
avatar_url: string;
|
|
role: 'super_admin' | 'admin' | 'manager' | 'agent';
|
|
team_id: string;
|
|
bio?: string;
|
|
status: 'active' | 'inactive';
|
|
sound_enabled?: boolean;
|
|
}
|
|
|
|
export interface Attendance {
|
|
id: string;
|
|
tenant_id: string;
|
|
user_id: string;
|
|
created_at: string; // ISO Date
|
|
title: string;
|
|
full_summary?: string;
|
|
attention_points: string[];
|
|
improvement_points: string[];
|
|
score: number; // 0-100
|
|
first_response_time_min: number;
|
|
handling_time_min: number;
|
|
funnel_stage: string;
|
|
origin: 'WhatsApp' | 'Instagram' | 'Website' | 'LinkedIn' | 'Indicação';
|
|
product_requested: string;
|
|
product_sold?: string;
|
|
converted: boolean;
|
|
}
|
|
|
|
export interface Tenant {
|
|
id: string;
|
|
name: string;
|
|
logo_url?: string;
|
|
// Extended fields for Super Admin
|
|
slug?: string;
|
|
admin_email?: string;
|
|
status?: 'active' | 'inactive' | 'trial';
|
|
user_count?: number;
|
|
attendance_count?: number;
|
|
created_at?: string;
|
|
}
|
|
|
|
export interface DateRange {
|
|
start: Date;
|
|
end: Date;
|
|
}
|
|
|
|
export interface DashboardFilter {
|
|
dateRange: DateRange;
|
|
userId?: string;
|
|
teamId?: string;
|
|
funnelStage?: string;
|
|
origin?: string;
|
|
}
|