-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcheck_db.mjs
More file actions
49 lines (40 loc) · 1.92 KB
/
Copy pathcheck_db.mjs
File metadata and controls
49 lines (40 loc) · 1.92 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
import { createClient } from '@supabase/supabase-js';
import dotenv from 'dotenv';
dotenv.config({ path: '.env.local' });
const supabase = createClient(
process.env.NEXT_PUBLIC_SUPABASE_URL,
process.env.SUPABASE_SERVICE_ROLE_KEY
);
async function check() {
// Count total leads
const { count: totalLeads } = await supabase.from('leads').select('*', { count: 'exact', head: true });
// Count positive replies
const { count: positiveReplies } = await supabase.from('leads').select('*', { count: 'exact', head: true }).eq('is_positive_reply', true);
// Get status breakdown manually
const statuses = ['contacted', 'replied', 'booked', 'won', 'not_interested'];
const statusBreakdown = {};
for (const status of statuses) {
const { count } = await supabase.from('leads').select('*', { count: 'exact', head: true }).eq('status', status);
statusBreakdown[status] = count;
}
// Count campaigns
const { count: totalCampaigns } = await supabase.from('campaigns').select('*', { count: 'exact', head: true });
// Get campaigns with instantly_campaign_id
const { data: campaigns } = await supabase.from('campaigns').select('id, name, instantly_campaign_id, client_id');
// Get leads with email_reply_count > 0
const { count: leadsWithReplies } = await supabase.from('leads').select('*', { count: 'exact', head: true }).gt('email_reply_count', 0);
console.log('=== Database Stats ===');
console.log('Total Leads:', totalLeads);
console.log('Positive Replies (is_positive_reply=true):', positiveReplies);
console.log('Leads with email_reply_count > 0:', leadsWithReplies);
console.log('\nStatus Breakdown:');
console.log(statusBreakdown);
console.log('\nTotal Campaigns:', totalCampaigns);
console.log('\nCampaigns:');
if (campaigns) {
campaigns.forEach(function(c) {
console.log(' - ' + c.name + ' (instantly_id: ' + (c.instantly_campaign_id || 'none') + ')');
});
}
}
check().catch(console.error);