Inovice / Travel: Dodanie do makiety obsługi rodzajó faktur

This commit is contained in:
2026-05-13 08:41:12 +02:00
parent 103a99060f
commit 9b3c3848a7
3 changed files with 344 additions and 25 deletions

View File

@@ -121,6 +121,24 @@ include '../../header-invoice.php';
</div>
</div>
<div class="mb-3">
<label class="form-label fw-bold">Rodzaj faktury (KSeF)</label>
<select class="form-select">
<option value="podstawowa" selected>Podstawowa</option>
<option value="zaliczkowa">Zaliczkowa</option>
<option value="rozliczeniowa">Rozliczeniowa</option>
<option value="uproszczona">Uproszczona</option>
<option value="korygujaca">Korygująca</option>
<option value="korygujaca_zaliczkowa">Korygująca fakturę zaliczkową</option>
<option value="korygujaca_rozliczeniowa">Korygująca fakturę rozliczeniową</option>
<option value="podstawowa_pef">Podstawowa PEF</option>
<option value="specjalizowana_pef">Specjalizowana PEF</option>
<option value="korygujaca_pef">Korygująca PEF</option>
<option value="pierwotna_rr">Pierwotna RR</option>
<option value="korygujaca_rr">Korygująca RR</option>
</select>
</div>
<div class="row g-2 mb-3">
<div class="col-md-6">
<label class="form-label fw-bold">Numer faktury</label>

View File

@@ -211,6 +211,26 @@ include '../../header-invoice.php';
</div>
</div>
<div class="row g-3 mb-3">
<div class="col-md-12">
<label class="form-label">Rodzaj faktury</label>
<select class="form-select">
<option value="podstawowa" selected>Podstawowa</option>
<option value="zaliczkowa">Zaliczkowa</option>
<option value="rozliczeniowa">Rozliczeniowa</option>
<option value="uproszczona">Uproszczona</option>
<option value="korygujaca">Korygująca</option>
<option value="korygujaca_zaliczkowa">Korygująca fakturę zaliczkową</option>
<option value="korygujaca_rozliczeniowa">Korygująca fakturę rozliczeniową</option>
<option value="podstawowa_pef">Podstawowa PEF</option>
<option value="specjalizowana_pef">Specjalizowana PEF</option>
<option value="korygujaca_pef">Korygująca PEF</option>
<option value="pierwotna_rr">Pierwotna RR</option>
<option value="korygujaca_rr">Korygująca RR</option>
</select>
</div>
</div>
<div class="row g-3 mb-4">
<div class="col-md-4">
<label class="form-label">Data wystawienia</label>
@@ -375,8 +395,8 @@ include '../../header-invoice.php';
</td>
<td>1</td>
<td>
<span class="fw-medium">FZ/2026/02/001</span>
<br><small class="text-muted">Hosting i domeny</small>
<span class="fw-medium d-block mb-1">FZ/2026/02/001</span>
<small class="text-muted">Podstawowa | Hosting i domeny</small>
</td>
<td>
<span class="text-heading text-truncate fw-medium">OVH Sp. z o.o.</span>
@@ -431,8 +451,8 @@ include '../../header-invoice.php';
</td>
<td>2</td>
<td>
<span class="fw-medium">FV/TAURON/22/05</span>
<br><small class="text-muted">Energia elektryczna</small>
<span class="fw-medium d-block mb-1">FV/TAURON/22/05</span>
<small class="text-muted">Podstawowa | Energia elektryczna</small>
</td>
<td>
<span class="text-heading text-truncate fw-medium">Tauron Polska</span>
@@ -491,8 +511,8 @@ include '../../header-invoice.php';
</td>
<td>3</td>
<td>
<span class="fw-medium">102/K/2026</span>
<br><small class="text-muted">Materiały biurowe</small>
<span class="fw-medium d-block mb-1">102/K/2026</span>
<small class="text-muted">Korygująca | Materiały biurowe</small>
</td>
<td>
<span class="text-heading text-truncate fw-medium">Papierniczy S.A.</span>
@@ -553,8 +573,8 @@ include '../../header-invoice.php';
</td>
<td>4</td>
<td>
<span class="fw-medium">FV/22/09/2026</span>
<br><small class="text-muted">Usługi programistyczne</small>
<span class="fw-medium d-block mb-1">FV/22/09/2026</span>
<small class="text-muted">Podstawowa | Usługi programistyczne</small>
</td>
<td>
<span class="text-heading text-truncate fw-medium">DevHouse Sp. z o.o.</span>
@@ -648,6 +668,25 @@ include '../../header-invoice.php';
</select>
</div>
<div class="mb-3">
<label class="form-label">Rodzaj faktury</label>
<select class="form-select">
<option value="">Wszystkie</option>
<option value="podstawowa">Podstawowa</option>
<option value="zaliczkowa">Zaliczkowa</option>
<option value="rozliczeniowa">Rozliczeniowa</option>
<option value="uproszczona">Uproszczona</option>
<option value="korygujaca">Korygująca</option>
<option value="korygujaca_zaliczkowa">Korygująca fakturę zaliczkową</option>
<option value="korygujaca_rozliczeniowa">Korygująca fakturę rozliczeniową</option>
<option value="podstawowa_pef">Podstawowa PEF</option>
<option value="specjalizowana_pef">Specjalizowana PEF</option>
<option value="korygujaca_pef">Korygująca PEF</option>
<option value="pierwotna_rr">Pierwotna RR</option>
<option value="korygujaca_rr">Korygująca RR</option>
</select>
</div>
<div class="mb-3">
<label class="form-label">Status płatności</label>
<div class="d-flex flex-column gap-2">
@@ -847,6 +886,7 @@ include '../../header-invoice.php';
<div class="d-flex align-items-center gap-3">
<h4 class="modal-title fw-bold mb-0">FZ/2026/02/001</h4>
<span class="badge bg-label-success fs-6">Opłacona</span>
<span class="badge bg-label-secondary fs-6">Podstawowa</span>
</div>
<div class="d-flex align-items-center gap-2">
@@ -922,6 +962,10 @@ include '../../header-invoice.php';
<h6 class="card-title m-0 mb-3"><i class="bx bx-info-circle me-2"></i>Szczegóły</h6>
<table class="table table-borderless table-sm m-0 px-0">
<tbody>
<tr>
<td class="text-muted ps-0 py-1">Rodzaj faktury:</td>
<td class="fw-medium text-end pe-0 py-1">Podstawowa</td>
</tr>
<tr>
<td class="text-muted ps-0 py-1">Data zakupu:</td>
<td class="fw-medium text-end pe-0 py-1">2026-02-15</td>

