From bf72bbb7bbdccb5ee1c7ddb1541a88cea383765f Mon Sep 17 00:00:00 2001 From: SylvainP1 <5533467-SylvainP1@users.noreply.replit.com> Date: Tue, 14 Apr 2026 12:55:38 +0000 Subject: [PATCH] Add ability to include descriptions for time entries Updates the API and UI to allow users to add optional descriptions to time entries, with a visual indicator for cells containing descriptions. Replit-Commit-Author: Agent Replit-Commit-Session-Id: 55837015-10e9-4be9-b857-7f5e6be73772 Replit-Commit-Checkpoint-Type: full_checkpoint Replit-Commit-Event-Id: 3bc0faf3-6f86-46e5-8577-13a2e2e88062 Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1cc377db-7ea0-49f2-97ce-c3e87e0228cc/55837015-10e9-4be9-b857-7f5e6be73772/Dzp7voC Replit-Helium-Checkpoint-Created: true --- artifacts/api-server/src/routes/timesheets.ts | 3 +- artifacts/cra-app/public/opengraph.jpg | Bin 59092 -> 61535 bytes .../cra-app/src/pages/timesheet-detail.tsx | 49 ++++++++++++++++-- .../src/generated/api.schemas.ts | 2 + lib/api-spec/openapi.yaml | 6 +++ lib/api-zod/src/generated/api.ts | 3 ++ lib/api-zod/src/generated/types/timeEntry.ts | 1 + .../types/upsertTimeEntriesBodyEntriesItem.ts | 1 + lib/api-zod/src/index.ts | 1 + replit.md | 4 +- 10 files changed, 62 insertions(+), 8 deletions(-) diff --git a/artifacts/api-server/src/routes/timesheets.ts b/artifacts/api-server/src/routes/timesheets.ts index 66a0d79..6911577 100644 --- a/artifacts/api-server/src/routes/timesheets.ts +++ b/artifacts/api-server/src/routes/timesheets.ts @@ -290,7 +290,7 @@ router.put("/timesheets/:timesheetId/entries", async (req, res): Promise = } else { const [updated] = await db .update(timeEntriesTable) - .set({ hours: entry.hours }) + .set({ hours: entry.hours, description: entry.description ?? null }) .where(eq(timeEntriesTable.id, existing[0].id)) .returning(); results.push(updated); @@ -302,6 +302,7 @@ router.put("/timesheets/:timesheetId/entries", async (req, res): Promise = timesheetLineId: entry.timesheetLineId, date: dateStr, hours: entry.hours, + description: entry.description ?? null, }) .returning(); results.push(created); diff --git a/artifacts/cra-app/public/opengraph.jpg b/artifacts/cra-app/public/opengraph.jpg index 4f199d544efd97a68606145c3e31f45e3988623e..6aba47deee9ea6ac9f94aefb4e72cc08afe3ed2e 100644 GIT binary patch literal 61535 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�eBs1Gb5gC>55imGiQ|MiAN?C>< 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

