Files
towercontrol/src/app/api/tasks/[id]/checkboxes/route.ts
Julien Froidefond 8cb0dcf3af feat(Task): implement user ownership for tasks and enhance related services
- Added ownerId field to Task model to associate tasks with users.
- Updated TaskService methods to enforce user ownership in task operations.
- Enhanced API routes to include user authentication and ownership checks.
- Modified DailyService and analytics services to filter tasks by user.
- Integrated user session handling in various components for personalized task management.
2025-10-10 11:36:10 +02:00

40 lines
1.1 KiB
TypeScript

import { NextRequest, NextResponse } from 'next/server';
import { tasksService } from '@/services/task-management/tasks';
import { getServerSession } from 'next-auth';
import { authOptions } from '@/lib/auth';
export async function GET(
request: NextRequest,
{ params }: { params: Promise<{ id: string }> }
) {
try {
const { id } = await params;
if (!id) {
return NextResponse.json(
{ error: 'ID de tâche requis' },
{ status: 400 }
);
}
// Vérifier l'authentification
const session = await getServerSession(authOptions);
if (!session?.user?.id) {
return NextResponse.json({ error: 'Non authentifié' }, { status: 401 });
}
const checkboxes = await tasksService.getTaskRelatedCheckboxes(
session.user.id,
id
);
return NextResponse.json({ data: checkboxes });
} catch (error) {
console.error('Erreur lors de la récupération des checkboxes:', error);
return NextResponse.json(
{ error: 'Erreur lors de la récupération des checkboxes' },
{ status: 500 }
);
}
}