View File

@@ -109,15 +109,33 @@ include '../../header-travel.php';
</div>
<div class="card-body p-3">
<div class="row g-3">
<div class="col-md-3">
<div class="col-md-2">
<label class="form-label small mb-1">Dostawca / NIP</label>
<input type="text" class="form-control" placeholder="Szukaj...">
</div>
<div class="col-md-3">
<div class="col-md-2">
<label class="form-label small mb-1">Numer faktury</label>
<input type="text" class="form-control" placeholder="Wpisz numer">
</div>
<div class="col-md-3">
<label class="form-label small mb-1">Rodzaj faktury</label>
<select class="form-select">
<option value="">Wszystkie</option>
<option value="podstawowa">Podstawowa</option>
<option value="zaliczkowa">Zaliczkowa</option>
<option value="rozliczeniowa">Rozliczeniowa</option>
<option value="uproszczona">Uproszczona</option>
<option value="korygujaca">Korygująca</option>
<option value="korygujaca_zaliczkowa">Korygująca zaliczkową</option>
<option value="korygujaca_rozliczeniowa">Korygująca rozliczeniową</option>
<option value="podstawowa_pef">Podstawowa PEF</option>
<option value="specjalizowana_pef">Specjalizowana PEF</option>
<option value="korygujaca_pef">Korygująca PEF</option>
<option value="pierwotna_rr">Pierwotna RR</option>
<option value="korygujaca_rr">Korygująca RR</option>
</select>
</div>
<div class="col-md-2">
<label class="form-label small mb-1">Status powiązania</label>
<select class="form-select">
<option value="">Wszystkie</option>
@@ -534,7 +552,7 @@ include '../../header-travel.php';
<i class="bx bxs-file-pdf text-danger fs-4 me-2"></i>
<div class="d-flex flex-column">
<span class="fw-semibold text-dark">FV/2026/05/1234</span>
<small class="text-muted">Faktura VAT</small>
<small class="text-muted">Podstawowa</small>
</div>
</div>
</td>
@@ -558,7 +576,7 @@ include '../../header-travel.php';
</div>
</td>
<td class="text-end">
<button class="btn btn-sm btn-icon btn-text-secondary" data-bs-toggle="tooltip"
<button class="btn btn-sm btn-icon btn-text-secondary" data-bs-toggle="modal" data-bs-target="#invoicePreviewModal" data-bs-toggle="tooltip"
title="Podgląd dokumentu"><i class="bx bx-show"></i></button>
<button class="btn btn-sm btn-primary ms-1" data-bs-toggle="modal"
data-bs-target="#modalLinkExistingInvoice">Połącz ze zleceniem</button>
@@ -572,7 +590,7 @@ include '../../header-travel.php';
<i class="bx bx-receipt text-success fs-4 me-2"></i>
<div class="d-flex flex-column">
<span class="fw-semibold text-dark">F-2026-999</span>
<small class="text-muted">Faktura VAT z KSeF</small>
<small class="text-muted">Podstawowa</small>
</div>
</div>
</td>
@@ -599,7 +617,7 @@ include '../../header-travel.php';
<td class="text-end">
<button class="btn btn-sm btn-icon btn-text-secondary" data-bs-toggle="tooltip"
title="Szczegóły rozksięgowania"><i class="bx bx-list-ul"></i></button>
<button class="btn btn-sm btn-icon btn-text-secondary"><i
<button class="btn btn-sm btn-icon btn-text-secondary" data-bs-toggle="modal" data-bs-target="#invoicePreviewModal"><i
class="bx bx-show"></i></button>
</td>
</tr>
@@ -612,7 +630,7 @@ include '../../header-travel.php';
title="Skan z aplikacji pilota"></i>
<div class="d-flex flex-column">
<span class="fw-semibold text-dark">Paragon/FV 12</span>
<small class="text-muted">Faktura zaliczkowa</small>
<small class="text-muted">Zaliczkowa</small>
</div>
</div>
</td>
@@ -639,7 +657,7 @@ include '../../header-travel.php';
</div>
</td>
<td class="text-end">
<button class="btn btn-sm btn-icon btn-text-secondary" data-bs-toggle="tooltip"
<button class="btn btn-sm btn-icon btn-text-secondary" data-bs-toggle="modal" data-bs-target="#invoicePreviewModal" data-bs-toggle="tooltip"
title="Podgląd skanu"><i class="bx bx-show"></i></button>
</td>
</tr>
@@ -675,7 +693,7 @@ include '../../header-travel.php';
</div>
</td>
<td class="text-end">
<button class="btn btn-sm btn-icon btn-text-secondary" data-bs-toggle="tooltip"
<button class="btn btn-sm btn-icon btn-text-secondary" data-bs-toggle="modal" data-bs-target="#invoicePreviewModal" data-bs-toggle="tooltip"
title="Podgląd dokumentu"><i class="bx bx-show"></i></button>
<button class="btn btn-sm btn-primary ms-1" data-bs-toggle="modal"
data-bs-target="#modalLinkExistingInvoice">Połącz ze zleceniem</button>
@@ -689,7 +707,7 @@ include '../../header-travel.php';
<i class="bx bx-receipt text-primary fs-4 me-2"></i>
<div class="d-flex flex-column">
<span class="fw-semibold text-dark">FVZ/2026/04/311</span>
<small class="text-muted">Faktura zaliczkowa</small>
<small class="text-muted">Zaliczkowa</small>
</div>
</div>
</td>
@@ -713,7 +731,7 @@ include '../../header-travel.php';
</div>
</td>
<td class="text-end">
<button class="btn btn-sm btn-icon btn-text-secondary" data-bs-toggle="tooltip"
<button class="btn btn-sm btn-icon btn-text-secondary" data-bs-toggle="modal" data-bs-target="#invoicePreviewModal" data-bs-toggle="tooltip"
title="Podgląd dokumentu"><i class="bx bx-show"></i></button>
</td>
</tr>
@@ -725,7 +743,7 @@ include '../../header-travel.php';
<i class="bx bxs-file-pdf text-info fs-4 me-2"></i>
<div class="d-flex flex-column">
<span class="fw-semibold text-dark">KSEF/2026/05/0042</span>
<small class="text-muted">Faktura VAT z KSeF</small>
<small class="text-muted">Podstawowa</small>
</div>
</div>
</td>
@@ -752,7 +770,7 @@ include '../../header-travel.php';
</div>
</td>
<td class="text-end">
<button class="btn btn-sm btn-icon btn-text-secondary" data-bs-toggle="tooltip"
<button class="btn btn-sm btn-icon btn-text-secondary" data-bs-toggle="modal" data-bs-target="#invoicePreviewModal" data-bs-toggle="tooltip"
title="Podgląd dokumentu"><i class="bx bx-show"></i></button>
<button class="btn btn-sm btn-primary ms-1" data-bs-toggle="modal"
data-bs-target="#modalLinkExistingInvoice">Połącz ze zleceniem</button>
@@ -793,7 +811,7 @@ include '../../header-travel.php';
<td class="text-end">
<button class="btn btn-sm btn-icon btn-text-secondary" data-bs-toggle="tooltip"
title="Szczegóły rozksięgowania"><i class="bx bx-list-ul"></i></button>
<button class="btn btn-sm btn-icon btn-text-secondary"><i
<button class="btn btn-sm btn-icon btn-text-secondary" data-bs-toggle="modal" data-bs-target="#invoicePreviewModal"><i
class="bx bx-show"></i></button>
</td>
</tr>
@@ -811,6 +829,228 @@ include '../../header-travel.php';
</div>
<!-- Modal: Invoice Preview -->
<div class="modal fade" id="invoicePreviewModal" tabindex="-1" aria-hidden="true">
<div class="modal-dialog modal-xl modal-dialog-centered modal-dialog-scrollable" role="document">
<div class="modal-content">
<div class="modal-header border-bottom py-3 d-flex justify-content-between align-items-center">
<div class="d-flex align-items-center gap-3">
<h4 class="modal-title fw-bold mb-0">FV/2026/02/001</h4>
<span class="badge bg-label-success fs-6">Opłacona</span>
<span class="badge bg-label-secondary fs-6">Podstawowa</span>
</div>
<div class="d-flex align-items-center gap-2">
<button type="button" class="btn btn-icon btn-label-secondary" data-bs-toggle="tooltip"
title="Drukuj PDF">
<i class="bx bx-printer"></i>
</button>
<button type="button" class="btn btn-outline-primary d-flex align-items-center">
<i class="bx bx-link-external me-1"></i> Otwórz w invoice.travel
</button>
<div class="dropdown">
<button class="btn btn-primary" type="button" id="dropdownInvoiceActions"
data-bs-toggle="dropdown" aria-expanded="false">
Więcej akcji <i class="bx bx-chevron-down ms-1"></i>
</button>
<ul class="dropdown-menu dropdown-menu-end" aria-labelledby="dropdownInvoiceActions">
<li><button class="dropdown-item"><i class="bx bx-edit-alt me-2"></i> Edytuj</button></li>
<div class="dropdown-divider"></div>
<li><button class="dropdown-item text-danger"><i class="bx bx-trash me-2"></i> Usuń fakturę
</button></li>
</ul>
</div>
<button type="button" class="btn-close ms-2" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
</div>
<div class="modal-body bg-lighter p-4">
<div class="row g-4 mb-4">
<div class="col-lg-4">
<div class="card h-100 shadow-sm border-0">
<div class="card-body p-4">
<h6 class="card-title m-0 mb-3"><i class="bx bx-store me-2"></i>Sprzedawca</h6>
<h6 class="mb-1">OVH Sp. z o.o.</h6>
<p class="mb-1 mt-2">ul. Swobodna 1</p>
<p class="mb-2">50-088 Wrocław, Polska</p>
<span class="badge bg-label-secondary">NIP: 899 25 20 556</span>
</div>
</div>
</div>
<div class="col-lg-4">
<div class="card h-100 shadow-sm border-0">
<div class="card-body p-4">
<h6 class="card-title m-0 mb-3"><i class="bx bx-user me-2"></i>Nabywca</h6>
<h6 class="mb-1">MARIUSZ BANACZYK "BURGER BAR"</h6>
<p class="mb-1 text-muted small">KARCZMA BIESIADA, KULTOWA ZAPIEKANKA</p>
<p class="mb-1 mt-2">ul. Ofiar Katynia 2</p>
<p class="mb-2">37-450 Stalowa Wola, Polska</p>
<span class="badge bg-label-secondary">NIP: 865 000 14 51</span>
</div>
</div>
</div>
<div class="col-lg-4">
<div class="card h-100 shadow-sm border-0 bg-white">
<div class="card-body p-4">
<h6 class="card-title m-0 mb-3"><i class="bx bx-info-circle me-2"></i>Szczegóły</h6>
<table class="table table-borderless table-sm m-0 px-0">
<tbody>
<tr>
<td class="text-muted ps-0 py-1">Rodzaj faktury:</td>
<td class="fw-medium text-end pe-0 py-1">Podstawowa</td>
</tr>
<tr>
<td class="text-muted ps-0 py-1">Data zakupu:</td>
<td class="fw-medium text-end pe-0 py-1">2026-02-15</td>
</tr>
<tr>
<td class="text-muted ps-0 py-1">Termin płatności:</td>
<td class="fw-bold text-end pe-0 py-1">2026-02-22</td>
</tr>
<tr>
<td class="text-muted ps-0 py-1">Kategoria kosztu:</td>
<td class="fw-medium text-end pe-0 py-1">Usługi obce</td>
</tr>
<tr>
<td class="text-muted ps-0 py-1">Metoda:</td>
<td class="fw-medium text-end pe-0 py-1">Przelew</td>
</tr>
<tr>
<td class="text-muted ps-0 py-1">Waluta / Język:</td>
<td class="fw-medium text-end pe-0 py-1">PLN / Polski</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
<div class="card shadow-sm border-0 mb-4">
<div class="table-responsive text-nowrap">
<table class="table table-hover mb-0">
<thead class="table-light">
<tr>
<th style="width: 50px;">Lp</th>
<th>Towar / Usługa</th>
<th>J.m.</th>
<th class="text-center">Ilość</th>
<th class="text-end">Cena netto</th>
<th class="text-end">Cena brutto</th>
<th class="text-center">VAT</th>
<th class="text-end">Wartość netto</th>
<th class="text-end">Wartość brutto</th>
</tr>
</thead>
<tbody>
<tr>
<td class="text-muted">1</td>
<td>
<div class="d-flex flex-column">
<span class="fw-medium">Hosting i domeny</span>
<small class="text-muted">Kod: -</small>
</div>
</td>
<td>szt.</td>
<td class="text-center">1</td>
<td class="text-end">100,00 zł</td>
<td class="text-end">123,00 zł</td>
<td class="text-center"><span class="badge bg-label-secondary">23%</span></td>
<td class="text-end fw-medium">100,00 zł</td>
<td class="text-end fw-bold text-heading">123,00 zł</td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="row mb-4 g-4">
<div class="col-md-7">
<div class="card shadow-sm border-0 h-100 bg-white p-4">
<h6 class="text-uppercase text-muted fw-bold mb-3 border-bottom pb-2">Dane do płatności</h6>
<div class="mb-4">
<p class="mb-1 text-body"><strong class="text-muted fw-medium me-2">Bank:</strong> mBank S.A.</p>
<p class="mb-0 text-body d-flex align-items-center">
<strong class="text-muted fw-medium me-2">Rachunek:</strong>
<span class="font-monospace">34 1140 2004 0000 3002 0100 5005</span>
<button class="btn btn-sm btn-icon text-secondary ms-2 p-0" data-bs-toggle="tooltip" title="Kopiuj rachunek"><i class="bx bx-copy"></i></button>
</p>
</div>
<h6 class="text-uppercase text-muted fw-bold mb-3 border-bottom pb-2">Opis zdarzenia</h6>
<p class="mb-0 text-body">
Opłata roczna za usługi hostingowe dla domeny
</p>
</div>
</div>
<div class="col-md-5">
<div class="card shadow-sm border-0 h-100 bg-white p-4">
<h6 class="text-uppercase text-muted fw-bold mb-3 border-bottom pb-2">Suma</h6>
<div class="d-flex justify-content-between mb-2">
<span class="text-muted">Wartość netto:</span>
<span class="fw-medium">100,00 zł</span>
</div>
<div class="d-flex justify-content-between mb-3 border-bottom pb-3">
<span class="text-muted">Wartość VAT:</span>
<span class="fw-medium">23,00 zł</span>
</div>
<div class="d-flex justify-content-between align-items-center mb-3">
<span class="fs-5 text-body">Wartość brutto:</span>
<span class="fs-4 fw-bold text-primary">123,00 zł</span>
</div>
<div class="d-flex justify-content-between text-success">
<span>Zapłacono:</span>
<span class="fw-bold">123,00 zł</span>
</div>
<div class="d-flex justify-content-between text-muted mt-1 small">
<span>Pozostało do zapłaty:</span>
<span>0,00 zł</span>
</div>
</div>
</div>
</div>
<div class="card shadow-sm border-0 mb-4">
<div class="card-header bg-white border-bottom py-3">
<h6 class="card-title m-0"><i class="bx bx-paperclip me-2"></i>Załączniki</h6>
</div>
<div class="card-body p-4">
<div class="d-flex flex-wrap gap-3">
<div
class="border rounded p-3 d-flex align-items-center justify-content-between w-100 mb-2">
<div class="d-flex align-items-center">
<i class="bx bxs-file-pdf fs-2 text-danger me-3"></i>
<div>
<h6 class="mb-0">FZ2026_02_001.pdf</h6>
<small class="text-muted">1.2 MB &bull; Wgrano: 2026-02-15 10:23</small>
</div>
</div>
<div class="d-flex gap-2">
<button class="btn btn-icon btn-sm btn-label-secondary"><i
class="bx bx-show"></i></button>
<button class="btn btn-icon btn-sm btn-label-primary"><i
class="bx bx-download"></i></button>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="modal fade" id="modalLinkedInvoicePreview" tabindex="-1" aria-hidden="true">
<div class="modal-dialog modal-lg modal-dialog-centered">
<div class="modal-content border-0 shadow-lg">
@@ -824,7 +1064,7 @@ include '../../header-travel.php';
<div class="row g-3">
<div class="col-md-6">
<div class="small text-muted">Numer faktury</div>
<div class="fw-semibold">FV/2026/05/1234</div>
<div class="fw-semibold d-flex align-items-center gap-2">FV/2026/05/1234 <span class="badge bg-label-secondary" style="font-size: 0.7rem;">Podstawowa</span></div>
</div>
<div class="col-md-6">
<div class="small text-muted">Dostawca</div>
@@ -1101,13 +1341,30 @@ include '../../header-travel.php';
</div>
<div class="card-body pt-3 pb-2">
<div class="row g-2">
<div class="col-sm-6 mb-2">
<div class="col-sm-4 mb-2">
<label class="form-label small mb-1">Nr faktury <span
class="text-danger">*</span></label>
<input type="text" class="form-control form-control-sm"
value="FV/2026/05/123">
</div>
<div class="col-sm-6 mb-2">
<div class="col-sm-4 mb-2">
<label class="form-label small mb-1">Rodzaj faktury</label>
<select class="form-select form-select-sm">
<option value="podstawowa" selected>Podstawowa</option>
<option value="zaliczkowa">Zaliczkowa</option>
<option value="rozliczeniowa">Rozliczeniowa</option>
<option value="uproszczona">Uproszczona</option>
<option value="korygujaca">Korygująca</option>
<option value="korygujaca_zaliczkowa">Koryg. zaliczkową</option>
<option value="korygujaca_rozliczeniowa">Koryg. rozliczeniową</option>
<option value="podstawowa_pef">Podstawowa PEF</option>
<option value="specjalizowana_pef">Specjalizowana PEF</option>
<option value="korygujaca_pef">Korygująca PEF</option>
<option value="pierwotna_rr">Pierwotna RR</option>
<option value="korygujaca_rr">Korygująca RR</option>
</select>
</div>
<div class="col-sm-4 mb-2">
<label class="form-label small mb-1">Data wystawienia <span
class="text-danger">*</span></label>
<input type="date" class="form-control form-control-sm"