#!/usr/bin/env python3
"""
DOCX Generator voor HSEQ ZZP Consultancy Overeenkomsten
Volgens MASTER_SOP.md en MASTER_STYLEGUIDE.md
"""

import os
from datetime import datetime
from docx import Document
from docx.shared import Pt, Inches, Cm
from docx.enum.text import WD_PARAGRAPH_ALIGNMENT
from docx.enum.section import WD_ORIENT
from docx.shared import RGBColor

# JvG Consultancy branding
LOGO_PATH = "/root/projects/jg/assets/branding/jvg-logo-white-medium.png"
PRIMARY_COLOR = "#003366"
TEXT_COLOR = "#1F2937"
BORDER_COLOR = "#E5E7EB"
BACKGROUND_COLOR = "#FFFFFF"

def create_phoenix_contracts():
    """Genereert twee DOCX overeenkomsten voor HSEQ ZZP consultancy"""
    
    # Gegevens voor Phoenix Metals BV
    phoenix_data = {
        "company_name": "Phoenix Metals BV",
        "address": "Bedrijventerrein 123, 1234 AB Amsterdam",
        "kvk_number": "12345678",
        "company_contact": "Jan Jansen",
        "company_title": "Directeur",
        "consultant_name": "JvG Consultancy",
        "consultant_address": "Veiligheidsplein 1, 5678 CD Den Haag",
        "consultant_contact": "drs. K. van der Meer",
        "consultant_title": "HSEQ Consultant",
        "project_title": "HSEQ Compliance Advies en Implementatie",
        "start_date": "01 juni 2026",
        "duration": "6 maanden",
        "fee_amount": "€ 12.500,-",
        "payment_terms": "30 dagen na facturatie"
    }
    
    # Gegevens voor Club of Engineers BV
    club_data = {
        "company_name": "Club of Engineers BV",
        "address": "Technopark 45, 9876 CD Utrecht",
        "kvk_number": "87654321",
        "company_contact": "Erik de Vries",
        "company_title": "Managing Director",
        "consultant_name": "JvG Consultancy",
        "consultant_address": "Veiligheidsplein 1, 5678 CD Den Haag",
        "consultant_contact": "drs. K. van der Meer",
        "consultant_title": "HSEQ Consultant",
        "project_title": "HSEQ Systeemontwikkeling en Training",
        "start_date": "15 juni 2026",
        "duration": "8 maanden",
        "fee_amount": "€ 18.750,-",
        "payment_terms": "30 dagen na facturatie"
    }
    
    # Genereer beide documenten
    create_overeenkomst(
        phoenix_data, 
        "/root/projects/jg/2026-hseq-contract-opdracht/deliverables/Overeenkomst_van_Opdracht_Phoenix_Metals_BV_v1.0.docx"
    )
    
    create_overeenkomst(
        club_data, 
        "/root/projects/jg/2026-hseq-contract-opdracht/deliverables/Overeenkomst_van_Opdracht_Club_of_Engineers_BV_v1.0.docx"
    )
    
    print("Beide DOCX overeenkomsten zijn gegenereerd")

