تفاصيل العمل

نظام وإدارة مركز صيانة السيارات

1. نبذة عامة عن المشروع (Executive Summary)

نظام ERP متكامل ومصمم خصيصاً لإدارة وتشغيل مراكز صيانة وخدمة السيارات الاحترافية. النظام مبني بمعمارية Offline, LAN-Only First؛ بحيث يعمل بالكامل داخل الشبكة المحلية للورشة دون أي اعتماد على الإنترنت أو خدمات الكلاود، مما يضمن استمرارية التشغيل بنسبة 100% وحماية كاملة للبيانات الحساسة.

يوفر النظام مزامنة لحظية (Real-time Synchronization) فائقة السرعة بين 4 محطات عمل رئيسية في نفس الوقت (الاستقبال، كشك خدمة الزيوت السريعة، قسم الحسابات، وإدارة الورشة)، بواجهة مستخدم عربية بالكامل (RTL) متوافقة مع أحدث معايير تجربة المستخدم.

2. الموديولات الوظيفية الأساسية (Core ERP Modules)

إدارة علاقات العملاء والمركبات (Customer & Fleet CRM):

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

تتبع تاريخ الزيارات، قراءات عدادات الكيلومتر، وسجل الصيانات والفحوصات التراكمي لكل مركبة.

محرك أوامر الشغل ومسار الحالات (Work Order State Machine):

إدارة دورة حياة أمر الشغل وفق مسار خطي صارم: جديد ➔ جاري العمل ➔ مكتمل ➔ جاهز للحسابات ➔ مغلق، تمنع القفز العشوائي للحالات وتضمن توزيع المسؤوليات.

أرقام أوامر شغل متسلسلة رسمية تصدر ذرياً عبر Database Sequences لمنع أي تضارب بين الأجهزة في نفس اللحظة.

إدارة المخازن ودفتر الأستاذ (Inventory & Stock Movement Ledger):

رقابة صارمة على أرصدة قطع الغيار والزيوت، مع تسجيل كل حركة دخول أو خروج في Append-only Ledger.

ميزة ذكية لإرجاع الأصناف: استرجاع تلقائي للرصيد إذا لم يبدأ العمل، أو إلزام المستخدم بتحديد سبب الإلغاء (تالف، مستهلك، مفقود) لتوثيقه في دفتر الجرد دون إفساد الحسابات.

كشك الزيوت السريع (Restricted Oil Bay Kiosk):

واجهة تشغيل معزولة وسريعة مخصصة لفني عنبر الزيوت، تعرض فقط البنود المخصصة له بأزرار سريعة اللمس، مع حجب كامل لبيانات العملاء وأسعار الورشة لضمان الخصوصية وسرعة الإنجاز.

فحص الـ 10 نقاط الفني (Vehicle Inspection Checklist):

كروت فحص فني متعددة لكل أمر شغل (فحص دخول / فحص تسليم)، مع تقييم ثلاثي للحالة (سليم / يحتاج صيانة / خطر)، وتوليد كشف فحص رسمي جاهز للطباعة للعميل.

المحرك المالي والفوترة المجزأة (Financial Engine & Payment Ledger):

دورة حياة الفاتورة: مسودة (Draft) قابلة لتعديل الخصومات والضرائب ➔ مصدرة رسمياً (Issued) تجمد بنود وتكلفة الفاتورة للأبد (Immutable Snapshot).

دفتر دفعات يدعم السداد الجزئي والمتعدد (نقدي، بطاقة، تحويل بنكي)، مع احتساب تلقائي لحالة السداد.

الأمان وصلاحيات الوصول الديناميكية (Dynamic RBAC & Security Audit):

نظام صلاحيات دقيق (Role-Based Access Control) مخزن في الداتابيز ومفحوص لحظياً مع كل طلب، مع سجل رقابة أمني تقني (AuditLog) يرصد كافة التعديلات الإدارية وتغييرات كلمات السر ومحاولات الدخول.

لوحة التحكم والمؤشرات اللحظية (Real-time Analytics Dashboard):

