نظام شامل لإدارة العقارات والمستأجرين والمالكين مع تتبع المدفوعات والإيجارات.
- إضافة وتعديل وحذف العقارات
- عرض بطاقة مستقلة لكل عقار تحتوي على:
- رقم العقار
- اسم العقار
- بيانات العقار (النوع، الموقع، المساحة، عدد الغرف)
- حالة الإيجار (مؤجر/غير مؤجر)
- إضافة وتعديل بيانات المستأجرين
- معلومات شاملة تشمل:
- البيانات الشخصية (الاسم، الهاتف، البريد الإلكتروني، رقم الهوية)
- تفاصيل الإيجار (تاريخ البداية والنهاية)
- المبالغ المالية (الإيجار قبل الضريبة، نسبة الضريبة، القيمة النهائية)
- نوع العقد (سنوي أو شهري)
- طريقة الدفع وتوزيع الدفعات
- توليد جدول الدفعات تلقائياً عند حفظ بيانات المستأجر
- للعقود السنوية: خيارات متعددة (دفعة واحدة، دفعتين، ثلاث دفعات، أربع دفعات)
- للعقود الشهرية: توزيع على 12 دفعة شهرية
- جدول شامل يحتوي على:
- رقم الدفعة
- تاريخ الاستحقاق
- مبلغ الدفعة
- تاريخ الدفع الفعلي
- المبلغ المدفوع
- الرصيد المتبقي
- حالة الدفعة (مستحق، مدفوع، متأخر، مدفوع جزئياً)
- إضافة وإدارة بيانات المالكين
- تحديد نسبة الملكية لكل مالك
- ربط العقارات بالمالكين
- كشوفات حسابات مفصلة لكل مالك
- عرض جميع المدفوعات المرتبطة بعقارات المالك
- حساب نصيب المالك من كل دفعة حسب نسبة الملكية
- تفاصيل شاملة تشمل:
- تاريخ الدفعة
- العقار المرتبط
- اسم المستأجر
- المبلغ المدفوع
- نصيب المالك
- إرسال تذكيرات الدفع عبر واتساب
- رسائل تلقائية تحتوي على تفاصيل الدفعة
- رقم الهاتف مأخوذ من بيانات المستأجر
- إمكانية إرفاق ملفات مع كل دفعة
- توثيق المدفوعات بالمستندات
- React 18 - مكتبة واجهة المستخدم
- Material-UI (MUI) - مكتبة المكونات والتصميم
- React Router - التنقل بين الصفحات
- Vite - أداة البناء والتطوير
- Electron - لتحويل التطبيق إلى تطبيق سطح مكتب
- date-fns - معالجة التواريخ
- UUID - توليد المعرفات الفريدة
- LocalStorage - حفظ البيانات محلياً
src/
├── components/ # مكونات React
│ ├── Dashboard.jsx # لوحة التحكم الرئيسية
│ ├── AddProperty.jsx # إضافة عقار جديد
│ ├── PropertyCard.jsx # بطاقة العقار
│ ├── PropertyDetails.jsx # تفاصيل وتعديل العقار
│ ├── TenantDetails.jsx # بيانات المستأجر
│ ├── PaymentsTable.jsx # جدول الدفعات
│ ├── OwnersManagement.jsx # إدارة المالكين
│ └── OwnerStatements.jsx # كشوفات المالكين
├── context/ # إدارة الحالة
│ └── PropertyContext.jsx # سياق البيانات الرئيسي
├── App.jsx # المكون الرئيسي
├── main.jsx # نقطة الدخول
└── index.css # الأنماط العامة
- تثبيت التبعيات:
npm install- تشغيل الخادم المحلي:
npm run dev- فتح المتصفح على:
http://localhost:3005
npm run electronnpm run electron-pack- نظام تشغيل Windows 10 أو أحدث
- مساحة حرة على القرص: 200 ميجابايت
- صلاحيات مسؤول (Administrator) لتثبيت التطبيق
-
بناء التطبيق للإنتاج:
-
افتح موجه الأوامر (Command Prompt) أو PowerShell
-
انتقل إلى مجلد المشروع
-
قم بتثبيت الحزم المطلوبة:
npm install -
قم ببناء التطبيق:
npm run electron-pack
-
-
بعد الانتهاء من البناء، سيتم إنشاء ملف التثبيت في المجلد:
dist-electron\كودر لمحاسبة العقارات Setup 1.0.0.exe
-
قم بتشغيل ملف التثبيت واتبع التعليمات على الشاشة:
- انقر نقرًا مزدوجًا على ملف التثبيت
- اتبع معالج التثبيت
- اختر مجلد التثبيت (افتراضي: C:\Program Files\كودر لمحاسبة العقارات)
- اختر إنشاء اختصار على سطح المكتب
- انقر على "تثبيت" وانتظر حتى ينتهي التثبيت
-
بعد التثبيت:
- يمكنك تشغيل التطبيق من خلال اختصار سطح المكتب
- سيتم إنشاء أيقونة للتطبيق باسم "كودر لمحاسبة العقارات"
- جميع البيانات سيتم حفظها محليًا على جهازك
- انقر على زر "إضافة عقار جديد" في لوحة التحكم
- املأ البيانات المطلوبة (رقم العقار، الاسم، النوع، الموقع، المساحة)
- احفظ البيانات
- من بطاقة العقار، انقر على "إضافة مستأجر"
- املأ بيانات المستأجر الشخصية
- حدد تفاصيل الإيجار (التواريخ، المبلغ، نوع العقد)
- اختر طريقة الدفع وعدد الدفعات
- احفظ البيانات (سيتم توليد جدول الدفعات تلقائياً)
- من بطاقة العقار، انقر على "الدفعات"
- في جدول الدفعات، يمكنك:
- تعديل حالة الدفعة
- تسجيل المبلغ المدفوع وتاريخ الدفع
- إرسال تذكير واتساب
- إرفاق ملفات
- انتقل إلى صفحة "المالكين"
- أضف مالك جديد مع تحديد نسبة الملكية
- اربط العقارات بالمالك
- اعرض كشف حساب المالك لرؤية نصيبه من المدفوعات
يستخدم النظام LocalStorage لحفظ البيانات محلياً في المتصفح. البيانات تُحفظ تلقائياً عند كل تغيير ولا تحتاج لخادم أو قاعدة بيانات خارجية.
النظام مصمم ليكون قابلاً للتوسع والتطوير. يمكن إضافة المزيد من المميزات مثل:
- تقارير مالية مفصلة
- تصدير البيانات
- تنبيهات الاستحقاق
- نظام النسخ الاحتياطي
- تكامل مع أنظمة الدفع الإلكتروني
هذا المشروع مطور خصيصاً لإدارة العقارات ويمكن استخدامه وتعديله حسب الحاجة.