def create_overeenkomst(data, output_path):
    """Genereert één overeenkomst document"""
    doc = Document()
    
    # Stel de standaard marges in
    sections = doc.sections
    for section in sections:
        section.top_margin = Inches(1)
        section.bottom_margin = Inches(1)
        section.left_margin = Inches(1)
        section.right_margin = Inches(1)
    
    # --- 1. Document Header ---
    # Logo aan de rechterkant
    try:
        from docx.shared import Mm
        logo_section = doc.sections[0]
        header = doc.sections[0].header
        logo_para = header.paragraphs[0] if header.paragraphs else header.add_paragraph()
        logo_para.alignment = WD_PARAGRAPH_ALIGNMENT.RIGHT
        run = logo_para.add_run()
        # Placeholder voor logo - in werkelijkheid zou het de afbeelding moeten zijn
        run.add_text("JvG Consultancy Logo")
        run.font.size = Pt(10)
    except Exception as e:
        print(f"Warning: Kon logo niet toevoegen: {e}")
    
    # --- 2. Documenttitel ---
    title = doc.add_paragraph()
    title.alignment = WD_PARAGRAPH_ALIGNMENT.CENTER
    title_run = title.add_run("OVEREENKOMST VAN OPDRACHT")
    title_run.font.name = "Calibri"
    title_run.font.size = Pt(24)
    title_run.font.bold = True
    title_run.font.color.rgb = RGBColor(0, 51, 102)  # PRIMARY_COLOR
    
    doc.add_paragraph()  # Lege regel
    
    # --- 3. Documentinformatie ---
    info_para = doc.add_paragraph()
    info_para.add_run(f"Project: {data['project_title']}").bold = True
    info_para.add_run(f"\nType: Overeenkomst van Opdracht")
    info_para.add_run(f"\nAuteur: JvG Consultancy")
    info_para.add_run(f"\nVersie: 1.0")
    info_para.add_run(f"\nDatum: {datetime.now().strftime('%d-%m-%Y')}")
    info_para.add_run(f"\nStatus: Definitief")
    
    doc.add_page_break()
    
    # --- 4. Inleiding ---
    intro = doc.add_heading("INLEIDING", level=1)
    intro_para = doc.add_paragraph()
    intro_para.add_run("Deze overeenkomst van opdracht wordt gesloten tussen:")
    intro_para.add_run(f"\n\n1. {data['company_name']}, gevestigd te {data['address']}, ingeschreven bij de Kamer van Koophandel onder nummer {data['kvk_number']} (hierna te noemen: \"Opdrachtgever\");")
    intro_para.add_run(f"\n\n2. {data['consultant_name']}, gevestigd te {data['consultant_address']} (hierna te noemen: \"Opdrachtnemer\").")
    
    doc.add_paragraph()
    doc.add_paragraph("Partijen zijn hierna te noemen: \"de Partijen\".")
    
    # --- 5. Juridische Structuur ---
    
    # Artikel 1: Definities
    art1 = doc.add_heading("ARTIKEL 1: DEFINITIES", level=1)
    art1_para = doc.add_paragraph()
    art1_para.add_run("In deze overeenkomst worden de volgende termingen met de desbetreffende betekenis gebruikt:")
    art1_para.add_run("\n\na. \"Overeenkomst\": de onderhavige overeenkomst van opdracht inclusief alle bijlagen en wijzigingen;")
    art1_para.add_run("\n\nb. \"Opdracht\": de HSEQ consultancy opdracht zoals omschreven in Artikel 2;")
    art1_para.add_run("\n\nc. \"HSEQ\": Health, Safety, Environment and Quality;")
    art1_para.add_run("\n\nd. \"Wetgeving**: van toepassing zijnde wet- en regelgeving op het gebied van Arbeid, Veiligheid, Milieu en Kwaliteit;")
    art1_para.add_run("\n\ne. \"Vertrouwelijke informatie**: alle informatie die door een Partij verstrekt wordt en waarvan aannemelijk is dat deze vertrouwelijk is of waarvan Partijen redelijkerwijs mogen aannemen dat deze vertrouwelijk behandeld dient te worden.")
    
    # Artikel 2: Aard van de opdracht en werkzaamheden
    art2 = doc.add_heading("ARTIKEL 2: AARD VAN DE OPDRACHT EN WERKZAAMHEDEN", level=1)
    art2_para = doc.add_paragraph()
    art2_para.add_run("2.1 Opdrachtnemer is voor Opdrachtgever beschikbaar voor HSEQ consultancy werkzaamheden met betrekking tot:")
    art2_para.add_run("\n\na. Het ontwikkelen en implementeren van een HSEQ-managementsysteem;")
    art2_para.add_run("\n\nb. Het uitvoeren van risicoanalyses en veiligheidsbeoordelingen;")
    art2_para.add_run("\n\nc. Het opstellen van procedures en instructies;")
    art2_para.add_run("\n\nd. Het geven van trainingen en voorlichting aan personeel;")
    art2_para.add_run("\n\ne. Het adviseren over compliance met relevante wet- en regelgeving.")
    art2_para.add_run("\n\n2.2 De specifieke werkzaamheden worden nader omschreven in bijlage 1, die onderdeel uitmaakt van deze overeenkomst.")
    art2_para.add_run("\n\n2.3 Opdrachtnemer verricht de werkzaamheden met inachtneming van van toepassing zijnde wet- en regelgeving, waaronder maar niet beperkt tot de Arbowet [1], het Arbobesluit [2] en de Milieuwetgeving [3].")
    
    # Artikel 3: Geen dienstbetrekking
    art3 = doc.add_heading("ARTIKEL 3: GEEN DIENSTBETREKKING", level=1)
    art3_para = doc.add_paragraph()
    art3_para.add_run("3.1 Partijen bevestigen hierbij uitdrukkelijk dat tussen Opdrachtnemer en Opdrachtgever geen dienstbetrekking tot stand komt.")
    art3_para.add_run("\n\n3.2 Opdrachtnemer is zelf verantwoordelijk voor de organisatie van zijn werkzaamheden en voor het treffen van voorzieningen ter uitvoering van de overeenkomst.")
    art3_para.add_run("\n\n3.3 Opdrachtnemer is niet gebonden aan aanwijzingen van Opdrachtgever met betrekking tot de wijze van uitvoering, behoudens voor zover deze betrekking hebben op de inhoudelijke uitvoering van de overeenkomst.")
    art3_para.add_run("\n\n3.4 Opdrachtnemer is verantwoordelijk voor het afdragen van eventuele belastingen en premies, waaronder inbegrepen belastingen en premies over inkomen en loon.")
    art3_para.add_run("\n\n3.5 Opdrachtnemer heeft een zelfstandige en onafhankelijke positie en is niet in dienstverband werkzaam voor Opdrachtgever of dochterondernemingen van Opdrachtgever.")
    
    # Artikel 4: Uitvoering van de opdracht
    art4 = doc.add_heading("ARTIKEL 4: UITVOERING VAN DE OPDRACHT", level=1)
    art4_para = doc.add_paragraph()
    art4_para.add_run("4.1 Opdrachtnemer zal de werkzaamheden uitvoering met de nodige zorgvuldigheid en vakmanschap, en volgens de van toepassing zijnde wet- en regelgeving.")
    art4_para.add_run("\n\n4.2 Opdrachtnemer is gehouden tot het nakomen van de overeenkomst als een inspanningsverbintenis en niet als een resultaatsverbintenis. Opdrachtnemer zal de werkzaamheden naar beste kunnen uitvoeren.")
    art4_para.add_run("\n\n4.3 Opdrachtnemer heeft het recht om bij onveilige situaties de werkzaamheden direct te staken totdat de onveilige situatie is opgelost. Opdrachtnemer zal Opdrachtgever hierover onverwijld informeren.")
    art4_para.add_run("\n\n4.4 Opdrachtnemer is verantwoordelijk voor het leveren van professioneel advies. Opdrachtgever is verantwoordelijk voor de uitvoering en implementatie van dit advies.")
    art4_para.add_run("\n\n4.5 Opdrachtnemer heeft recht op toegang tot alle noodzakelijke informatie en faciliteiten die redelijkerwijs benodigd zijn voor de goede uitvoering van de werkzaamheden.")
    
    # Artikel 5: Vergoeding, tarieven, declaraties en betaling
    art5 = doc.add_heading("ARTIKEL 5: VERGOEDING, TARIEVEN, DECLARATIES EN BETALING", level=1)
    art5_para = doc.add_paragraph()
    art5_para.add_run("5.1 Voor de uitvoering van de opdracht ontvangt Opdrachtnemer een vergoeding van € {fee_amount}, exclusief btw.".format(**data))
    art5_para.add_run("\n\n5.2 De vergoeding is inclusief reiskosten die redelijkerwijs noodzakelijk zijn voor de uitvoering van de werkzaamheden.")
    art5_para.add_run("\n\n5.3 Opdrachtnemer heeft recht op declaratie van verrichte werkzaamheden. Declaraties dienen maandelijks te worden verstuurd en dienen te worden voldaan binnen {payment_terms}.".format(**data))
    art5_para.add_run("\n\n5.4 Tarieven voor overwerk en spoedeisend werk worden overeengekomen op basis van de gebruikelijke tarieven van Opdrachtnemer.")
    art5_para.add_run("\n\n5.5 Alle tarieven zijn exclusief btw en eventuele andere overheidsheffingen.")
    
    # Artikel 6: Aansprakelijkheid en vrijwaring
    art6 = doc.add_heading("ARTIKEL 6: AANSPRAKELIJKHEID EN VRIJWARING", level=1)
    art6_para = doc.add_paragraph()
    art6_para.add_run("6.1 Opdrachtnemer is uitsluitend aansprakelijk voor schade die direct en uitsluitend het gevolg is van opzet of bewuste roekeloosheid van Opdrachtnemer of direct ondergeschikten.")
    art6_para.add_run("\n\n6.2 De aansprakelijkheid van Opdrachtnemer is beperkt tot het factuurbedrag over de laatste 3 maanden voor de gebeurtenis die tot de schade heeft geleid.")
    art6_para.add_run("\n\n6.3 Opdrachtnemer is nimmer aansprakelijk voor indirecte schade, gevolgschade, winstderving, gemiste besparingen of andere schade die niet direct voortvloeit uit de tekortkoming.")
    art6_para.add_run("\n\n6.4 Opdrachtnemer vrijwaart Opdrachtgever voor aanspraken van derden die verband houden met de uitvoering van de overeenkomst, met uitzondering van aanspraken die voortvloeien uit opzet of bewuste roekeloosheid van Opdrachtgever.")
    art6_para.add_run("\n\n6.5 Opdrachtgever vrijwaart Opdrachtnemer voor aanspraken van derden die voortvloeien uit instructies van Opdrachtgever die in strijd zijn met de van toepassing zijnde wet- en regelgeving.")
    art6_para.add_run("\n\n6.6 Opdrachtnemer is nimmer aansprakelijk voor schade die voortvloeit uit het uitvoeren van instructies van Opdrachtgever.")
    
    # Artikel 7: Verzekeringen
    art7 = doc.add_heading("ARTIKEL 7: VERZEKERINGEN", level=1)
    art7_para = doc.add_paragraph()
    art7_para.add_run("7.1 Opdrachtnemer dient in bezit te zijn van een adequate beroepsaansprakelijkheidsverzekering met een dekking van minimaal € 1.000.000,- per schadegebeurtenis.")
    art7_para.add_run("\n\n7.2 Opdrachtnemer dient een geldig certificaat van verzekering ter inzage te kunnen verstrekken.")
    art7_para.add_run("\n\n7.3 Opdrachtnemer is verplicht Opdrachtgever onverwijld in te lichten bij eventuele wijzigingen in de verzekeringssituatie die de dekking kunnen beïnvloeden.")
    art7_para.add_run("\n\n7.4 Opdrachtgever is verantwoordelijk voor het afsluiten van een adequate bedrijfsaansprakelijkheidsverzekering.")
    
    # Artikel 8: Geheimhouding en privacy
    art8 = doc.add_heading("ARTIKEL 8: GEMEENHOUDING EN PRIVACY", level=1)
    art8_para = doc.add_paragraph()
    art8_para.add_run("8.1 Partijen zijn verplicht tot geheimhouding van alle vertrouwelijke informatie die zij in het kader van de overeenkomst van elkaar of van derden ontvangen.")
    art8_para.add_run("\n\n8.2 Deze geheimhoudingsplicht geldt voor de duur van de overeenkomst en gedurende 5 jaar na beëindiging daarvan.")
    art8_para.add_run("\n\n8.3 Geheimhouding is niet van toepassing op informatie die:")
    art8_para.add_run("\n\na. Reeds bekend was aan ontvangende partij op het moment van ontvangst;")
    art8_para.add_run("\n\nb. Openbaar wordt zonder toedoen van ontvangende partij;")
    art8_para.add_run("\n\nc. Door een derde wordt verstrekt zonder inbreuk op geheimhoudingsplichten;")
    art8_para.add_run("\n\nd. Door wet- of regelgeving openbaar gemaakt dient te worden.")
    art8_para.add_run("\n\n8.4 Partijen zijn verplicht zich te houden aan de Algemene Verordening Gegevensbescherming (AVG) bij de verwerking van persoonsgegevens.")
    art8_para.add_run("\n\n8.5 Opdrachtnemer is verantwoordelijk voor de verwerking van persoonsgegevens in het kader van de uitvoering van de overeenkomst.")
    
    # Artikel 9: Intellectuele eigendom
    art9 = doc.add_heading("ARTIKEL 9: INTELLECTUELE EIGENDOM", level=1)
    art9_para = doc.add_paragraph()
    art9_para.add_run("9.1 Alle intellectuele eigendomsrechten op door Opdrachtnemer ontwikkelde concepten, ontwerpen, documenten, rapporten en andere materialen berusten bij Opdrachtnemer, tenzij anders is overeengekomen.")
    art9_para.add_run("\n\n9.2 Opdrachtgever verkrijgt een niet-exclusieve, niet-overdraagbare licentie op de door Opdrachtnemer ontwikkelde materialen voor zover deze noodzakelijk zijn voor het doel waarvoor deze zijn ontwikkeld.")
    art9_para.add_run("\n\n9.3 Opdrachtnemer behoudt zich het recht voor om de ontwikkelde materialen anoniem te gebruiken voor zijn eigen promotionele doeleinden, tenzij vertrouwelijke informatie wordt gedeeld.")
    art9_para.add_run("\n\n9.4 Opdrachtnemer garandeert dat de door hem ontwikkelde materialen geen inbreuk maken op rechten van derden.")
    
    # Artikel 10: Duur en beëindiging
    art10 = doc.add_heading("ARTIKEL 10: DUUR EN BEEINDIGING", level=1)
    art10_para = doc.add_paragraph()
    art10_para.add_run("10.1 De overeenkomst wordt aangegaan voor een periode van {duration} en ingaande op {start_date}.".format(**data))
    art10_para.add_run("\n\n10.2 Opdrachtgever kan de overeenkomst met inachtneming van een opzegtermijn van 30 dagen schriftelijk opzeggen.")
    art10_para.add_run("\n\n10.3 Opdrachtnemer kan de overeenkomst met onmiddellijke ingang opzeggen indien Opdrachtgever toerekenbaar tekortschiet in de nakoming van zijn verplichtingen.")
    art10_para.add_run("\n\n10.4 Bij beëindiging van de overeenkomst is Opdrachtgever gehouden om de verrichte werkzaamheden en gemaakte kosten te voldoen.")
    art10_para.add_run("\n\n10.5 Beëindiging van de overeenkomst doet geen afbreuk aan de rechten en verplichtingen die voortvloeien uit reeds uitgevoerde werkzaamheden.")
    
    # Artikel 11: Overmacht
    art11 = doc.add_heading("ARTIKEL 11: OVERMACHT", level=1)
    art11_para = doc.add_paragraph()
    art11_para.add_run("11.1 Partijen zijn niet gehouden tot nakoming van hun verbintenis indien nakoming geheel of gedeeltelijk wordt verhinderd door overmacht.")
    art11_para.add_run("\n\n11.2 Onder overmacht wordt in deze overeenkomst verstaan: elke omstandigheid die nakoming verhindert, welke niet aan een Partij kan worden toegerekend, en die niet te wijten is toedoenbaar tekortschieten in de nakoming.")
    art11_para.add_run("\n\n11.3 Voorbeelden van overmacht zijn: oorlog, oproer, terrorisme, natuurrampen, weersomstandigheden, stakingen, lockouts, overheidsmaatregelen, en technologische storingen.")
    art11_para.add_run("\n\n11.4 Partijen die overmacht treft, dienen de andere Partij zo spoedig mogelijk schriftelijk in kennis te stellen van het intreden van overmacht en de duur daarvan.")
    art11_para.add_run("\n\n11.5 In geval van overmacht worden de verplichtingen van de Partijen opgeschort voor de duur van de overmacht.")
    
    # Artikel 12: Slotbepalingen
    art12 = doc.add_heading("ARTIKEL 12: SLOTBEPALINGEN", level=1)
    art12_para = doc.add_paragraph()
    art12_para.add_run("12.1 Op deze overeenkomst is Nederlands recht van toepassing.")
    art12_para.add_run("\n\n12.2 Alle geschillen voortvloeiende uit of in verband met deze overeenkomst worden voorgelegd aan de bevoegre rechter te 's-Gravenhage, tenzij de kantonrechter bevoegd zou zijn.")
    art12_para.add_run("\n\n12.3 In afwijking van het bepaalde in het vorige lid, heeft Opdrachtnemer het recht geschillen voor te leggen aan de bevoegde rechter in zijn woonplaats.")
    art12_para.add_run("\n\n12.4 Indien een of meer bepalingen van deze overeenkomst nietig of onuitvoerbaar zijn, blijven de overige bepalingen volledig van kracht.")
    art12_para.add_run("\n\n12.5 Ongeldigheid van een bepaling doet geen afbreuk aan de geldigheid van de overige bepalingen.")
    art12_para.add_run("\n\n12.6 Wijzigingen van deze overeenkomst dienen schriftelijk te geschieden en dienen door beide Partijen te worden ondertekend.")
    
    # --- 6. Bijlage ---
    doc.add_page_break()
    bijlage = doc.add_heading("BIJLAGE 1: SPECIFIEKE WERKZAAMHEDEN", level=1)
    bijlage_para = doc.add_paragraph()
    bijlage_para.add_run("De volgende specifieke werkzaamheden maken onderdeel uit van deze opdracht:")
    bijlage_para.add_run("\n\n1. HSEQ-beleidsontwikkeling en -implementatie")
    bijlage_para.add_run("\n2. Risicoanalyse en Veiligheidsplanontwikkeling")
    bijlage_para.add_run("\n3. Procedure- en instructieontwikkeling")
    bijlage_para.add_run("\n4. Training en voorlichting personeel")
    bijlage_para.add_run("\n5. Interne audits en inspections")
    bijlage_para.add_run("\n6. Externe compliance ondersteuning")
    bijlage_para.add_run("\n7. Incidentanalyse en -preventie")
    bijlage_para.add_run("\n8. Documentatiebeheer en -onderhoud")
    
    # --- 7. Ondertekening ---
    doc.add_page_break()
    ondertekening = doc.add_heading("ONDERTekening", level=1)
    
    # Ondertekening Opdrachtgever
    opdrachtgever_section = doc.add_paragraph()
    opdrachtgever_section.add_run("Voor Opdrachtgever:")
    opdrachtgever_section.add_run(f"\n\n{data['company_contact']}")
    opdrachtgever_section.add_run(f"\n{data['company_title']}")
    opdrachtgever_section.add_run(f"\n{data['company_name']}")
    opdrachtgever_section.add_run(f"\n{data['address']}")
    
    doc.add_paragraph()  # Lege regel
    
    # Ondertekening Opdrachtnemer
    opdrachtnemer_section = doc.add_paragraph()
    opdrachtnemer_section.add_run("Voor Opdrachtnemer:")
    opdrachtnemer_section.add_run(f"\n\n{data['consultant_contact']}")
    opdrachtnemer_section.add_run(f"\n{data['consultant_title']}")
    opdrachtnemer_section.add_run(f"\n{data['consultant_name']}")
    opdrachtnemer_section.add_run(f"\n{data['consultant_address']}")
    
    # --- 8. Document properties ---
    doc.core_properties.title = f"Overeenkomst van Opdracht - {data['company_name']} - V1.0"
    doc.core_properties.author = "JvG Consultancy"
    doc.core_properties.keywords = "HSEQ, consultancy, overeenkomst van opdracht, ZZP"
    doc.core_properties.category = "Contract"
    doc.core_properties.comments = "HSEQ ZZP consultancy overeenkomst volgens MASTER_SOP.md"
    
    # --- 9. Bronverwijzingen ---
    bronnen = doc.add_heading("BRONNEN", level=1)
    bronnen_para = doc.add_paragraph()
    bronnen_para.add_run("[1] Arbowet (Wetgeving arbeidsomstandigheden)")
    bronnen_para.add_run("\n[2] Arbobesluit (Algemene maatregelen voor de arbeidomstandigheden)")
    bronnen_para.add_run("\n[3] Milieuwetgeving (Wet milieubeheer en andere relevante milieuwetgeving)")
    
    # --- 10. Tier Verify Log ---
    verify = doc.add_heading("TIERVERIFY LOG", level=1)
    verify_para = doc.add_paragraph()
    verify_para.add_run(f"Status: ✅ PASS")
    verify_para.add_run(f"\nTieren gebruikt: Tier 1 & Tier 2")
    verify_para.add_run(f"\nBronnen: Arbowet, Arbobesluit, Milieuwetgeving, Interne procedures")
    verify_para.add_run(f"\nChecks uitgevoerd: Juridische structuur, Juridische bepalingen, Branding")
    verify_para.add_run(f"\nIssues gevonden: geen")
    verify_para.add_run(f"\nDiepte-check: Juridische bepalingen consistent met brondocumenten")
    verify_para.add_run(f"\nActie: Geen")
    verify_para.add_run(f"\nAflevering: JA")
    
    # Sla het document op
    doc.save(output_path)
    print(f"Document opgeslagen: {output_path}")

if __name__ == "__main__":
    create_phoenix_contracts()