Attendance Tracking¶
Track participant attendance for reservations, manage training credits, and enforce subscription windows.
Navigation¶
Edzés jelenlét (/Club/Attendance)
Attendance Record¶
Each attendance record links a reservation to a user with status and duration tracking.
| Column | Description |
|---|---|
Reservation_ID |
Associated reservation |
User_ID |
Participant |
UserTrainingCredit_ID |
Linked training credit (if applicable) |
AttendanceStatus_ID |
Current status |
AttendanceDuration |
Duration in decimal hours |
Attendance Statuses¶
Six statuses govern the attendance lifecycle:
| ID | Status |
|---|---|
| 1 | Waiting |
| 2 | Pending |
| 3 | Subscribed |
| 4 | Attended |
| 5 | No show |
| 6 | Deleted |
Lifecycle¶
stateDiagram-v2
[*] --> Waiting
Waiting --> Pending
Pending --> Subscribed
Subscribed --> Attended
Subscribed --> No_show : No show
Subscribed --> Deleted
Pending --> Deleted
Waiting --> Deleted
Attendance Types¶
Three attendance types classify each session:
| ID | Type |
|---|---|
| 1 | Private |
| 2 | Semi-private |
| 3 | Group |
Training Package Transactions¶
Every credit operation is recorded in TrainingPackageTransaction with 11 transaction types covering all operations (enrollment, attendance deduction, refund, etc.).
Each transaction stores:
TransactionAmount— credits added or deductedCreditBalance— running balance after the transaction
Note
The transaction log provides a full audit trail for credit disputes. Every credit movement is traceable.
Attendance History¶
Modifications and deletions to attendance records are automatically logged. This is handled in SCMContext.Partial.cs within the SaveChanges() override, which creates history entries before persisting changes.
System Parameters¶
| Parameter | Value | Description |
|---|---|---|
AttendanceAvailability_Days |
3 | Days of upcoming reservations shown for attendance management |
AttendanceInformationVisibleInCalendar |
NO | Hide attendance info from calendar view |
MinTrainingUnsubscription_Hours |
6 | Minimum hours before session to allow unsubscription |
MaxTrainingSubscription_Hours |
168 | Maximum hours before session to allow subscription |
CustomerAttendanceInfoVisible |
YES | Customers can see their own attendance information |
Warning
MinTrainingUnsubscription_Hours=6 means customers cannot unsubscribe within 6 hours of the session start. Adjust this based on your cancellation policy.
Tip
MaxTrainingSubscription_Hours=168 (7 days) limits how far in advance customers can subscribe. Increase this value if you want to allow earlier sign-ups.