From 3e30fae173b09cb11303fa350401d9530b8c5bc4 Mon Sep 17 00:00:00 2001
From: echo
- {new Date(record.checkIn).toLocaleString()}
+ {new Date(record.checkInTime).toLocaleString()}
- {record.checkOut
- ? new Date(record.checkOut).toLocaleString()
+ {record.checkOutTime
+ ? new Date(record.checkOutTime).toLocaleString()
: "-"}
-
diff --git a/apps/admin/src/components/users/UserGrid.tsx b/apps/admin/src/components/users/UserGrid.tsx
index adfe37b..9d94335 100644
--- a/apps/admin/src/components/users/UserGrid.tsx
+++ b/apps/admin/src/components/users/UserGrid.tsx
@@ -260,7 +260,7 @@ export function UserGrid({
// },
{
headerName: "Last Visit",
- valueGetter: (params) => params.data?.client?.lastVisit,
+ valueGetter: (params) => params.data?.lastCheckInTime,
filter: "agDateColumnFilter",
sortable: true,
valueFormatter: (params: any) =>
diff --git a/apps/admin/src/components/users/UserManagement.tsx b/apps/admin/src/components/users/UserManagement.tsx
index 3babce7..e5e7586 100644
--- a/apps/admin/src/components/users/UserManagement.tsx
+++ b/apps/admin/src/components/users/UserManagement.tsx
@@ -587,9 +587,9 @@ export function UserManagement({ gymId }: UserManagementProps) {
Last Visit:{" "} - {selectedUser.client.lastVisit + {selectedUser.lastCheckInTime ? new Date( - selectedUser.client.lastVisit, + selectedUser.lastCheckInTime, ).toLocaleDateString() : "Never"}
diff --git a/apps/admin/src/hooks/use-api.ts b/apps/admin/src/hooks/use-api.ts index 7073f91..10653e7 100644 --- a/apps/admin/src/hooks/use-api.ts +++ b/apps/admin/src/hooks/use-api.ts @@ -55,8 +55,8 @@ export interface Gym { export interface AttendanceRecord { id: string; userId: string; - checkIn: string; - checkOut?: string; + checkInTime: Date; + checkOutTime?: Date; date: string; type?: string; } diff --git a/apps/admin/src/lib/database/drizzle.ts b/apps/admin/src/lib/database/drizzle.ts index b0e6a35..76ce95e 100644 --- a/apps/admin/src/lib/database/drizzle.ts +++ b/apps/admin/src/lib/database/drizzle.ts @@ -1318,9 +1318,14 @@ export class DrizzleDatabase implements IDatabase { membershipStatus: String( row.membershipStatus, ) as Client["membershipStatus"], - joinDate: new Date(row.joinDate as number | Date), + joinDate: + typeof row.joinDate === "number" + ? new Date(row.joinDate * 1000) + : new Date(row.joinDate as Date), lastVisit: row.lastVisit - ? new Date(row.lastVisit as number | Date) + ? typeof row.lastVisit === "number" + ? new Date(row.lastVisit * 1000) + : new Date(row.lastVisit as Date) : undefined, emergencyContact: row.emergencyContactName ? { @@ -1363,12 +1368,20 @@ export class DrizzleDatabase implements IDatabase { id: String(row.id), userId: String(row.userId), type: String(row.type) as Attendance["type"], - checkInTime: new Date(row.checkInTime as number | Date), + checkInTime: + typeof row.checkInTime === "number" + ? new Date(row.checkInTime * 1000) + : new Date(row.checkInTime as Date), checkOutTime: row.checkOutTime - ? new Date(row.checkOutTime as number | Date) + ? typeof row.checkOutTime === "number" + ? new Date(row.checkOutTime * 1000) + : new Date(row.checkOutTime as Date) : undefined, notes: row.notes ? String(row.notes) : undefined, - createdAt: new Date(row.createdAt as number | Date), + createdAt: + typeof row.createdAt === "number" + ? new Date(row.createdAt * 1000) + : new Date(row.createdAt as Date), }; }