{{-- resources/views/admin/purchase_invoices/edit.blade.php --}} @extends('admin.layouts.master') @section('title', 'تعديل فاتورة مشتريات') @section('css') @endsection @section('content')
@include('admin.Alerts') @php // لو في validation errors: استخدم old()، غير كده استخدم بيانات الفاتورة $oldItems = old('items'); $form = [ 'supplier_id' => old('supplier_id', $invoice->supplier_id), 'invoice_number'=> old('invoice_number', $invoice->invoice_number), 'invoice_date' => old('invoice_date', optional($invoice->invoice_date)->format('Y-m-d') ?? now()->toDateString()), 'payment_type' => old('payment_type', $invoice->payment_type ?? 'cash'), 'due_date' => old('due_date', optional($invoice->due_date)->format('Y-m-d')), 'tax_included' => (bool) old('tax_included', (bool)$invoice->tax_included), 'discount_type' => old('discount_type', $invoice->discount_type ?? 'none'), // للعرض في الـ UI نخليها discount_rate (حتى لو السيرفر بيخزن fixed في discount_value) 'discount_rate' => old('discount_rate', (float)($invoice->discount_rate ?? 0)), 'shipping_cost' => old('shipping_cost', (float)($invoice->shipping_cost ?? 0)), 'other_charges' => old('other_charges', (float)($invoice->other_charges ?? 0)), 'notes' => old('notes', $invoice->notes), 'status' => old('status', $invoice->status ?? 'draft'), ]; // items payload for JS rows $itemsForJs = []; if (is_array($oldItems)) { // من old foreach ($oldItems as $row) { $itemsForJs[] = [ 'item_id' => $row['item_id'] ?? null, 'quantity' => $row['quantity'] ?? 1, 'unit_price' => $row['unit_price'] ?? 0, 'discount_type' => $row['discount_type'] ?? 'none', 'discount_rate' => $row['discount_rate'] ?? 0, 'discount_value' => $row['discount_value'] ?? 0, 'tax_rate' => $row['tax_rate'] ?? 0, ]; } } else { // من DB foreach ($invoice->items as $it) { $itemsForJs[] = [ 'item_id' => $it->item_id, 'quantity' => $it->quantity ?? 1, 'unit_price' => $it->unit_price ?? 0, 'discount_type' => $it->discount_type ?? 'none', 'discount_rate' => $it->discount_rate ?? 0, 'discount_value' => $it->discount_value ?? 0, 'tax_rate' => $it->tax_rate ?? 0, ]; } } @endphp @endsection @section('js') @endsection