Files
kopalnia_2026/resources/views/catalog/pumps/index.blade.php
T
2026-09-03 12:21:17 +02:00

96 lines
6.0 KiB
PHP

<x-app-layout :active="'pumps.index'" title="SoftSPM 2 - Katalog pomp">
<div class="space-y-stack-gap">
@if (session('status'))
<div class="status-chip-ok px-3 py-2 rounded-lg font-body-sm text-body-sm">{{ session('status') }}</div>
@endif
<div class="flex items-end justify-between">
<div>
<h1 class="font-headline-lg text-headline-lg text-on-surface">Katalog pomp</h1>
<p class="font-body-sm text-body-sm text-on-surface-variant mt-1">
Wyników: <span class="font-data-label">{{ $pumps->total() }}</span>
</p>
</div>
<a href="{{ route('pumps.create') }}"
class="bg-primary text-on-primary px-5 py-2.5 rounded-full font-title-sm text-title-sm hover:bg-primary-container transition-all active:scale-95 shadow-card">
Dodaj pompę
</a>
</div>
{{-- Wyszukiwarka --}}
<form method="GET" action="{{ route('pumps.index') }}"
class="bg-surface-container-lowest border border-outline-variant/40 rounded-lg shadow-card p-card-inner-padding">
<div class="flex flex-wrap items-end gap-4">
<div class="space-y-1">
<label for="by" class="font-data-label text-data-label text-on-surface-variant tracking-wide">Kryterium</label>
<select id="by" name="by" class="bg-surface-container-low border border-outline-variant px-3 py-2 rounded font-data-label text-on-surface">
<option value="name" {{ $by === 'name' ? 'selected' : '' }}>Typ pompy</option>
<option value="flow" {{ $by === 'flow' ? 'selected' : '' }}>Wydajność Q</option>
</select>
</div>
<div class="space-y-1">
<label for="q" class="font-data-label text-data-label text-on-surface-variant tracking-wide">Szukaj</label>
<input id="q" name="q" type="text" value="{{ $q }}" placeholder="typ lub wartość Q"
class="bg-surface-container-low border border-outline-variant px-3 py-2 rounded font-data-label text-on-surface">
</div>
<div class="space-y-1">
<label for="mcf" class="font-data-label text-data-label text-on-surface-variant tracking-wide">Producent</label>
<select id="mcf" name="mcf" class="bg-surface-container-low border border-outline-variant px-3 py-2 rounded font-data-label text-on-surface">
<option value="{{ $mcfAll }}" {{ (int) $mcf === $mcfAll ? 'selected' : '' }}>Wszyscy</option>
@foreach ($manufacturers as $id => $name)
<option value="{{ $id }}" {{ (int) $mcf === (int) $id ? 'selected' : '' }}>{{ $name }}</option>
@endforeach
</select>
</div>
<button type="submit"
class="bg-secondary text-on-secondary px-5 py-2.5 rounded-full font-title-sm text-title-sm hover:opacity-90 transition-all active:scale-95">
Szukaj
</button>
</div>
</form>
{{-- Tabela --}}
<div class="bg-surface-container-lowest border border-outline-variant/40 rounded-lg shadow-card overflow-hidden">
<table class="w-full text-left">
<thead class="bg-secondary/10 border-b border-outline-variant/40">
<tr class="font-data-label text-data-label text-on-surface-variant tracking-wide">
<th class="px-4 py-3 w-12">Lp.</th>
<x-sortable-th column="name">Typ pompy</x-sortable-th>
<x-sortable-th column="flow" align="right">Q<sub>n</sub> [m³/h]</x-sortable-th>
<x-sortable-th column="hp" align="right">H<sub>p</sub> [m]</x-sortable-th>
<x-sortable-th column="mcf">Producent</x-sortable-th>
<th class="px-4 py-3 text-right">Akcje</th>
</tr>
</thead>
<tbody class="divide-y divide-outline-variant/30 font-body-md text-body-md">
@forelse ($pumps as $pump)
<tr class="hover:bg-surface-container transition-colors">
<td class="px-4 py-3 font-data-label text-on-surface-variant">{{ $pumps->firstItem() + $loop->index }}.</td>
<td class="px-4 py-3 font-semibold text-on-surface">
<a href="{{ route('pumps.show', $pump) }}" class="hover:text-primary">{{ $pump->PUP_NAME }}</a>
</td>
<td class="px-4 py-3 text-right font-data-label">{{ number_format(round((float) $pump->PUP_Q_N, 3), 3, ',', ' ') }}</td>
<td class="px-4 py-3 text-right font-data-label">{{ $pump->PUP_H_P }}</td>
<td class="px-4 py-3">{{ $pump->manufacturer?->MCF_NAME }}</td>
<td class="px-4 py-3 text-right whitespace-nowrap">
<a href="{{ route('pumps.show', $pump) }}" class="font-body-sm text-body-sm text-secondary hover:underline">Szczegóły</a>
<span class="text-outline-variant mx-1">·</span>
<a href="{{ route('pumps.edit', $pump) }}" class="font-body-sm text-body-sm text-secondary hover:underline">Edytuj</a>
</td>
</tr>
@empty
<tr>
<td colspan="6" class="px-4 py-8 text-center font-body-md text-body-md text-on-surface-variant">
Brak pomp dla wybranych kryteriów.
</td>
</tr>
@endforelse
</tbody>
</table>
</div>
<div>{{ $pumps->links() }}</div>
</div>
</x-app-layout>