Phase 115 complete (vertical slice "zamowienie z NIP -> faktura PDF"):
- Task 1: InvoiceRepository + InvoiceService (dual-flow orchestrator) +
InvoiceIssueException + FakturowniaApiClient::createInvoice + buildPdfUrl
- Task 2: InvoiceController + OrdersController::toggleInvoiceRequested +
OrdersRepository::setInvoiceRequested + auto-import invoice_requested z
Allegro (invoice.required) i shopPRO (5-key flexible parser) + show.php
(toggle w zakladce Platnosci + warunkowy przycisk Wystaw fakture)
- Task 3: Lista wystawionych /settings/accounting/invoices/issued z filtrami
+ invoice_preview + invoice_pdf Dompdf template + hub link
- Task 3b (dodany): NIP lookup przez MF Biala Lista (publiczne API, bez
rejestracji) — MfWhitelistApiClient w src/Core/Http/ + /api/nip/lookup +
przycisk "Pobierz z GUS" w formularzu
Auto-fixes podczas smoke testu (5):
- GUS endpoint Fakturowni nie istnial (HTML 404 -> "json is not valid");
switch na MF Biala Liste
- PHP 8.5 curl_close() deprecation wycieka HTML przed JSON; usuniete z
MfWhitelistApiClient i FakturowniaApiClient (3 miejsca)
- Fakturownia 422 payment_to_kind_days (nieistniejace pole) -> usuniete
- Generic "error" w 422 -> parser plaskuje errors: {pole: [...]} +
error_log z 1000 znakow raw body
- Fakturownia security odrzuca seller_*/department_id jako "create new
department"; usuniete z payloadu (Fakturownia uzywa danych konta)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
37 lines
1.6 KiB
PHP
37 lines
1.6 KiB
PHP
<?php
|
|
$success = trim((string) ($successMessage ?? ''));
|
|
$error = trim((string) ($errorMessage ?? ''));
|
|
?>
|
|
|
|
<section class="card">
|
|
<h2 class="section-title">Ksiegowosc</h2>
|
|
<p class="muted mt-12">Wybierz typ dokumentu ktorego konfiguracje chcesz zarzadzac.</p>
|
|
|
|
<?php if ($error !== ''): ?>
|
|
<div class="alert alert--danger mt-12" role="alert"><?= $e($error) ?></div>
|
|
<?php endif; ?>
|
|
<?php if ($success !== ''): ?>
|
|
<div class="alert alert--success mt-12" role="status"><?= $e($success) ?></div>
|
|
<?php endif; ?>
|
|
</section>
|
|
|
|
<section class="card mt-16">
|
|
<div class="form-grid-2">
|
|
<div style="border:1px solid var(--border-color, #e5e7eb);border-radius:8px;padding:16px">
|
|
<h3 class="section-title" style="margin-top:0">Paragony</h3>
|
|
<p class="muted mt-12">Konfiguracje wystawiania paragonow: format numeracji, sposob numerowania, oznaczenie zamowienia.</p>
|
|
<div class="form-actions mt-16">
|
|
<a class="btn btn--primary" href="/settings/accounting/receipts">Zarzadzaj paragonami</a>
|
|
</div>
|
|
</div>
|
|
<div style="border:1px solid var(--border-color, #e5e7eb);border-radius:8px;padding:16px">
|
|
<h3 class="section-title" style="margin-top:0">Faktury</h3>
|
|
<p class="muted mt-12">Konfiguracje wystawiania faktur: numeracja lokalna lub delegacja do Fakturowni, termin platnosci, typ dokumentu.</p>
|
|
<div class="form-actions mt-16">
|
|
<a class="btn btn--primary" href="/settings/accounting/invoices">Zarzadzaj fakturami</a>
|
|
<a class="btn btn--secondary ml-8" href="/settings/accounting/invoices/issued">Faktury wystawione</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</section>
|