m-3dz 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 bA)?1e?zp?BpNI|M4TpcX0o+l}?e+XGmo(_t diff --git a/artifacts/cra-app/src/pages/timesheet-detail.tsx b/artifacts/cra-app/src/pages/timesheet-detail.tsx index 956b0cc..756e9cc 100644 --- a/artifacts/cra-app/src/pages/timesheet-detail.tsx +++ b/artifacts/cra-app/src/pages/timesheet-detail.tsx @@ -17,7 +17,8 @@ import { Plus, Trash2, CheckCircle, - AlertCircle + AlertCircle, + MessageSquare } from "lucide-react"; import { Button } from "@/components/ui/button"; import { Badge } from "@/components/ui/badge"; @@ -39,6 +40,7 @@ type LocalEntry = { timesheetLineId: number; date: string; hours: number; + description?: string | null; }; export default function TimesheetDetailPage() { @@ -59,6 +61,7 @@ export default function TimesheetDetailPage() { const upsertEntries = useUpsertTimeEntries(); const [localEntries, setLocalEntries] = useState>({}); + const [localDescriptions, setLocalDescriptions] = useState>({}); const [isAddingLine, setIsAddingLine] = useState(false); const [hasUnsavedChanges, setHasUnsavedChanges] = useState(false); const dirtyKeysRef = useRef>(new Set()); @@ -68,15 +71,20 @@ export default function TimesheetDetailPage() { useEffect(() => { if (timesheet?.lines) { const initial: Record = {}; + const initialDesc: Record = {}; timesheet.lines.forEach(line => { line.entries?.forEach(entry => { const dateStr = typeof entry.date === "string" && entry.date.length > 10 ? entry.date.slice(0, 10) : entry.date; initial[`${line.id}-${dateStr}`] = entry.hours; + if (entry.description) { + initialDesc[`${line.id}-${dateStr}`] = entry.description; + } }); }); setLocalEntries(initial); + setLocalDescriptions(initialDesc); setHasUnsavedChanges(false); dirtyKeysRef.current.clear(); } @@ -109,10 +117,13 @@ export default function TimesheetDetailPage() { const saveTimerRef = useRef | null>(null); const localEntriesRef = useRef(localEntries); localEntriesRef.current = localEntries; + const localDescriptionsRef = useRef(localDescriptions); + localDescriptionsRef.current = localDescriptions; const doSave = useCallback(() => { if (!timesheetId) return; const entries = localEntriesRef.current; + const descriptions = localDescriptionsRef.current; const entriesToSave: LocalEntry[] = []; const dirty = dirtyKeysRef.current; @@ -123,7 +134,8 @@ export default function TimesheetDetailPage() { entriesToSave.push({ timesheetLineId: parseInt(lineIdStr), date: fullDate, - hours + hours, + description: descriptions[key] || null }); } }); @@ -157,6 +169,16 @@ export default function TimesheetDetailPage() { saveTimerRef.current = setTimeout(() => doSave(), 800); }; + const handleSetDescription = (lineId: number, dateStr: string, desc: string) => { + const key = `${lineId}-${dateStr}`; + setLocalDescriptions(prev => ({ ...prev, [key]: desc })); + setHasUnsavedChanges(true); + dirtyKeysRef.current.add(key); + + if (saveTimerRef.current) clearTimeout(saveTimerRef.current); + saveTimerRef.current = setTimeout(() => doSave(), 800); + }; + useEffect(() => { return () => { if (saveTimerRef.current) clearTimeout(saveTimerRef.current); @@ -185,13 +207,14 @@ export default function TimesheetDetailPage() { if (hasUnsavedChanges) { const entries = localEntriesRef.current; + const descriptions = localDescriptionsRef.current; const dirty = dirtyKeysRef.current; const entriesToSave: LocalEntry[] = []; Object.entries(entries).forEach(([key, hours]) => { const lineIdStr = key.split("-")[0]; const fullDate = key.substring(lineIdStr.length + 1); if (hours > 0 || dirty.has(key)) { - entriesToSave.push({ timesheetLineId: parseInt(lineIdStr), date: fullDate, hours }); + entriesToSave.push({ timesheetLineId: parseInt(lineIdStr), date: fullDate, hours, description: descriptions[key] || null }); } }); setSaveStatus("saving"); @@ -416,10 +439,14 @@ export default function TimesheetDetailPage() { {daysArray.map(day => { const key = `${line.id}-${day.dateStr}`; const val = localEntries[key] || 0; + const desc = localDescriptions[key] || ""; const cellContent = ( -

+
{val === 0 ? "" : val} + {desc && ( + + )}
); @@ -432,13 +459,14 @@ export default function TimesheetDetailPage() { isEditable ? "cursor-pointer hover:bg-primary/10" : "", val > 0 ? "bg-primary/5 text-primary font-semibold" : "" )} + title={desc || undefined} > {isEditable ? ( {cellContent} - +
{HOUR_OPTIONS.map(h => (
+
+ + handleSetDescription(line.id, day.dateStr, e.target.value)} + onClick={(e) => e.stopPropagation()} + className="w-full text-xs bg-transparent border-none outline-none placeholder:text-muted-foreground/50" + /> +
) : cellContent} diff --git a/lib/api-client-react/src/generated/api.schemas.ts b/lib/api-client-react/src/generated/api.schemas.ts index 61e6d43..d2cdbb3 100644 --- a/lib/api-client-react/src/generated/api.schemas.ts +++ b/lib/api-client-react/src/generated/api.schemas.ts @@ -100,6 +100,7 @@ export interface TimeEntry { timesheetLineId: number; date: string; hours: number; + description?: string | null; } export interface TimesheetLineWithEntries { @@ -149,6 +150,7 @@ export type UpsertTimeEntriesBodyEntriesItem = { timesheetLineId: number; date: string; hours: number; + description?: string | null; }; export interface UpsertTimeEntriesBody { diff --git a/lib/api-spec/openapi.yaml b/lib/api-spec/openapi.yaml index 50552dd..aea180a 100644 --- a/lib/api-spec/openapi.yaml +++ b/lib/api-spec/openapi.yaml @@ -636,6 +636,9 @@ components: format: date hours: type: number + description: + type: string + nullable: true required: - id - timesheetLineId @@ -657,6 +660,9 @@ components: format: date hours: type: number + description: + type: string + nullable: true required: - timesheetLineId - date diff --git a/lib/api-zod/src/generated/api.ts b/lib/api-zod/src/generated/api.ts index 130721a..70cbdbf 100644 --- a/lib/api-zod/src/generated/api.ts +++ b/lib/api-zod/src/generated/api.ts @@ -154,6 +154,7 @@ export const GetTimesheetResponse = zod.object({ timesheetLineId: zod.number(), date: zod.coerce.date(), hours: zod.number(), + description: zod.string().nullish(), }), ), }), @@ -243,6 +244,7 @@ export const UpsertTimeEntriesBody = zod.object({ timesheetLineId: zod.number(), date: zod.coerce.date(), hours: zod.number(), + description: zod.string().nullish(), }), ), }); @@ -252,6 +254,7 @@ export const UpsertTimeEntriesResponseItem = zod.object({ timesheetLineId: zod.number(), date: zod.coerce.date(), hours: zod.number(), + description: zod.string().nullish(), }); export const UpsertTimeEntriesResponse = zod.array( UpsertTimeEntriesResponseItem, diff --git a/lib/api-zod/src/generated/types/timeEntry.ts b/lib/api-zod/src/generated/types/timeEntry.ts index aab8a5e..82cb77d 100644 --- a/lib/api-zod/src/generated/types/timeEntry.ts +++ b/lib/api-zod/src/generated/types/timeEntry.ts @@ -11,4 +11,5 @@ export interface TimeEntry { timesheetLineId: number; date: Date; hours: number; + description?: string | null; } diff --git a/lib/api-zod/src/generated/types/upsertTimeEntriesBodyEntriesItem.ts b/lib/api-zod/src/generated/types/upsertTimeEntriesBodyEntriesItem.ts index 55f7072..7114cac 100644 --- a/lib/api-zod/src/generated/types/upsertTimeEntriesBodyEntriesItem.ts +++ b/lib/api-zod/src/generated/types/upsertTimeEntriesBodyEntriesItem.ts @@ -10,4 +10,5 @@ export type UpsertTimeEntriesBodyEntriesItem = { timesheetLineId: number; date: Date; hours: number; + description?: string | null; }; diff --git a/lib/api-zod/src/index.ts b/lib/api-zod/src/index.ts index 47a637d..ac442e7 100644 --- a/lib/api-zod/src/index.ts +++ b/lib/api-zod/src/index.ts @@ -1 +1,2 @@ export * from "./generated/api"; +export * from "./generated/types"; diff --git a/replit.md b/replit.md index 6b729a2..20d6c39 100644 --- a/replit.md +++ b/replit.md @@ -23,7 +23,7 @@ A French timesheet management application (CRA - Compte Rendu d'Activité) built - **Dashboard**: Overview with monthly hours chart, project breakdown, active project count, timesheet status - **Timesheet Management**: Create, view, edit monthly timesheets (CRA) -- **CRA Grid**: Interactive calendar grid where rows = projects, columns = days of month. Click cells to cycle 0 → 0.5 → 1 hours. Weekend distinction, row/column totals +- **CRA Grid**: Interactive calendar grid where rows = projects, columns = days of month. Click cells to open popover with hour options [0, 0.5, 1, 2, 3, 4, 5, 6, 7, 7.7]. Includes optional description per cell (amber dot indicator). Auto-save with debounce. Weekend distinction, row/column totals - **Project Management**: CRUD for projects with code, name, client, category - **Timesheet Workflow**: Draft → Submitted → Validated status flow @@ -32,7 +32,7 @@ A French timesheet management application (CRA - Compte Rendu d'Activité) built - `projects` — Project definitions (code, name, client, category) - `timesheets` — Monthly timesheet headers (year, month, status, collaborator) - `timesheet_lines` — Project assignments within a timesheet -- `time_entries` — Daily hour entries per line (date, hours) +- `time_entries` — Daily hour entries per line (date, hours, description) ## Key Commands