Add documentation headers across system modules
This commit is contained in:
+46
@@ -1,3 +1,12 @@
|
||||
/*
|
||||
File: PaymentManagementService.cpp
|
||||
Description: Implements the PaymentManagementService class which manages payment-related operations
|
||||
in the Vehicle Service Management System. Provides functionality for attaching/detaching observers,
|
||||
sending notifications, and issuing payment reminders based on invoice status and thresholds.
|
||||
Author: Trenser
|
||||
Date: 20-May-2026
|
||||
*/
|
||||
|
||||
#include <stdexcept>
|
||||
#include "PaymentManagementService.h"
|
||||
#include "Invoice.h"
|
||||
@@ -10,6 +19,14 @@
|
||||
|
||||
util::Map<std::string, User*> PaymentManagementService::m_observers{};
|
||||
|
||||
/*
|
||||
Function: attach
|
||||
Description: Attaches a user as an observer to the PaymentManagementService for receiving notifications.
|
||||
Parameters:
|
||||
- user: Pointer to the User object to be attached.
|
||||
Returns:
|
||||
- void
|
||||
*/
|
||||
void PaymentManagementService::attach(User* user)
|
||||
{
|
||||
if (user)
|
||||
@@ -22,6 +39,14 @@ void PaymentManagementService::attach(User* user)
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
Function: detach
|
||||
Description: Detaches a user from the observer list of the PaymentManagementService.
|
||||
Parameters:
|
||||
- user: Pointer to the User object to be detached.
|
||||
Returns:
|
||||
- void
|
||||
*/
|
||||
void PaymentManagementService::detach(User* user)
|
||||
{
|
||||
if (user)
|
||||
@@ -34,6 +59,18 @@ void PaymentManagementService::detach(User* user)
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
Function: sendNotification
|
||||
Description: Sends a notification to a user if they are registered as an observer.
|
||||
Parameters:
|
||||
- user: Pointer to the User object to receive the notification.
|
||||
- title: Title of the notification.
|
||||
- message: Message content of the notification.
|
||||
Returns:
|
||||
- void
|
||||
Throws:
|
||||
- std::runtime_error if notification creation fails.
|
||||
*/
|
||||
void PaymentManagementService::sendNotification(User* user, const std::string& title, const std::string& message)
|
||||
{
|
||||
if (user)
|
||||
@@ -60,6 +97,15 @@ void PaymentManagementService::sendNotification(User* user, const std::string& t
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
Function: sendPaymentReminders
|
||||
Description: Iterates through all invoices in the datastore and sends payment reminders to customers
|
||||
whose invoices are pending beyond the configured threshold duration.
|
||||
Parameters:
|
||||
- None
|
||||
Returns:
|
||||
- void
|
||||
*/
|
||||
void PaymentManagementService::sendPaymentReminders()
|
||||
{
|
||||
auto& invoicesMap = m_dataStore.getInvoices();
|
||||
|
||||
Reference in New Issue
Block a user