2025-07-04 15:27:43 +02:00
import { requireAuth } from '@/server/utils/auth' ;
interface PDFOptions {
documentName : string ;
subheader? : string ;
groupBy : 'none' | 'payer' | 'category' | 'date' ;
includeReceipts : boolean ;
includeSummary : boolean ;
includeDetails : boolean ;
pageFormat : 'A4' | 'Letter' | 'Legal' ;
includeProcessingFee? : boolean ;
}
export default defineEventHandler ( async ( event ) = > {
await requireAuth ( event ) ;
const body = await readBody ( event ) ;
const { expenseIds , options } = body ;
if ( ! expenseIds || ! Array . isArray ( expenseIds ) || expenseIds . length === 0 ) {
throw createError ( {
statusCode : 400 ,
statusMessage : 'Expense IDs are required'
} ) ;
}
if ( ! options || ! options . documentName ) {
throw createError ( {
statusCode : 400 ,
statusMessage : 'PDF options with document name are required'
} ) ;
}
2025-07-09 20:27:28 +02:00
console . log ( '[expenses/generate-pdf] PDF generation requested for expenses:' , expenseIds ) ;
2025-07-04 15:27:43 +02:00
2025-07-09 20:27:28 +02:00
// For now, return a helpful error message
throw createError ( {
statusCode : 501 ,
statusMessage : 'PDF generation is temporarily disabled while we upgrade the system. Please use CSV export instead or contact support for manual PDF generation.'
2025-07-04 15:27:43 +02:00
} ) ;
2025-07-09 20:27:28 +02:00
} ) ;