fix: comprehensive subscription, transfer, and archive fixes (10 issues)
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>
Showing
Please register or sign in to comment