@extends(niche_shell_layout()) @section('title', 'إضافة مصروف - '.config('app.name')) @section('breadcrumb') الرئيسية المحاسبة المصروفات إضافة مصروف @endsection @section('content') @php $expenseAccountOptions = collect($expenseAccounts ?? [])->map(fn ($a) => [ 'value' => data_get($a, 'id'), 'label' => trim((string) data_get($a, 'code').' - '.(string) data_get($a, 'name_ar', data_get($a, 'name', ''))), ])->filter(fn ($o) => (string) ($o['value'] ?? '') !== '')->values()->all(); $expenseCostCenterOptions = collect($costCenters ?? [])->map(fn ($c) => [ 'value' => data_get($c, 'id'), 'label' => trim((string) data_get($c, 'name_ar', data_get($c, 'name', ''))), ])->filter(fn ($o) => (string) ($o['value'] ?? '') !== '')->values()->all(); $expenseSupplierOptions = collect($suppliers ?? [])->map(fn ($s) => [ 'value' => data_get($s, 'id'), 'label' => trim(((string) data_get($s, 'code') !== '' ? (string) data_get($s, 'code').' - ' : '').(string) data_get($s, 'name', data_get($s, 'name_ar', ''))), ])->filter(fn ($o) => (string) ($o['value'] ?? '') !== '')->values()->all(); $expenseBankAccountOptions = collect($bankAccounts ?? [])->map(fn ($b) => [ 'value' => data_get($b, 'id'), 'label' => trim((string) data_get($b, 'bank_name').' — '.(string) data_get($b, 'account_number')), ])->filter(fn ($o) => (string) ($o['value'] ?? '') !== '')->values()->all(); $expenseCategoryOptions = collect($categories ?? collect())->map(fn ($c) => [ 'value' => data_get($c, 'id'), 'label' => trim((string) data_get($c, 'code').' — '.(string) data_get($c, 'name_ar', data_get($c, 'name', ''))), ])->filter(fn ($o) => (string) ($o['value'] ?? '') !== '')->values()->all(); $expensePaymentMethodOpts = [ ['value' => 'cash', 'label' => 'نقدًا'], ['value' => 'bank', 'label' => 'تحويل بنكي'], ['value' => 'card', 'label' => 'بطاقة'], ['value' => 'check', 'label' => 'شيك'], ]; $expenseTaxableInitial = old('is_taxable') === '1' || old('is_taxable') === 1 || (float) old('tax_amount', 0) > 0.000001; @endphp

إضافة مصروف

@csrf

تفاصيل المصروف

@error('expense_category_id')

{{ $message }}

@enderror
@error('date')

{{ $message }}

@enderror
@error('cost_center_id')

{{ $message }}

@enderror
@error('account_id')

{{ $message }}

@enderror
@error('supplier_id')

{{ $message }}

@enderror
@error('reference')

{{ $message }}

@enderror
@error('description')

{{ $message }}

@enderror
@error('attachments')

{{ $message }}

@enderror @error('attachments.*')

{{ $message }}

@enderror

الدفع

خاضع للضريبة؟ مبلغ الضريبة يُصفر والإجمالي يساوي المبلغ الأساسي. تظهر نسبة الضريبة ومبلغها؛ الافتراضي {{ erp_qty((float) $defaultVatPercent) }}%.
{{-- مسار LTR؛ حركة الدائرة = :class من Alpine (translate-x) وليس peer --}}
@php $expenseAmtBorder = $errors->has('amount') ? 'border-red-500 ring-1 ring-red-200' : 'border-gray-200'; $expenseTaxBorder = $errors->has('tax_amount') ? 'border-red-500 ring-1 ring-red-200' : 'border-gray-200'; @endphp {{-- عناصر وهمية: تضمين أصناف md:grid-cols-* في الـ build --}}
{{-- المبلغ (إدخال يدوي) --}}
SAR
@error('amount')

{{ $message }}

@enderror
{{-- نسبة الضريبة (نفس بنية حقل المبلغ: شريحة وحدة + إدخال) --}}
%
{{-- مبلغ الضريبة (محسوب — خلفية مميزة) --}}
SAR
@error('tax_amount')

{{ $message }}

@enderror
{{-- الإجمالي (محسوب) --}}
SAR
@error('payment_method')

{{ $message }}

@enderror
@error('bank_account_id')

{{ $message }}

@enderror

يُحفظ المصروف كمسودة ولا يُرحَّل إلى دفتر الأستاذ إلا بعد اعتماده من المدير أو الإدارة.

ملاحظات

@error('notes')

{{ $message }}

@enderror
إلغاء
@endsection @push('scripts') @endpush