diff --git a/backend/app/db/fixmate.db b/backend/app/db/fixmate.db index 611e24c..d1d9927 100644 Binary files a/backend/app/db/fixmate.db and b/backend/app/db/fixmate.db differ diff --git a/backend/app/utils.py b/backend/app/utils.py index 2a9f13d..415a9f5 100644 --- a/backend/app/utils.py +++ b/backend/app/utils.py @@ -99,7 +99,12 @@ def ticket_to_dict(ticket, request=None) -> dict: # Map category to expected values category_mapping = { "Unknown": "other", - "garbage": "trash" + "garbage": "trash", + "broken_streetlight": "streetlight", + "drainage": "drainage", + "pothole": "pothole", + "signage": "signage", + "streetlight": "streetlight" } return { diff --git a/backend/static/uploads/bdb41802-b2a9-4d4b-ad60-5491be7987c8.jpg b/backend/static/uploads/bdb41802-b2a9-4d4b-ad60-5491be7987c8.jpg deleted file mode 100644 index da1166b..0000000 Binary files a/backend/static/uploads/bdb41802-b2a9-4d4b-ad60-5491be7987c8.jpg and /dev/null differ diff --git a/backend/static/uploads/f58deb8d-d49a-4bc8-870e-e0c1d3048ab6.jpg b/backend/static/uploads/f58deb8d-d49a-4bc8-870e-e0c1d3048ab6.jpg new file mode 100644 index 0000000..60ba961 Binary files /dev/null and b/backend/static/uploads/f58deb8d-d49a-4bc8-870e-e0c1d3048ab6.jpg differ diff --git a/dashboard/app.js b/dashboard/app.js index 0e5073d..7c721f5 100644 --- a/dashboard/app.js +++ b/dashboard/app.js @@ -30,13 +30,28 @@ async function fetchTickets(){ } } +// Map backend category names to frontend filter categories +function mapCategoryToFrontend(backendCategory) { + const categoryMapping = { + 'broken_streetlight': 'streetlight', // Backend AI model category + 'garbage': 'trash', // Backend AI model category + // Direct matches (backend and frontend categories are the same) + 'pothole': 'pothole', + 'drainage': 'drainage', + 'signage': 'signage', + 'streetlight': 'streetlight', + 'other': 'other' + }; + return categoryMapping[backendCategory] || backendCategory || 'other'; +} + // Normalize API data to expected format function normalizeReportData(report) { // Backend is already returning data in correct format - // Just ensure all required fields are present + // Just ensure all required fields are present and map categories return { id: report.id, - category: report.category || 'other', + category: mapCategoryToFrontend(report.category), severity: report.severity || 'low', status: report.status || 'submitted', notes: report.notes || '',