refactor: Remove duplicate sections for KRS companies

- Hide "Zarząd i Wspólnicy" section for companies with KRS API data
  (data is now in "Dane z rejestrów urzędowych" section)
- Hide "Informacje prawne i biznesowe" section for companies with KRS API data
  (NIP, REGON, forma prawna, kapitał - all in KRS section)
- Remove rejestr.io links (we now have official KRS API data)
- Keep PDF download button in legacy section
- Add CRBR and SUDOP registries to TODO for future integration

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Maciej Pienczyn 2026-02-01 08:06:40 +01:00
parent 66bb66dd36
commit ea17cdd106
2 changed files with 18 additions and 35 deletions

View File

@ -366,6 +366,15 @@ API: Google PageSpeed Insights
Szczegóły: `docs/DEVELOPMENT.md#audyt-seo` Szczegóły: `docs/DEVELOPMENT.md#audyt-seo`
## Dodatkowe rejestry (TODO - przyszłe integracje)
| Rejestr | Opis | API |
|---------|------|-----|
| **CRBR** | Centralny Rejestr Beneficjentów Rzeczywistych | https://crbr.podatki.gov.pl |
| **SUDOP** | System Udostępniania Danych o Pomocy Publicznej | https://sudop.uokik.gov.pl |
Rejestry te mogą dostarczyć dodatkowe dane o firmach (beneficjenci rzeczywiści, otrzymana pomoc publiczna).
## Plan rozwoju ## Plan rozwoju
Roadmap, priorytety i strategia monetyzacji: `docs/ROADMAP.md` Roadmap, priorytety i strategia monetyzacji: `docs/ROADMAP.md`

View File

