Fix capability filter on leads page
The dropdown sends capability_name values but the query was filtering on the capability_id column. Add capability_name filter support to getLeads and use it from the page. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -49,7 +49,7 @@ export default function LeadsPage() {
|
|||||||
const filters: Record<string, unknown> = {};
|
const filters: Record<string, unknown> = {};
|
||||||
if (statusFilter) filters.status = statusFilter;
|
if (statusFilter) filters.status = statusFilter;
|
||||||
if (urgencyFilter) filters.urgency_level = urgencyFilter;
|
if (urgencyFilter) filters.urgency_level = urgencyFilter;
|
||||||
if (capabilityFilter) filters.capability_id = capabilityFilter;
|
if (capabilityFilter) filters.capability_name = capabilityFilter;
|
||||||
filters.sort = sortBy === 'date' ? 'created_at' : sortBy === 'account' ? 'account' : undefined;
|
filters.sort = sortBy === 'date' ? 'created_at' : sortBy === 'account' ? 'account' : undefined;
|
||||||
const res = await api('leads.list', filters);
|
const res = await api('leads.list', filters);
|
||||||
setLeads(res.data || []);
|
setLeads(res.data || []);
|
||||||
|
|||||||
@@ -1151,6 +1151,7 @@ export function getLeads(filters: {
|
|||||||
urgency_level?: string;
|
urgency_level?: string;
|
||||||
priority?: string;
|
priority?: string;
|
||||||
capability_id?: string;
|
capability_id?: string;
|
||||||
|
capability_name?: string;
|
||||||
limit?: number;
|
limit?: number;
|
||||||
offset?: number;
|
offset?: number;
|
||||||
sort?: string;
|
sort?: string;
|
||||||
@@ -1164,6 +1165,7 @@ export function getLeads(filters: {
|
|||||||
if (filters.urgency_level) { where.push('urgency_level = @urgency_level'); params.urgency_level = filters.urgency_level; }
|
if (filters.urgency_level) { where.push('urgency_level = @urgency_level'); params.urgency_level = filters.urgency_level; }
|
||||||
if (filters.priority) { where.push('priority = @priority'); params.priority = filters.priority; }
|
if (filters.priority) { where.push('priority = @priority'); params.priority = filters.priority; }
|
||||||
if (filters.capability_id) { where.push('capability_id = @capability_id'); params.capability_id = filters.capability_id; }
|
if (filters.capability_id) { where.push('capability_id = @capability_id'); params.capability_id = filters.capability_id; }
|
||||||
|
if (filters.capability_name) { where.push('capability_name = @capability_name'); params.capability_name = filters.capability_name; }
|
||||||
|
|
||||||
const whereClause = where.length > 0 ? 'WHERE ' + where.join(' AND ') : '';
|
const whereClause = where.length > 0 ? 'WHERE ' + where.join(' AND ') : '';
|
||||||
const sortCol = filters.sort === 'created_at' ? 'created_at DESC' : filters.sort === 'account' ? 'Account_Name ASC' : 'composite_score DESC';
|
const sortCol = filters.sort === 'created_at' ? 'created_at DESC' : filters.sort === 'account' ? 'Account_Name ASC' : 'composite_score DESC';
|
||||||
|
|||||||
Reference in New Issue
Block a user