-
Fares authored
1. Subscription sync: add refreshForMember() and markCurrentYearPaid() to handle post-transfer subscription creation and payment marking. 2. Event listeners: transfer.completed and death.completed now trigger subscription sync for new members and cleanup for source members. 3. Waiver: stop transferring ALL payments/subscriptions/fines to target. Only pending subscriptions, active installments, and unpaid fines move. Paid history stays with the archived source member. 4. Death: createNewSubscriptions() now marks all rows as 'paid' since the annual fee is collected as part of the death transfer fee. 5. Death dependent: remove pending subscription rows when a spouse/child dies (not the primary member). 6. Members: add ownership_transfer_date column (migration + display) to record when membership ownership was transferred. 7. Archive: group subscriptions by financial year with summary totals. 8. Arabize: archive views (entity_type, snapshot_reason, NULL→فارغ), subscription statuses, and payment type labels. 9. Seasonal: fix duplicate national_id error by checking all members (including archived) during validation. Co-Authored-By:Claude Opus 4.6 <noreply@anthropic.com>
cfa6456e
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| Controllers | ||
| Models | ||
| Services | ||
| Views | ||
| ApiRoutes.php | ||
| PaymentProcessorAdapter.php | ||
| Routes.php | ||
| bootstrap.php | ||
| provides.php |