fix(membership): correct field names + Polish chars in PDF template
Some checks are pending
NordaBiz Tests / Unit & Integration Tests (push) Waiting to run
NordaBiz Tests / E2E Tests (Playwright) (push) Blocked by required conditions
NordaBiz Tests / Smoke Tests (Production) (push) Blocked by required conditions
NordaBiz Tests / Send Failure Notification (push) Blocked by required conditions

- krs → krs_number, contact_email → email, contact_phone → phone,
  contact_website → website, address_postal → address_postal_code,
  address_building → address_number, declaration_ip → declaration_ip_address,
  business_description → description
- legal_form: read from registry_data JSONB dict (legal_form / forma_prawna)
- ✓/✗ → Unicode ✓/✗ for WeasyPrint compatibility
- Polish text: Przystąpienia, złożenia, Źródło, Miejscowość, skrócona,
  oświadczenia, komunikację, działalności, przystąpienia, przyjmującą, główny

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Maciej Pienczyn 2026-03-30 12:17:51 +02:00
parent 86090a7d33
commit 0f22093f00

View File

@ -164,10 +164,10 @@
<div class="header">
<h1>Izba Gospodarcza Norda Biznes</h1>
<p class="subtitle">Deklaracja Przystapienia do Izby nr {{ app.id }}</p>
<p class="subtitle">Deklaracja Przystąpienia do Izby nr {{ app.id }}</p>
<p class="meta">
{{ app.company_name }}
| Data zlozenia: {{ app.submitted_at.strftime('%d.%m.%Y, %H:%M') if app.submitted_at else 'brak' }}
| Data złożenia: {{ app.submitted_at.strftime('%d.%m.%Y, %H:%M') if app.submitted_at else 'brak' }}
| Status: {{ app.status_label }}
</p>
</div>
@ -185,7 +185,7 @@
</div>
<div class="field">
<p class="field-label">KRS</p>
<p class="field-value">{{ app.krs or '---' }}</p>
<p class="field-value">{{ app.krs_number or '---' }}</p>
</div>
<div class="field">
<p class="field-label">REGON</p>
@ -193,10 +193,10 @@
</div>
<div class="field">
<p class="field-label">Forma prawna</p>
<p class="field-value">{{ app.legal_form or '---' }}</p>
<p class="field-value">{{ (app.registry_data.get('legal_form') or app.registry_data.get('forma_prawna')) if app.registry_data and app.registry_data is mapping else '---' }}</p>
</div>
<div class="field">
<p class="field-label">Zrodlo danych</p>
<p class="field-label">Źródło danych</p>
<p class="field-value">{{ app.registry_source or '---' }}</p>
</div>
</div>
@ -206,12 +206,12 @@
<h2 class="section-title">Adres siedziby</h2>
<div class="grid">
<div class="field">
<p class="field-label">Ulica</p>
<p class="field-value">{{ app.address_street or '---' }} {{ app.address_building or '' }}</p>
<p class="field-label">Ulica i numer</p>
<p class="field-value">{{ (app.address_street or '') }}{% if app.address_number %} {{ app.address_number }}{% endif %}</p>
</div>
<div class="field">
<p class="field-label">Kod pocztowy i miejscowosc</p>
<p class="field-value">{{ app.address_postal or '' }} {{ app.address_city or '---' }}</p>
<p class="field-label">Kod pocztowy i Miejscowość</p>
<p class="field-value">{{ app.address_postal_code or '' }} {{ app.address_city or '---' }}</p>
</div>
</div>
</div>
@ -221,18 +221,18 @@
<div class="grid">
<div class="field">
<p class="field-label">Email</p>
<p class="field-value">{{ app.contact_email or '---' }}</p>
<p class="field-value">{{ app.email or '---' }}</p>
</div>
<div class="field">
<p class="field-label">Telefon</p>
<p class="field-value">{{ app.contact_phone or '---' }}</p>
<p class="field-value">{{ app.phone or '---' }}</p>
</div>
<div class="field">
<p class="field-label">Strona WWW</p>
<p class="field-value">{{ app.contact_website or '---' }}</p>
<p class="field-value">{{ app.website or '---' }}</p>
</div>
<div class="field">
<p class="field-label">Nazwa skrocona</p>
<p class="field-label">Nazwa skrócona</p>
<p class="field-value">{{ app.short_name or '---' }}</p>
</div>
</div>
@ -242,7 +242,7 @@
<h2 class="section-title">Delegaci do Walnego Zgromadzenia</h2>
<div class="grid grid-3">
<div class="field">
<p class="field-label">Delegat 1 (glowny)</p>
<p class="field-label">Delegat 1 (główny)</p>
<p class="field-value">{{ app.delegate_1 or '---' }}</p>
</div>
<div class="field">
@ -265,32 +265,32 @@
</div>
{% endif %}
{% if app.business_description %}
{% if app.description %}
<div class="section">
<h2 class="section-title">Opis dzialalnosci</h2>
<p class="description">{{ app.business_description }}</p>
<h2 class="section-title">Opis działalności</h2>
<p class="description">{{ app.description }}</p>
</div>
{% endif %}
<div class="section">
<h2 class="section-title">Zgody i oswiadczenia</h2>
<h2 class="section-title">Zgody i oświadczenia</h2>
<div class="consent-row">
<span class="{{ 'check-yes' if app.consent_email else 'check-no' }}">{{ '&#x2713;' if app.consent_email else '&#x2717;' }}</span>
Zgoda na komunikacje e-mail
<span class="{{ 'check-yes' if app.consent_email else 'check-no' }}">{{ '✓' if app.consent_email else '✗' }}</span>
Zgoda na komunikację e-mail
</div>
<div class="consent-row">
<span class="{{ 'check-yes' if app.consent_sms else 'check-no' }}">{{ '&#x2713;' if app.consent_sms else '&#x2717;' }}</span>
Zgoda na komunikacje SMS
<span class="{{ 'check-yes' if app.consent_sms else 'check-no' }}">{{ '✓' if app.consent_sms else '✗' }}</span>
Zgoda na komunikację SMS
</div>
{% if app.declaration_accepted %}
<div class="declaration-box">
<span class="label">Deklaracja przystapiena:</span> Zaakceptowana
<span class="label">Deklaracja przystąpienia:</span> Zaakceptowana
{% if app.declaration_accepted_at %}
| Data: {{ app.declaration_accepted_at.strftime('%d.%m.%Y, %H:%M') }}
{% endif %}
{% if app.declaration_ip %}
| IP: {{ app.declaration_ip }}
{% if app.declaration_ip_address %}
| IP: {{ app.declaration_ip_address }}
{% endif %}
</div>
{% endif %}
@ -301,7 +301,7 @@
<div class="signature-line">Podpis wnioskodawcy</div>
</div>
<div>
<div class="signature-line">Podpis osoby przyjmujacej</div>
<div class="signature-line">Podpis osoby przyjmującej</div>
</div>
</div>