fix(transfers): resolve NOT NULL field errors during child separation completion
The TransferProcessor::execute() was failing with "Field 'date_of_birth'
doesn't have a default value" because:
1. Child's date_of_birth could be empty string (not null), bypassing ?? operator
2. Children table has no phone_mobile column, causing NOT NULL violation on members
3. Spouse creation was missing required fields (date_of_birth, marriage_date, join_date)
4. Temporary member creation was missing required fields (date_of_birth, gender, category)
Changes:
- Sanitize DOB: treat empty string and '0000-00-00' as null before NID fallback
- Add phone_mobile fallback chain: subject → source member → placeholder
- Spouse inserts now include all NOT NULL fields with sensible defaults
- Children inserts include child_order
- Temporary member inserts include category, date_of_birth, gender with NID parsing
- Death module: fix secondary spouse phone_mobile NULL issue
Co-Authored-By:
Claude Opus 4.6 <noreply@anthropic.com>
Showing
Please register or sign in to comment