@extends('layouts.app') @section('content') @include('partials.alerts') @php $purchaseDueDate = !empty($purchase->due_date) ? \Illuminate\Support\Carbon::parse($purchase->due_date) : null; $isOverdue = $purchaseDueDate && $purchase->payment_status !== 'paid' && $purchaseDueDate->isPast() && !$purchaseDueDate->isToday(); $isDueToday = $purchaseDueDate && $purchase->payment_status !== 'paid' && $purchaseDueDate->isToday(); $topLabel = ($purchase->term_of_payment ?? 'due_on_receipt') === 'net_30' ? 'TOP 30 Hari' : 'Due on Receipt'; @endphp
{{-- Main Info --}}
{{-- Header Card --}}

{{ $purchase->material->name ?? 'Pembelian' }}

@if($purchase->payment_status === 'paid') Lunas @elseif($purchase->payment_status === 'partial') Sebagian Dibayar @else Belum Dibayar @endif

Detail Pembelian

Tanggal
{{ $purchase->purchase_date->translatedFormat('d F Y') }}
No Faktur
{{ $purchase->no_faktur ?: '-' }}
Term of Payment
{{ $topLabel }}
Jatuh Tempo
{{ $purchaseDueDate ? $purchaseDueDate->translatedFormat('d F Y') : '-' }}
Bahan
{{ $purchase->material->name ?? '-' }}
Tipe
{{ $purchase->type_label }}

Supplier & Qty

Supplier
{{ $purchase->supplierRelation->name ?? $purchase->supplier ?? '-' }}
Jumlah
{{ number_format($purchase->quantity, 2, ',', '.') }} {{ $purchase->material->unit ?? '' }}
Harga Satuan
Rp {{ number_format($purchase->unit_price, 0, ',', '.') }}
@if($purchase->notes)
Catatan
{{ $purchase->notes }}
@endif
{{-- Payment Summary --}}

Ringkasan Pembayaran

@php $progressPercent = $purchase->total_price > 0 ? min(100, ($purchase->paid_amount / $purchase->total_price) * 100) : 0; @endphp {{-- Progress Bar --}}
Progress {{ number_format($progressPercent, 0) }}%
{{-- Totals --}}
Total Tagihan {{ $purchase->formatted_total }}
Sudah Dibayar {{ $purchase->formatted_paid }}
Sisa Hutang {{ $purchase->formatted_remaining }}
{{-- Payment History --}}

Riwayat Pembayaran

{{ $purchase->payments->count() }} pembayaran
@if($purchase->payments->count())
@foreach($purchase->payments as $index => $payment)
{{ $index + 1 }}
{{ $payment->formatted_amount }}

{{ $payment->payment_date->translatedFormat('d F Y') }}

@if($payment->proof) Bukti @endif
@csrf @method('DELETE')
@if($payment->notes)
Catatan: {{ $payment->notes }}
@endif
@endforeach
@else

Belum ada pembayaran

@endif
{{-- Sidebar --}}
{{-- Faktur & Jatuh Tempo --}}

Info Faktur

No Faktur

{{ $purchase->no_faktur ?: '-' }}

TOP

{{ $topLabel }}

Jatuh Tempo

{{ $purchaseDueDate ? $purchaseDueDate->format('d/m/Y') : '-' }}

@if($isOverdue)

Sudah lewat jatuh tempo

@elseif($isDueToday)

Jatuh tempo hari ini

@endif
{{-- Actions --}} {{-- Add Payment Form --}} @if($purchase->hasDebt())

Tambah Pembayaran

@csrf {{-- Quick Amount --}}
@if($purchase->remaining > 100000) @endif
Rp

Maks: {{ $purchase->formatted_remaining }}

Transfer akan memotong saldo Kas Bank gabungan.

@else {{-- Lunas Badge --}}

Lunas

Semua pembayaran selesai

@endif {{-- Timeline --}}

Riwayat

Pembelian Dibuat

{{ $purchase->created_at->format('d M Y H:i') }}

@foreach($purchase->payments as $payment)

Pembayaran {{ $payment->formatted_amount }}

{{ $payment->payment_date->format('d M Y') }}

@endforeach @if($purchase->payment_status === 'paid')

Lunas

Pembayaran selesai

@endif
@endsection