diff --git a/app/api/onboarding/[id]/process/route.ts b/app/api/onboarding/[id]/process/route.ts index a2dfac4..9b34d81 100644 --- a/app/api/onboarding/[id]/process/route.ts +++ b/app/api/onboarding/[id]/process/route.ts @@ -115,7 +115,19 @@ export async function POST( inactive_companies: 0, first_seen: new Date().toISOString().slice(0, 10), last_checked: new Date().toISOString().slice(0, 10), - notes: `Created from onboarding submission ${submission.reference_no}. Residential: ${d.residential_address}; Postal: ${d.postal_address}; Email: ${d.email}; DOB: ${d.date_of_birth}.`, + residential_address_line_1: d.residential_address_line_1?.trim() ?? "", + residential_address_line_2: d.residential_address_line_2?.trim() ?? "", + residential_town_city: d.residential_town_city?.trim() ?? "", + residential_province: d.residential_province?.trim() ?? "", + residential_postal_code: d.residential_postal_code?.trim() ?? "", + postal_address_line_1: d.postal_address_line_1?.trim() ?? "", + postal_address_line_2: d.postal_address_line_2?.trim() ?? "", + postal_town_city: d.postal_town_city?.trim() ?? "", + postal_province: d.postal_province?.trim() ?? "", + postal_postal_code: d.postal_postal_code?.trim() ?? "", + email: d.email?.trim() ?? "", + date_of_birth: d.date_of_birth ?? "", + notes: `Created from onboarding submission ${submission.reference_no}. Email: ${d.email}; DOB: ${d.date_of_birth}.`, }); created.push(created_rec.id); } catch (err) { diff --git a/app/api/onboarding/submit/route.ts b/app/api/onboarding/submit/route.ts index fdea83d..4727dbf 100644 --- a/app/api/onboarding/submit/route.ts +++ b/app/api/onboarding/submit/route.ts @@ -98,8 +98,14 @@ function validateDirector(d: OnboardingDirectorPayload): string | null { if (!d.surname?.trim()) return "Director surname required"; if (!/^\d{13}$/.test(d.id_no ?? "")) return "Director ID must be 13 digits"; if (!d.date_of_birth) return "Director date of birth required"; - if (!d.residential_address?.trim()) return "Director residential address required"; - if (!d.postal_address?.trim()) return "Director postal address required"; + if (!d.residential_address_line_1?.trim()) return "Director residential address line 1 required"; + if (!d.residential_town_city?.trim()) return "Director residential town/city required"; + if (!d.residential_province?.trim()) return "Director residential province required"; + if (!d.residential_postal_code?.trim()) return "Director residential postal code required"; + if (!d.postal_address_line_1?.trim()) return "Director postal address line 1 required"; + if (!d.postal_town_city?.trim()) return "Director postal town/city required"; + if (!d.postal_province?.trim()) return "Director postal province required"; + if (!d.postal_postal_code?.trim()) return "Director postal postal code required"; if (!d.email?.trim()) return "Director email required"; return null; } diff --git a/components/OnboardingWizard.tsx b/components/OnboardingWizard.tsx index 057b42d..93a016a 100644 --- a/components/OnboardingWizard.tsx +++ b/components/OnboardingWizard.tsx @@ -60,7 +60,17 @@ function blankDirector(): OnboardingDirector { id_no: "", date_of_birth: "", residential_address: "", + residential_address_line_1: "", + residential_address_line_2: "", + residential_town_city: "", + residential_province: "", + residential_postal_code: "", postal_address: "", + postal_address_line_1: "", + postal_address_line_2: "", + postal_town_city: "", + postal_province: "", + postal_postal_code: "", cell_phone: "", email: "" }; @@ -149,8 +159,14 @@ function validateDirector(d: OnboardingDirector): string[] { const idErr = validateIdNo(d.id_no); if (idErr) errs.push(idErr); if (!d.date_of_birth) errs.push("Date of birth required"); - if (!d.residential_address.trim()) errs.push("Residential address required"); - if (!d.postal_address.trim()) errs.push("Postal address required"); + if (!d.residential_address_line_1.trim()) errs.push("Residential address line 1 required"); + if (!d.residential_town_city.trim()) errs.push("Residential town/city required"); + if (!d.residential_province.trim()) errs.push("Residential province required"); + if (!d.residential_postal_code.trim()) errs.push("Residential postal code required"); + if (!d.postal_address_line_1.trim()) errs.push("Postal address line 1 required"); + if (!d.postal_town_city.trim()) errs.push("Postal town/city required"); + if (!d.postal_province.trim()) errs.push("Postal province required"); + if (!d.postal_postal_code.trim()) errs.push("Postal postal code required"); if (!d.cell_phone.trim()) errs.push("Cell phone required"); const emailErr = validateEmail(d.email); if (emailErr) errs.push(emailErr); @@ -864,24 +880,75 @@ function DirectorsStep({ - -