feat: complete Phase 2 of service refactoring
- Marked tasks in `TODO.md` as completed for moving analytics-related files to the `analytics` directory and correcting imports across the codebase. - Updated imports in `src/actions/analytics.ts`, `src/actions/metrics.ts`, and various components to reflect the new structure. - Removed unused `analytics.ts`, `manager-summary.ts`, and `metrics.ts` files to streamline the codebase.
This commit is contained in:
15
TODO.md
15
TODO.md
@@ -109,13 +109,14 @@ src/services/
|
|||||||
- [x] Corriger 13 imports externes (actions, API routes, pages)
|
- [x] Corriger 13 imports externes (actions, API routes, pages)
|
||||||
- [x] Corriger 3 imports internes entre services
|
- [x] Corriger 3 imports internes entre services
|
||||||
|
|
||||||
### Phase 2: Analytics & Métriques
|
### Phase 2: Analytics & Métriques ✅
|
||||||
- [ ] **Déplacer `analytics.ts`** → `analytics/analytics.ts`
|
- [x] **Déplacer `analytics.ts`** → `analytics/analytics.ts`
|
||||||
- [ ] Corriger imports dans hooks/components analytics
|
- [x] Corriger 2 imports externes (actions, components)
|
||||||
- [ ] **Déplacer `metrics.ts`** → `analytics/metrics.ts`
|
- [x] **Déplacer `metrics.ts`** → `analytics/metrics.ts`
|
||||||
- [ ] Corriger import dans `actions/metrics.ts`
|
- [x] Corriger 7 imports externes (actions, hooks, components)
|
||||||
- [ ] **Déplacer `manager-summary.ts`** → `analytics/manager-summary.ts`
|
- [x] **Déplacer `manager-summary.ts`** → `analytics/manager-summary.ts`
|
||||||
- [ ] Corriger imports dans components dashboard
|
- [x] Corriger 3 imports externes (components, pages)
|
||||||
|
- [x] Corriger imports database vers ../core/database
|
||||||
|
|
||||||
### Phase 3: Data Management
|
### Phase 3: Data Management
|
||||||
- [ ] **Déplacer `backup.ts`** → `data-management/backup.ts`
|
- [ ] **Déplacer `backup.ts`** → `data-management/backup.ts`
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
'use server';
|
'use server';
|
||||||
|
|
||||||
import { AnalyticsService, ProductivityMetrics, TimeRange } from '@/services/analytics';
|
import { AnalyticsService, ProductivityMetrics, TimeRange } from '@/services/analytics/analytics';
|
||||||
|
|
||||||
export async function getProductivityMetrics(timeRange?: TimeRange): Promise<{
|
export async function getProductivityMetrics(timeRange?: TimeRange): Promise<{
|
||||||
success: boolean;
|
success: boolean;
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
'use server';
|
'use server';
|
||||||
|
|
||||||
import { MetricsService, WeeklyMetricsOverview, VelocityTrend } from '@/services/metrics';
|
import { MetricsService, WeeklyMetricsOverview, VelocityTrend } from '@/services/analytics/metrics';
|
||||||
import { getToday } from '@/lib/date-utils';
|
import { getToday } from '@/lib/date-utils';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
import { TasksProvider } from '@/contexts/TasksContext';
|
import { TasksProvider } from '@/contexts/TasksContext';
|
||||||
import ManagerWeeklySummary from '@/components/dashboard/ManagerWeeklySummary';
|
import ManagerWeeklySummary from '@/components/dashboard/ManagerWeeklySummary';
|
||||||
import { ManagerSummary } from '@/services/manager-summary';
|
import { ManagerSummary } from '@/services/analytics/manager-summary';
|
||||||
import { Task, Tag } from '@/lib/types';
|
import { Task, Tag } from '@/lib/types';
|
||||||
|
|
||||||
interface WeeklyManagerPageClientProps {
|
interface WeeklyManagerPageClientProps {
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { Header } from '@/components/ui/Header';
|
import { Header } from '@/components/ui/Header';
|
||||||
import { ManagerSummaryService } from '@/services/manager-summary';
|
import { ManagerSummaryService } from '@/services/analytics/manager-summary';
|
||||||
import { tasksService } from '@/services/tasks';
|
import { tasksService } from '@/services/tasks';
|
||||||
import { tagsService } from '@/services/tags';
|
import { tagsService } from '@/services/tags';
|
||||||
import { WeeklyManagerPageClient } from './WeeklyManagerPageClient';
|
import { WeeklyManagerPageClient } from './WeeklyManagerPageClient';
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
'use client';
|
'use client';
|
||||||
|
|
||||||
import { useState } from 'react';
|
import { useState } from 'react';
|
||||||
import { ManagerSummary } from '@/services/manager-summary';
|
import { ManagerSummary } from '@/services/analytics/manager-summary';
|
||||||
import { Card, CardHeader, CardContent } from '@/components/ui/Card';
|
import { Card, CardHeader, CardContent } from '@/components/ui/Card';
|
||||||
import { Button } from '@/components/ui/Button';
|
import { Button } from '@/components/ui/Button';
|
||||||
import { TagDisplay } from '@/components/ui/TagDisplay';
|
import { TagDisplay } from '@/components/ui/TagDisplay';
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
'use client';
|
'use client';
|
||||||
|
|
||||||
import { useState, useEffect, useTransition } from 'react';
|
import { useState, useEffect, useTransition } from 'react';
|
||||||
import { ProductivityMetrics } from '@/services/analytics';
|
import { ProductivityMetrics } from '@/services/analytics/analytics';
|
||||||
import { getProductivityMetrics } from '@/actions/analytics';
|
import { getProductivityMetrics } from '@/actions/analytics';
|
||||||
import { CompletionTrendChart } from '@/components/charts/CompletionTrendChart';
|
import { CompletionTrendChart } from '@/components/charts/CompletionTrendChart';
|
||||||
import { VelocityChart } from '@/components/charts/VelocityChart';
|
import { VelocityChart } from '@/components/charts/VelocityChart';
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
'use client';
|
'use client';
|
||||||
|
|
||||||
import { LineChart, Line, XAxis, YAxis, CartesianGrid, Tooltip, ResponsiveContainer } from 'recharts';
|
import { LineChart, Line, XAxis, YAxis, CartesianGrid, Tooltip, ResponsiveContainer } from 'recharts';
|
||||||
import { DailyMetrics } from '@/services/metrics';
|
import { DailyMetrics } from '@/services/analytics/metrics';
|
||||||
import { parseDate, formatDateShort } from '@/lib/date-utils';
|
import { parseDate, formatDateShort } from '@/lib/date-utils';
|
||||||
|
|
||||||
interface CompletionRateChartProps {
|
interface CompletionRateChartProps {
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
'use client';
|
'use client';
|
||||||
|
|
||||||
import { BarChart, Bar, XAxis, YAxis, CartesianGrid, Tooltip, ResponsiveContainer, Legend } from 'recharts';
|
import { BarChart, Bar, XAxis, YAxis, CartesianGrid, Tooltip, ResponsiveContainer, Legend } from 'recharts';
|
||||||
import { DailyMetrics } from '@/services/metrics';
|
import { DailyMetrics } from '@/services/analytics/metrics';
|
||||||
import { parseDate, formatDateShort } from '@/lib/date-utils';
|
import { parseDate, formatDateShort } from '@/lib/date-utils';
|
||||||
|
|
||||||
interface DailyStatusChartProps {
|
interface DailyStatusChartProps {
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
'use client';
|
'use client';
|
||||||
|
|
||||||
import { DailyMetrics } from '@/services/metrics';
|
import { DailyMetrics } from '@/services/analytics/metrics';
|
||||||
|
|
||||||
interface ProductivityInsightsProps {
|
interface ProductivityInsightsProps {
|
||||||
data: DailyMetrics[];
|
data: DailyMetrics[];
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
'use client';
|
'use client';
|
||||||
|
|
||||||
import { LineChart, Line, XAxis, YAxis, CartesianGrid, Tooltip, ResponsiveContainer, Legend } from 'recharts';
|
import { LineChart, Line, XAxis, YAxis, CartesianGrid, Tooltip, ResponsiveContainer, Legend } from 'recharts';
|
||||||
import { VelocityTrend } from '@/services/metrics';
|
import { VelocityTrend } from '@/services/analytics/metrics';
|
||||||
|
|
||||||
interface VelocityTrendChartProps {
|
interface VelocityTrendChartProps {
|
||||||
data: VelocityTrend[];
|
data: VelocityTrend[];
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
'use client';
|
'use client';
|
||||||
|
|
||||||
import { DailyMetrics } from '@/services/metrics';
|
import { DailyMetrics } from '@/services/analytics/metrics';
|
||||||
import { parseDate, isToday } from '@/lib/date-utils';
|
import { parseDate, isToday } from '@/lib/date-utils';
|
||||||
|
|
||||||
interface WeeklyActivityHeatmapProps {
|
interface WeeklyActivityHeatmapProps {
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import { useState, useEffect, useTransition, useCallback } from 'react';
|
import { useState, useEffect, useTransition, useCallback } from 'react';
|
||||||
import { getWeeklyMetrics, getVelocityTrends } from '@/actions/metrics';
|
import { getWeeklyMetrics, getVelocityTrends } from '@/actions/metrics';
|
||||||
import { WeeklyMetricsOverview, VelocityTrend } from '@/services/metrics';
|
import { WeeklyMetricsOverview, VelocityTrend } from '@/services/analytics/metrics';
|
||||||
|
|
||||||
// Export des types pour les composants
|
// Export des types pour les composants
|
||||||
export type WeeklyMetrics = WeeklyMetricsOverview;
|
export type WeeklyMetrics = WeeklyMetricsOverview;
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
import { Task, TaskStatus, TaskPriority, TaskSource } from '@/lib/types';
|
import { Task, TaskStatus, TaskPriority, TaskSource } from '@/lib/types';
|
||||||
import { prisma } from './core/database';
|
import { prisma } from '../core/database';
|
||||||
import { getToday, parseDate, subtractDays } from '@/lib/date-utils';
|
import { getToday, parseDate, subtractDays } from '@/lib/date-utils';
|
||||||
|
|
||||||
export interface ProductivityMetrics {
|
export interface ProductivityMetrics {
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
import { prisma } from './core/database';
|
import { prisma } from '../core/database';
|
||||||
import { startOfWeek, endOfWeek } from 'date-fns';
|
import { startOfWeek, endOfWeek } from 'date-fns';
|
||||||
import { getToday } from '@/lib/date-utils';
|
import { getToday } from '@/lib/date-utils';
|
||||||
|
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
import { prisma } from './core/database';
|
import { prisma } from '../core/database';
|
||||||
import { startOfWeek, endOfWeek, eachDayOfInterval, format, startOfDay, endOfDay } from 'date-fns';
|
import { startOfWeek, endOfWeek, eachDayOfInterval, format, startOfDay, endOfDay } from 'date-fns';
|
||||||
import { fr } from 'date-fns/locale';
|
import { fr } from 'date-fns/locale';
|
||||||
import { formatDateForAPI, getDayName, getToday, subtractDays } from '@/lib/date-utils';
|
import { formatDateForAPI, getDayName, getToday, subtractDays } from '@/lib/date-utils';
|
||||||
Reference in New Issue
Block a user