-
Mahmoud Aglan authored
- ActivitySubscriptions: fix generate/calculateRate querying nonexistent `enrollments` table; use `academy_enrollments` with correct columns - SportsDashboard: fix queries against nonexistent `disciplines` table; use `sport_disciplines` - Sports: unify conversion-fee percentage to a single source (MembershipRulesService::getAthleticMemberConversionRules), preventing the eligibility preview from drifting from what's actually charged - SportsActivity: align absence-threshold fallback defaults between AttendanceRuleService and TrainingAttendanceService via a shared constant - SportsActivity: auto-bill first month on Registration Wizard completion, matching the direct-enrollment path so wizard-registered players aren't left uncharged until the monthly batch runs - ActivitySubscriptions: guard paySubscription() to only transition pending/overdue -> paid, making it idempotent against the (currently unreachable) payment.completed listener path - ActivitySubscriptions: dispatch academy.enrollment_created from the enroll wizard so PlayerAffairs' auto-billing listener actually fires Also adds/updates Architecture Maps for Sports, SportsActivity, SportsDashboard, ActivitySubscriptions and the cross-module Dependency Graph, per this repo's mandatory architecture-map workflow. Co-Authored-By:
Claude Opus 5 <noreply@anthropic.com> Co-Authored-By:
Claude Sonnet 5 <noreply@anthropic.com>
e139a8a2
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| architecture-maps | ||
| tutorials | ||
| HR_MODULE_FEATURES_AR.md | ||
| SPORTS-EXECUTION-PLAN.md | ||
| discounts-tutorial.md |