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.
This commit is contained in:
@@ -34,6 +34,7 @@ export class DeadlineAnalyticsService {
|
||||
* Analyse les tâches selon leurs échéances
|
||||
*/
|
||||
static async getDeadlineMetrics(
|
||||
userId: string,
|
||||
sources?: string[]
|
||||
): Promise<DeadlineMetrics> {
|
||||
try {
|
||||
@@ -42,6 +43,7 @@ export class DeadlineAnalyticsService {
|
||||
// Récupérer toutes les tâches non terminées avec échéance
|
||||
const dbTasks = await prisma.task.findMany({
|
||||
where: {
|
||||
ownerId: userId,
|
||||
dueDate: {
|
||||
not: null,
|
||||
},
|
||||
@@ -137,9 +139,10 @@ export class DeadlineAnalyticsService {
|
||||
* Retourne les tâches les plus critiques (en retard + échéance dans 48h)
|
||||
*/
|
||||
static async getCriticalDeadlines(
|
||||
userId: string,
|
||||
sources?: string[]
|
||||
): Promise<DeadlineTask[]> {
|
||||
const metrics = await this.getDeadlineMetrics(sources);
|
||||
const metrics = await this.getDeadlineMetrics(userId, sources);
|
||||
return [...metrics.overdue, ...metrics.critical].slice(0, 10); // Limite à 10 tâches les plus critiques
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user