حساب فوري لمؤشرات الأداء (KPIs) للفترات (اليوم، الأسبوع، الشهر)، تتضمن صافي الإيرادات، الأقسام الأكثر تشغيلاً، إنتاجية الفنيين، وتنبيهات النواقص الحرجة.

3. المكدس التقني (Technology Stack)

الواجهة الأمامية (Frontend):

Angular (Modern Standalone Architecture, Strict TypeScript).

تصميم عربي متكامل (RTL)، مع استخدام خطوط ونظم أيقونات مدمجة ذاتياً بدون أي استدعاء خارجي (Zero-CDN Dependency).

الخلفية والواجهات البرمجية (Backend):

Node.js + NestJS (Modular Layered Architecture).

بنية تحتية تعتمد على المعايير القياسية: Dependency Injection, Global Guards, Interceptors, Filters, Pipes.

المزامنة اللحظية (Real-time Engine):

Socket.IO Gateway: ربط أجهزة الورشة الـ 4 بنظام غرف وعزل أمني لتحديث الشاشات والعدادات في أجزاء من الثانية.

قاعدة البيانات وإدارة النماذج (Database & ORM):

PostgreSQL 16: اختيار استراتيجي لإدارة العمليات المالية الذرية (ACID Transactions)، والقيود العلائقية الصارمة (Foreign Keys & Constraints)، وحقول الـ JSONB، والـ Sequences لمنع الـ Concurrency Race Conditions.

Prisma ORM: لضمان الـ Type-Safety والـ Migrations الموثقة.

البوابة وخادم الويب (Reverse Proxy):

Nginx (Alpine-based): البوابة الوحيدة المكشوفة للشبكة المحلية، مسؤولة عن تخديم الـ Frontend الثابت وتمرير الـ API والـ WebSockets للباك إند.

4. دور Docker ولماذا اخترناه؟ (The Architectural Role of Docker)

لم نستخدم Docker كمجرد أداة لتشغيل المشروع، بل كان حجر الزاوية في المعمارية الأمنية والتشغيلية للسيستم:

عزل وتأمين الشبكة الداخلية (Dual-Network Hardening):

تم تقسيم النظام داخل Compose إلى شبكتين معزولتين:

شبكة edge: تربط فقط بين Nginx و NestJS Backend.

شبكة data (بخاصية internal: true): تربط فقط بين NestJS Backend و PostgreSQL.

النتيجة الأمنية العالية: قاعدة البيانات ومحرك الباك إند غير مكشوفين نهائياً بأي بورت على الشبكة المحلية للورشة (No Port Mapping). البوابة الوحيدة المتاحة للأجهزة هي Nginx على المنفذ المخصص، مما يمنع أي محاولة اختراق أو اتصال مباشر بالداتابيز.

التشغيل الفوري المضمون (Zero-Friction Offline Deployment):

بيئة عمل الورش لا تحتمل مشاكل "الكود شغال عندي ومش شغال على جهاز الورشة".

Docker جمع (Nginx + Angular + NestJS + PostgreSQL) داخل Containers خفيفة ومعزولة بالكامل، يتم تشغيلها ومزامنتها على السيرفر المحلي للورشة بأمر واحد دون الحاجة لتثبيت أي برامج أو بيئات تشغيل إضافية على الجهاز.

الحفاظ على البيانات واستمرارية التشغيل (Persistence & Host Reboot Resilience):

استخدام Docker Named Volumes لحفظ بيانات الـ Postgres، و Bind Mounts لحفظ صور وفواتير النظام، مما يضمن أن البيانات وملفات العملاء تظل سليمة وغير قابلة للفقدان حتى عند إعادة تشغيل الكمبيوتر الرئيسي أو تحديث الحاويات.

تحديد الموارد وضبط استهلاك النظام (Bounded Resources & Logging):

تم ضبط قيود صارمة على أحجام سجلات التشغيل (Log Rotation: max-size: 10m) لمنع امتلاء مساحة التخزين على مدار سنوات التشغيل، مع تفعيل الـ Healthchecks الآلية لضمان عدم توجيه ترافيك إلا بعد تأكد جاهزية الداتابيز.

بطاقة العمل

اسم المستقل
عدد الإعجابات
0
تاريخ الإضافة
تاريخ الإنجاز
المهارات