nordabiz/.claude/commands/add-company.md
Maciej Pienczyn 110d971dca
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
feat: migrate prod docs to OVH VPS + UTC→Warsaw timezone in all templates
Production moved from on-prem VM 249 (10.22.68.249) to OVH VPS
(57.128.200.27, inpi-vps-waw01). Updated ALL documentation, slash
commands, memory files, architecture docs, and deploy procedures.

Added |local_time Jinja filter (UTC→Europe/Warsaw) and converted
155 .strftime() calls across 71 templates so timestamps display
in Polish timezone regardless of server timezone.

Also includes: created_by_id tracking, abort import fix, ICS
calendar fix for missing end times, Pros Poland data cleanup.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 13:41:53 +02:00

117 lines
3.4 KiB
Markdown

# Add New Company to NordaBiz
Kreator dodawania nowej firmy członkowskiej do katalogu NordaBiz.
## Argument: $ARGUMENTS
Jeśli podano argument (np. `/add-company Pixlab`), użyj go jako nazwy firmy do wyszukania.
## Kroki do wykonania:
### 1. Zbierz informacje o firmie
Zapytaj użytkownika o dane lub wyszukaj na https://norda-biznes.info/czlonkowie:
**Wymagane:**
- Nazwa prawna (legal_name)
- Nazwa handlowa (business_name) - jeśli inna
- NIP (10 cyfr bez myślników)
- Email kontaktowy
- Kategoria: IT, Construction, Services, Production, Trade, Other
**Opcjonalne:**
- REGON (9 lub 14 cyfr)
- KRS (10 cyfr, tylko spółki)
- Telefon
- Strona www
- Adres (ulica, miasto, kod pocztowy)
- Opis działalności
### 2. Weryfikacja NIP
Przed dodaniem zweryfikuj NIP przez API:
```bash
curl -s "http://localhost:5000/api/verify-nip?nip=NUMER_NIP"
```
Lub przez zewnętrzne API (jeśli lokalna aplikacja nie działa).
### 3. Generuj slug
Slug = kebab-case z nazwy firmy:
- "Pixlab Sp. z o.o." → "pixlab-sp-z-o-o"
- "ABC Usługi" → "abc-uslugi"
- Usuń znaki specjalne, zamień spacje na myślniki, lowercase
### 4. Sprawdź duplikaty (DEV via Docker)
```bash
docker exec nordabiz-postgres psql -U nordabiz_app -d nordabiz -c "SELECT slug, legal_name FROM companies WHERE nip='NUMER_NIP' OR slug LIKE '%FRAGMENT%';"
```
### 5. Utwórz skrypt importu
Wygeneruj plik `import_NEW_COMPANY.py` używający SQLAlchemy:
```python
#!/usr/bin/env python3
"""Import firmy [NAZWA] do bazy NordaBiz."""
import os
import sys
sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
from datetime import datetime
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
from database import Company, Category
DATABASE_URL = os.environ.get('DATABASE_URL', 'postgresql://nordabiz_app:dev_password@localhost:5433/nordabiz')
def import_company():
engine = create_engine(DATABASE_URL)
Session = sessionmaker(bind=engine)
session = Session()
# Znajdź kategorię
category = session.query(Category).filter_by(name='Services').first()
company = Company(
slug='nazwa-firmy',
name='Nazwa Handlowa',
legal_name='Nazwa Prawna Sp. z o.o.',
nip='1234567890',
regon='123456789',
krs=None,
email='kontakt@firma.pl',
phone='+48 123 456 789',
website='https://firma.pl',
address_street='ul. Przykładowa 1',
address_city='Wejherowo',
address_postal='84-200',
category_id=category.id if category else None,
description_short='Krótki opis firmy',
description_full='Pełny opis działalności firmy...',
data_quality='enhanced',
status='active'
)
session.add(company)
session.commit()
print(f"Firma {company.legal_name} dodana pomyślnie! ID: {company.id}")
session.close()
if __name__ == '__main__':
import_company()
```
### 6. Wykonaj import
```bash
python import_NEW_COMPANY.py
```
### 7. Zweryfikuj dodanie (DEV via Docker)
```bash
docker exec nordabiz-postgres psql -U nordabiz_app -d nordabiz -c "SELECT slug, legal_name, nip FROM companies WHERE slug='NOWY_SLUG';"
```
## Uwagi:
- DEV: PostgreSQL via Docker na localhost:5433
- PROD: PostgreSQL na 57.128.200.27:5432
- Dla produkcji: po przetestowaniu lokalnie, wdróż przez `/deploy`
- Nowe firmy powinny pochodzić z oficjalnej listy członków Norda Biznes
- Zawsze weryfikuj NIP przed dodaniem