"use client"; import { useQuery } from "@tanstack/react-query"; import apiClient from "@/lib/api/client"; import { DataTable } from "@/components/common/data-table"; import { ColumnDef } from "@tanstack/react-table"; import { RefreshCw } from "lucide-react"; import { format } from "date-fns"; import { Button } from "@/components/ui/button"; interface NumberingError { id: number; userId?: number; errorMessage: string; stackTrace?: string; createdAt: string; context?: any; } const logService = { getNumberingErrors: async () => { const response = await apiClient.get("/document-numbering/logs/errors"); return response.data.data || response.data; }, }; export default function NumberingLogsPage() { const { data: errors = [], isLoading, refetch } = useQuery({ queryKey: ["numbering-errors"], queryFn: logService.getNumberingErrors, }); const columns: ColumnDef[] = [ { accessorKey: "createdAt", header: "Timestamp", cell: ({ row }) => format(new Date(row.original.createdAt), "dd MMM yyyy, HH:mm:ss"), }, { accessorKey: "context.projectId", // Accessing nested property header: "Project ID", cell: ({ row }) => {row.original.context?.projectId || 'N/A'}, }, { accessorKey: "errorMessage", header: "Message", cell: ({ row }) => {row.original.errorMessage}, }, { accessorKey: "stackTrace", header: "Details", cell: ({ row }) => (
{row.original.stackTrace}
), }, ]; return (

Numbering Logs

Diagnostics for document numbering issues

{isLoading ? (
) : ( )}
); }