All Classes and Interfaces
Class
Description
Controller for adding new users or administrators in the Lunchify system.
Controller for adding invoices via manual entry or OCR.
Controller for the admin dashboard.
Controller class for admin invoice management.
Represents an administrator user with extended permissions.
Utility class for detecting mismatches between OCR-extracted data and manually entered invoice data.
Abstract base controller class for exporting statistical data in various formats (PDF, CSV, JSON).
Enum representing the type of invoice category.
Controller class for managing the reimbursement rates of invoice categories (e.g., restaurant, supermarket).
Service class for performing OCR (Optical Character Recognition) using Google Cloud Vision API.
Inner class to encapsulate OCR results.
Utility class for exporting tabular data to CSV format.
Utility class for establishing a connection to the database
and handling file uploads to Supabase bucket storage.
Controller class for handling the deletion of users (Admin or User) from the system.
Repository for managing deleted notifications in the database.
Controller for editing declined invoices.
Represents an invoice submitted by a user, including metadata, validation logic, and OCR support.
Repository class for handling database operations related to invoices.
Utility class for exporting data to a JSON file.
Represents an in-app notification that can be sent to users or administrators.
Controller for displaying admin notifications with action buttons.
Controller for displaying user-specific invoice notifications.
Utility class for generating PDF documents using Apache PDFBox.
Main class to launch the JavaFX application.
Controller for the start (login) screen of the Lunchify application.
Controller responsible for displaying and exporting statistics
about the number of invoices per month using a bar chart.
Controller for visualizing and exporting reimbursement data per month.
The
Statistics
class provides various statistical evaluations
based on invoices and reimbursements stored in the system.Controller for the Statistics overview screen.
Controller for displaying and exporting the distribution of invoices
between supermarket and restaurant categories using a pie chart.
The
Status
enum represents the processing status of an invoice.The
User
class represents a user in the system, which can either be a regular user or an administrator.Controller for the User Dashboard.
The
UserInvoiceData
class stores basic information about a user's invoices.Repository class for managing user-related database operations.
The
UserSession
class manages the current user session in the application.