@extends('admin.layout') @section('title', 'Edit Invoice #' . $invoice->invoice_number) @section('content')

Edit Invoice #{{ $invoice->invoice_number }}

Ubah informasi invoice

Kembali Download PDF
Form Edit Invoice
@csrf @method('PUT') @php $isDraft = ($invoice->status === 'draft'); @endphp
Nomor invoice tidak dapat diubah
Booking terkait tidak dapat diubah
@error('guest_name')
{{ $message }}
@enderror Nama tamu disunting langsung di invoice ini.
@error('guest_email')
{{ $message }}
@enderror Email tamu disunting langsung di invoice ini.
@error('issued_at')
{{ $message }}
@enderror
@error('due_date')
{{ $message }}
@enderror
@error('status')
{{ $message }}
@enderror
@error('payment_channel_id')
{{ $message }}
@enderror Wajib dipilih jika status diubah menjadi Dibayar.
non_refundable ?? false) ? 'checked' : '' }} {{ $isDraft ? '' : 'disabled' }}>
Jika dicentang, PDF invoice akan menampilkan badge "NON-REFUNDABLE". @error('non_refundable')
{{ $message }}
@enderror
Nominal Invoice
@error('room_rate')
{{ $message }}
@enderror Malam: {{ $invoice->nights }} | Subtotal (otomatis): Rp {{ number_format(($invoice->room_rate ?? 0) * ($invoice->nights ?? 0), 0, ',', '.') }}
@error('services_total')
{{ $message }}
@enderror
@error('tax_amount')
{{ $message }}
@enderror Pajak dihitung otomatis dari DPP dan tidak dapat diedit.
@error('discount_amount')
{{ $message }}
@enderror
Total (otomatis): Rp {{ number_format($invoice->total_amount, 0, ',', '.') }}
Total dihitung: subtotal + layanan + pajak - diskon
Perpanjangan (Extend)
@php $hasMerged = isset($mergedSources) && ($mergedSources->count() > 0); @endphp @if($hasMerged)
Rincian Item (Hasil Merge)
@foreach($mergedSources as $src) @php $ov = isset($itemOverrides) ? ($itemOverrides[$src->invoice_number] ?? null) : null; $nights = $ov['nights'] ?? ($src->nights ?? (\Carbon\Carbon::parse($src->check_in_date)->diffInDays(\Carbon\Carbon::parse($src->check_out_date)) ?: 1)); $rate = $ov['rate'] ?? ($src->room_rate ?? 0); $amount = $ov['subtotal'] ?? ($src->subtotal ?? 0); @endphp @endforeach
Deskripsi Room Nights Rate Amount
{{ $src->room_type ?? ($src->booking->room->roomType->name ?? 'Room') }} {{ $src->room_number ?? ($src->booking->room->room_number ?? '-') }}
Rp
Rp
@endif
@error('notes')
{{ $message }}
@enderror
Batal
Informasi Saat Ini
No. Invoice:
{{ $invoice->invoice_number }}
Status Saat Ini:
@php $statusColors = [ 'draft' => 'secondary', 'sent' => 'info', 'paid' => 'success', 'overdue' => 'danger', 'cancelled' => 'dark' ]; $statusLabels = [ 'draft' => 'Draft', 'sent' => 'Terkirim', 'paid' => 'Dibayar', 'overdue' => 'Terlambat', 'cancelled' => 'Dibatalkan' ]; @endphp {{ $statusLabels[$invoice->status] ?? ucfirst($invoice->status) }}
Total Amount:
Rp {{ number_format($invoice->total_amount, 0, ',', '.') }}
Dibuat:
{{ $invoice->created_at->format('d F Y H:i') }}
Terakhir Update:
{{ $invoice->updated_at->format('d F Y H:i') }}
Informasi Booking
Booking Code:
{{ $invoice->booking->booking_code }}
Nama Tamu:
{{ $invoice->booking->guest_name }}
Hotel:
{{ $settings->hotel_name ?? 'N/A' }}
Kamar:
{{ $invoice->booking->room->room_number ?? 'N/A' }} - {{ $invoice->booking->room->type ?? 'N/A' }}
Check-in:
{{ \Carbon\Carbon::parse($invoice->booking->check_in_date)->format('d F Y') }}
Check-out:
{{ \Carbon\Carbon::parse($invoice->booking->check_out_date)->format('d F Y') }}
Bantuan

Catatan Editing:

  • Nomor invoice dan booking terkait tidak dapat diubah
  • Total amount dihitung otomatis dari nominal di form
  • Status "Dibayar" akan mengunci beberapa perubahan
  • Tanggal jatuh tempo opsional
  • Catatan dapat digunakan untuk informasi tambahan
@endsection @push('scripts') @endpush