Add RFM segmentation analytics
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 3m12s

This commit is contained in:
Cauê Faleiros
2026-06-12 11:22:57 -03:00
parent 25ab6cd448
commit fe8d0ff105
10 changed files with 1231 additions and 14 deletions

View File

@@ -40,6 +40,44 @@ export interface DashboardAnalytics {
}>;
}
export interface RfmClient {
name: string;
phone: string;
monetary: number;
frequency: number;
quantityPurchased: number;
lastPurchaseDate: string;
recencyDays: number;
recencyScore: 1 | 2 | 3;
frequencyScore: 1 | 2 | 3;
monetaryScore: 1 | 2 | 3;
valueScore: 1 | 2 | 3;
rfmScore: string;
segmentKey: string;
segmentLabel: string;
}
export interface RfmSegment {
key: string;
label: string;
count: number;
totalRevenue: number;
averageRevenue: number;
}
export interface RfmAnalytics {
range: {
start: string | null;
end: string | null;
};
clients: RfmClient[];
segments: RfmSegment[];
matrix: {
recencyScores: number[];
valueScores: number[];
};
}
export type CampaignStatus = 'pending' | 'processing' | 'sent' | 'failed' | 'skipped';
export interface CampaignQueueItem {