Fix sorting logic in moderation queue

This commit is contained in:
gpt-engineer-app[bot]
2025-10-13 12:33:59 +00:00
parent 284f778fc6
commit 9a2e7ac43e

View File

@@ -238,25 +238,26 @@ export function useModerationQueueManager(config: ModerationQueueManagerConfig):
item_data,
status
)
`,
)
// Apply user-selected sort configuration
const sortColumn = getSortColumn(sort.field);
const sortAscending = sort.direction === 'asc';
`
);
console.log('[Query] Applying sort:', {
uiField: sort.field,
dbColumn: sortColumn,
direction: sort.direction,
ascending: sortAscending
});
// Apply user-selected sort configuration
const sortColumn = getSortColumn(sort.field);
const sortAscending = sort.direction === 'asc';
submissionsQuery = submissionsQuery.order(sortColumn, { ascending: sortAscending });
console.log('[Query] Applying sort:', {
uiField: sort.field,
dbColumn: sortColumn,
direction: sort.direction,
ascending: sortAscending
});
// Secondary sort by created_at for consistency when primary sort has ties
if (sortColumn !== 'created_at') {
submissionsQuery = submissionsQuery.order('created_at', { ascending: true });
}
submissionsQuery = submissionsQuery.order(sortColumn, { ascending: sortAscending });
// Secondary sort by created_at for consistency when primary sort has ties
if (sortColumn !== 'created_at') {
submissionsQuery = submissionsQuery.order('created_at', { ascending: true });
}
// Apply tab-based status filtering
const tab = filters.activeTab;
@@ -307,6 +308,21 @@ export function useModerationQueueManager(config: ModerationQueueManagerConfig):
const endIndex = pagination.endIndex;
submissionsQuery = submissionsQuery.range(startIndex, endIndex);
// Log the final query for debugging
console.log('[Query] Final query about to execute:', {
sortApplied: sortColumn,
sortDirection: sortAscending ? 'ASC' : 'DESC',
filtersApplied: {
tab: filters.activeTab,
status: filters.debouncedStatusFilter,
entity: filters.debouncedEntityFilter,
},
pagination: {
startIndex,
endIndex
}
});
const { data: submissions, error: submissionsError } = await submissionsQuery;
if (submissionsError) throw submissionsError;
@@ -485,7 +501,7 @@ export function useModerationQueueManager(config: ModerationQueueManagerConfig):
setLoadingState("ready");
}
},
[user, isAdmin, isSuperuser, filters, pagination, profileCache, entityCache, toast],
[user, isAdmin, isSuperuser, filters, pagination, profileCache, entityCache, toast, sort],
);
// Store fetchItems in ref to avoid re-creating visibility listener