هذا المشروع عبارة عن تطبيق أندرويد لتسجيل وإدارة ساعات عمل الموظفين الحضوريين وغير الحضوريين في شركة، ويتضمن ثلاثة أنواع من المستخدمين: الموظف، المدير، والمحرر. يوفّر التطبيق إمكانية تسجيل الدخول والخروج، عرض تقارير العمل، إدارة الرواتب، وإرسال التعليقات الإدارية.
الميزات الرئيسية:
تسجيل الدخول والخروج:
بعد تسجيل الدخول، يُوجَّه المستخدم مباشرة إلى صفحة تسجيل ساعات العمل.
عند بدء العمل، يضغط على خيار "الدخول"، وعند نهاية الدوام، يسجل "الخروج" مع كتابة شرح للمهام التي تم إنجازها.
يقوم النظام بحساب ساعات العمل تلقائياً وتخزينها في قاعدة البيانات.
عرض التقارير وإدارة الرواتب:
يمكن للموظفين عرض تقارير ساعات العمل والرواتب التي تم استلامها.
يمكن تصفية البيانات حسب فترة زمنية معينة لعرض معلومات أدق.
إدارة الموظفين (خاصة بالمدير والمحرر):
عرض وإدارة وتحرير ساعات عمل جميع الموظفين.
إمكانية التصفية حسب اسم الموظف (يتم استيراد الأسماء مباشرة من قاعدة البيانات).
إرسال واستقبال التعليقات الإدارية:
يمكن للمدير أو المحرر إرسال تعليق لموظف معيّن على ساعة عمل معينة، يشمل نقداً أو اقتراحاً أو توضيحاً.
إشعار فوري (Push Notification) يتم إرساله للموظف عند استلام تعليق، حتى وإن كان التطبيق مغلقاً.
تظهر التعليقات أيضاً في صفحة الإشعارات.
لا يحق للموظف الرد على التعليقات إلا بعد استلام تعليق أول من المدير أو المحرر.
الملف الشخصي:
إمكانية تعديل معلومات الملف الشخصي بما في ذلك كلمة المرور، رقم الحساب البنكي (شبا)، وصورة الملف الشخصي (يتم اختيارها من المعرض).
دقة عالية في تسجيل الوقت:
لتجنّب تسجيل وقت غير دقيق بسبب اختلاف توقيت الهاتف، يتم جلب الوقت الحقيقي من خلال API لضمان موثوقية البيانات.
التقنيات المستخدمة:
معمارية MVVM لتوفير هيكلية معيارية وتجربة استخدام سلسة وكتابة كود فعالة.
استخدام Coroutines لإدارة العمليات غير المتزامنة وتسريع جلب البيانات.
استخدام Retrofit للتواصل السريع والآمن مع الخادم وتبادل البيانات مع قاعدة البيانات.
استخدام Firebase Cloud Messaging (FCM) لإرسال الإشعارات الفورية.
تصميم واجهة المستخدم بناءً على نموذج Figma المقدّم من العميل.
دوري في المشروع:
تطوير كامل لتطبيق الأندرويد باستخدام Kotlin وXML.
تنفيذ معمارية MVVM، وإدارة طلبات API باستخدام Retrofit، وتطبيق Coroutines.
التعاون مع فريق الخادم الخلفي لتنسيق قواعد البيانات وواجهات البرمجة (APIs).
تنفيذ دقيق لتصميم واجهة المستخدم وفقاً للنموذج المقدّم.