(int)$customer['id'], 'customer_name' => $customer['title'], 'amount' => $amount, 'payment_method' => $method, 'payment_method_label' => payment_method_label($method), 'notes' => $notes, 'created_date' => date('Y-m-d H:i'), 'created_by' => current_user()['username'] ?? 'system', ], 'posted' ); set_flash('success', 'تم ترحيل مقبوضات العميل بنجاح.'); redirect('accounting.php'); } } if ($action === 'supplier_payment') { $supplierId = (int)($_POST['supplier_id'] ?? 0); $amount = (float)($_POST['amount'] ?? 0); $method = (string)($_POST['payment_method'] ?? 'bank_transfer'); $notes = trim((string)($_POST['notes'] ?? '')); $supplier = fetch_record('supplier', $supplierId); if (!$supplier) { $errors[] = 'اختر موردًا صحيحًا لتسجيل الدفعة.'; } if ($amount <= 0) { $errors[] = 'أدخل مبلغ دفعة أكبر من صفر.'; } if (!array_key_exists($method, payment_method_options())) { $errors[] = 'طريقة السداد غير صحيحة.'; } if (!$errors && $supplier) { create_record( 'supplier_payment', 'دفعة إلى ' . $supplier['title'], next_code('SPAY', 'supplier_payment'), [ 'supplier_id' => (int)$supplier['id'], 'supplier_name' => $supplier['title'], 'amount' => $amount, 'payment_method' => $method, 'payment_method_label' => payment_method_label($method), 'notes' => $notes, 'created_date' => date('Y-m-d H:i'), 'created_by' => current_user()['username'] ?? 'system', ], 'posted' ); set_flash('success', 'تم ترحيل دفعة المورد بنجاح.'); redirect('accounting.php'); } } if ($action === 'expense_entry') { $title = trim((string)($_POST['title'] ?? '')); $category = (string)($_POST['category'] ?? 'operations'); $amount = (float)($_POST['amount'] ?? 0); $notes = trim((string)($_POST['notes'] ?? '')); if ($title === '') { $errors[] = 'أدخل اسم المصروف.'; } if ($amount <= 0) { $errors[] = 'أدخل مبلغ مصروف أكبر من صفر.'; } if (!array_key_exists($category, expense_category_options())) { $errors[] = 'تصنيف المصروف غير صحيح.'; } if (!$errors) { create_record( 'expense_entry', $title, next_code('EXP', 'expense_entry'), [ 'category' => $category, 'category_label' => expense_category_label($category), 'amount' => $amount, 'notes' => $notes, 'created_date' => date('Y-m-d H:i'), 'created_by' => current_user()['username'] ?? 'system', ], 'posted' ); set_flash('success', 'تم ترحيل المصروف بنجاح.'); redirect('accounting.php'); } } } $counts = fetch_counts(); $summary = accounting_summary(); $customerStatements = customer_statement_rows(); $supplierStatements = supplier_statement_rows(); $customerPayments = fetch_records('customer_payment'); $supplierPayments = fetch_records('supplier_payment'); $expenses = fetch_records('expense_entry'); $activity = recent_accounting_activity(10); $customers = customer_dataset(); $suppliers = supplier_dataset(); render_header('المحاسبة والتقارير المالية', 'إدارة المقبوضات والمدفوعات والمصروفات وكشوف حساب العملاء والموردين مع مؤشرات ربح وتدفق نقدي.', 'accounting'); ?>
Accounting & Statements

محاسبة تشغيلية مرتبطة بالمبيعات والمشتريات.

تسحب هذه الصفحة الذمم المدينة من فواتير المبيعات، والذمم الدائنة من أوامر الشراء المستلمة، ثم تخصم منها المقبوضات والمدفوعات والمصروفات لتكوين صورة مالية فورية.

الربح المتوقع
صافي التدفق النقدي:
المقبوضات اليوم:
فواتير المبيعات
فاتورة
مشتريات مستلمة
مرتبطة بالموردين
مقبوضات العملاء
حركة
مدفوعات الموردين
حركة
المصروفات
قيد
ذمم العملاء
قابلة للتحصيل
ذمم الموردين
واجب سدادها
صافي التدفق النقدي
مقبوضات - مدفوعات - مصروفات

تسجيل مقبوضات عميل

تُخصم تلقائيًا من رصيد العميل المستحق.

تسجيل دفعة مورد

تُخصم من الذمم الدائنة على المورد مباشرة.

إضافة مصروف

يؤثر مباشرة على الربح المتوقع والتدفق النقدي.

كشف حساب العملاء

الرصيد = فواتير المبيعات - المقبوضات المسجلة.

العميلالفواتيرالمقبوضاتالرصيد
لا توجد بيانات عملاء لعرض كشف الحساب.

كشف حساب الموردين

الرصيد = مشتريات مستلمة - مدفوعات الموردين.

الموردالمشترياتالمدفوعاتالرصيد
لا توجد بيانات موردين لعرض كشف الحساب.

آخر نشاط محاسبي

يشمل المقبوضات والمدفوعات والمصروفات في سجل سريع.

لا توجد قيود محاسبية مرحّلة بعد.

ملخص القيود المرحّلة

آخر الحركات المالية المسجلة يدويًا داخل النظام.

النوعالمرجعالطرفالتفصيلالمبلغ
'مقبوضات', 'supplier_payment' => 'مدفوعات', default => 'مصروف' }) ?>
لم يتم تسجيل مقبوضات أو مدفوعات أو مصروفات بعد.