@php /** @var \Illuminate\Support\Collection> $movements */ /** @var array{name: string, legal_name: string, address: ?string, city: ?string, country: ?string, phone: ?string, email: ?string, website: ?string, tax_id: ?string, registration: ?string} $company */ /** @var array{search: ?string, warehouse_id: ?int, type: ?string, exported_at: string} $filters */ $location = collect([$company['city'], $company['country']])->filter()->implode(', '); @endphp Mouvements de stock
@include('pdf.partials.company-identity', ['company' => $company, 'showName' => true]) @if ($company['tax_id'])
NIF : {{ $company['tax_id'] }}
@endif

Mouvements de stock

Exporté le {{ $filters['exported_at'] }}
@if ($filters['search'] || $filters['warehouse_id'] || $filters['type'])
Filtres appliqués : @if ($filters['search']) recherche « {{ $filters['search'] }} » @endif @if ($filters['type']) · type {{ $filters['type'] }} @endif @if ($filters['warehouse_id']) · entrepôt #{{ $filters['warehouse_id'] }} @endif
@endif @forelse ($movements as $movement) @empty @endforelse
Date Type Produit Entrepôt Qté Motif Origine Par
{{ isset($movement['occurred_at']) && $movement['occurred_at'] ? \Illuminate\Support\Carbon::parse($movement['occurred_at'])->format('d/m/Y H:i') : '—' }} {{ $movement['type_label'] }} @if ($movement['product']) {{ $movement['product']['code'] }}
{{ $movement['product']['name'] }}
@else — @endif
@if ($movement['warehouse']) {{ $movement['warehouse']['code'] }} — {{ $movement['warehouse']['name'] }} @else — @endif {{ $movement['signed_quantity'] > 0 ? '+'.$movement['signed_quantity'] : $movement['signed_quantity'] }} {{ $movement['motif'] ?: '—' }} @if ($movement['source']) {{ $movement['source']['label'] }} @if ($movement['source']['code'])
{{ $movement['source']['code'] }}
@endif @else — @endif
{{ $movement['performed_by']['name'] ?? '—' }}
Aucun mouvement pour ces critères.