import { formatDatum } from '@/lib/utils' /** * Gemeinsame Bausteine der Anschreiben an Versicherer. * * Der erzeugte Text ist Freitext zum Kopieren und Bearbeiten - bewusst * kein fertiges PDF. Jeder Fall hat eine Besonderheit, die in den Brief * gehoert, und ein Formulartext, den man nicht mehr aendern kann, wird * frueher oder falsch abgeschickt. Die PDF-Erzeugung kommt in Etappe 7. */ export type Briefkopf = { /** Ich als Betreuer. */ betreuerName: string betreuerStrasse?: string | null betreuerPlz?: string | null betreuerOrt?: string | null /** Die betreute Person. */ betreuteName: string betreuteGeburtsdatum: Date | null betreuteAnschrift?: string | null /** Betreuungsgericht und Aktenzeichen - Nachweis der Bestellung. */ betreuungsgericht?: string | null aktenzeichenGericht?: string | null bestellungAm?: Date | null } export type Empfaenger = { gesellschaft: string | null anschrift?: string | null } export function anschriftBlock(empfaenger: Empfaenger): string { const zeilen = [empfaenger.gesellschaft ?? '[Name der Gesellschaft]'] if (empfaenger.anschrift) { zeilen.push(...empfaenger.anschrift.split('\n').map((z) => z.trim()).filter(Boolean)) } else { zeilen.push('[Straße und Hausnummer]', '[PLZ und Ort]') } return zeilen.join('\n') } export function absenderBlock(kopf: Briefkopf): string { const zeilen = [kopf.betreuerName] if (kopf.betreuerStrasse) zeilen.push(kopf.betreuerStrasse) const ort = [kopf.betreuerPlz, kopf.betreuerOrt].filter(Boolean).join(' ') if (ort) zeilen.push(ort) return zeilen.join('\n') } /** * Der Absatz, der in jedem Schreiben stehen muss: Wer bin ich, und woraus * folgt meine Vertretungsmacht? Ohne ihn kommt die Antwort "aus * datenschutzrechtlichen Gruenden koennen wir Ihnen keine Auskunft * erteilen" - und dann ist ein Monat vergangen. */ export function bestellungsAbsatz(kopf: Briefkopf): string { const gericht = kopf.betreuungsgericht ?? '[Betreuungsgericht]' const az = kopf.aktenzeichenGericht ?? '[Aktenzeichen]' const seit = kopf.bestellungAm ? `mit Beschluss vom ${formatDatum(kopf.bestellungAm)}` : '[Datum des Bestellungsbeschlusses ergänzen]' return ( `ich bin ${seit} vom ${gericht} (Az. ${az}) zum rechtlichen Betreuer ` + `für ${kopf.betreuteName} bestellt; der Aufgabenkreis umfasst die ` + `Vermögenssorge. Eine Kopie der Bestellungsurkunde füge ich bei. ` + `Ich handele damit als gesetzlicher Vertreter (§ 1823 BGB).` ) } export function betreffZeile( gegenstand: string, vertragsnummer: string | null, betreuteName: string, geburtsdatum: Date | null, ): string { const nummer = vertragsnummer ? `Vertragsnummer ${vertragsnummer}` : 'Vertragsnummer [bitte ergänzen]' const geboren = geburtsdatum ? `, geboren am ${formatDatum(geburtsdatum)}` : '' return `Betreff: ${gegenstand}\n${nummer}\nVersicherungsnehmerin: ${betreuteName}${geboren}` } export function datumsZeile(ort: string | null | undefined, datum: Date): string { return `${ort ? `${ort}, den ` : ''}${formatDatum(datum)}` } export function grussformel(betreuerName: string): string { return `Mit freundlichen Grüßen\n\n\n${betreuerName}\nRechtlicher Betreuer` }