@ -1055,8 +1055,8 @@
{% endif %} {% endif %}
{% endif %} {% endif %}
<!-- Zarząd i Wspólnicy Section --> <!-- Zarząd i Wspólnicy Section (ukryte dla firm z danymi KRS API - dane są w sekcji "Dane z rejestrów urzędowych") -->
{% if people %} {% if people and not (company.krs and company.data_source == 'KRS API') %}
<div class="company-section"> <div class="company-section">
<h2 class="section-title">Zarząd i Wspólnicy</h2> <h2 class="section-title">Zarząd i Wspólnicy</h2>
@ -1661,7 +1661,8 @@
<!-- KONIEC: DANE Z REJESTRÓW URZĘDOWYCH --> <!-- KONIEC: DANE Z REJESTRÓW URZĘDOWYCH -->
<!-- ============================================================ --> <!-- ============================================================ -->
<!-- Legacy: Legal & Business Info - Card Based --> <!-- Legacy: Legal & Business Info - Card Based (ukryte dla firm z danymi KRS API - dane są w sekcji "Dane z rejestrów urzędowych") -->
{% if not (company.krs and company.data_source == 'KRS API') %}
<div class="company-section"> <div class="company-section">
<h2 class="section-title">Informacje prawne i biznesowe</h2> <h2 class="section-title">Informacje prawne i biznesowe</h2>
@ -1783,22 +1784,16 @@
<div style="font-size: var(--font-size-sm); color: var(--text-secondary); text-transform: uppercase; letter-spacing: 0.05em;">KRS</div> <div style="font-size: var(--font-size-sm); color: var(--text-secondary); text-transform: uppercase; letter-spacing: 0.05em;">KRS</div>
<div style="font-size: var(--font-size-xl); font-weight: 700; color: #ef4444; font-family: monospace;">{{ company.krs }}</div> <div style="font-size: var(--font-size-xl); font-weight: 700; color: #ef4444; font-family: monospace;">{{ company.krs }}</div>
</div> </div>
<div style="margin-left: auto; display: flex; gap: var(--spacing-sm); flex-wrap: wrap;"> {% if company.krs_pdf_path %}
{% if company.krs_pdf_path %} <div style="margin-left: auto;">
<a href="/admin/krs-api/pdf/{{ company.id }}" target="_blank" rel="noopener noreferrer" <a href="/admin/krs-api/pdf/{{ company.id }}" target="_blank" rel="noopener noreferrer"
style="padding: 8px 16px; background: #ef4444; color: white; border-radius: var(--radius); text-decoration: none; font-size: var(--font-size-sm); font-weight: 600; white-space: nowrap; display: inline-flex; align-items: center; gap: 6px;" style="padding: 8px 16px; background: #ef4444; color: white; border-radius: var(--radius); text-decoration: none; font-size: var(--font-size-sm); font-weight: 600; white-space: nowrap; display: inline-flex; align-items: center; gap: 6px;"
title="Pobierz odpis pełny KRS w formacie PDF"> title="Pobierz odpis pełny KRS w formacie PDF">
<svg width="16" height="16" fill="currentColor" viewBox="0 0 24 24"><path d="M14,2H6A2,2 0 0,0 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2M18,20H6V4H13V9H18V20M10,13H7V11H10V13M14,13H11V11H14V13M10,16H7V14H10V16M14,16H11V14H14V16Z"/></svg> <svg width="16" height="16" fill="currentColor" viewBox="0 0 24 24"><path d="M14,2H6A2,2 0 0,0 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2M18,20H6V4H13V9H18V20M10,13H7V11H10V13M14,13H11V11H14V13M10,16H7V14H10V16M14,16H11V14H14V16Z"/></svg>
Odpis PDF Odpis PDF
</a> </a>
{% endif %}
<a href="https://rejestr.io/krs/{{ company.krs|int }}" target="_blank" rel="noopener noreferrer"
style="padding: 8px 16px; background: #10b981; color: white; border-radius: var(--radius); text-decoration: none; font-size: var(--font-size-sm); font-weight: 600; white-space: nowrap; display: inline-flex; align-items: center; gap: 6px;"
title="Powiązania osobowe, władze, beneficjenci, pomoc publiczna">
<svg width="16" height="16" fill="currentColor" viewBox="0 0 24 24"><path d="M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"/></svg>
Sprawdź w rejestr.io
</a>
</div> </div>
{% endif %}
</div> </div>
<div style="font-size: var(--font-size-sm); color: var(--text-secondary); padding-left: 60px; margin-top: var(--spacing-sm);"> <div style="font-size: var(--font-size-sm); color: var(--text-secondary); padding-left: 60px; margin-top: var(--spacing-sm);">
Źródło: <strong style="color: #10b981;">Krajowy Rejestr Sądowy</strong> Źródło: <strong style="color: #10b981;">Krajowy Rejestr Sądowy</strong>
@ -1810,29 +1805,6 @@
{% endif %} {% endif %}
</div> </div>
</div> </div>
{% else %}
<!-- Search in registries for companies without KRS -->
<div style="background: var(--background); border-radius: var(--radius-lg); padding: var(--spacing-lg); border: 2px dashed #94a3b8;">
<div style="display: flex; align-items: center; gap: var(--spacing-md); flex-wrap: wrap;">
<div style="width: 48px; height: 48px; border-radius: 12px; display: flex; align-items: center; justify-content: center; background: #94a3b8; color: white;">
<svg width="24" height="24" fill="currentColor" viewBox="0 0 24 24">
<path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"/>
</svg>
</div>
<div>
<div style="font-size: var(--font-size-sm); color: var(--text-secondary); text-transform: uppercase; letter-spacing: 0.05em;">Szukaj w rejestrach</div>
<div style="font-size: var(--font-size-base); color: var(--text-secondary);">Firma bez KRS - wyszukaj po NIP</div>
</div>
<div style="margin-left: auto;">
<a href="https://rejestr.io/szukaj?q={{ company.nip }}" target="_blank" rel="noopener noreferrer"
style="padding: 8px 16px; background: #10b981; color: white; border-radius: var(--radius); text-decoration: none; font-size: var(--font-size-sm); font-weight: 600; white-space: nowrap; display: inline-flex; align-items: center; gap: 6px;"
title="Szukaj firmy po NIP w rejestr.io">
<svg width="16" height="16" fill="currentColor" viewBox="0 0 24 24"><path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"/></svg>
Szukaj w rejestr.io
</a>
</div>
</div>
</div>
{% endif %} {% endif %}
<!-- Year Established Card --> <!-- Year Established Card -->
@ -1985,6 +1957,8 @@
</div> </div>
</div> </div>
{% endif %}
{# Koniec warunku: not (company.krs and company.data_source == 'KRS API') #}
<!-- Contact Information - Card Based --> <!-- Contact Information - Card Based -->
<div class="company-section"> <div class="company-section">