تفاصيل العمل

في هذا المشروع اشتغلت على تطوير منصة تبرعات مخصّصة لتحدي بين فرق من الجامعات العُمانية، بحيث تقدر كل جامعة تشارك بفرقها، ويتم احتساب التبرعات لها بشكل واضح وشفاف. المنصة مبنية بـ TypeScript/React في الواجهة الأمامية، و Node.js/MongoDB في الـ backend، مع تكامل مباشر مع بوابة دفع إلكترونية (Thawani) لمعالجة التبرعات أونلاين.

من ناحية الـ functionality، صممت تدفّق كامل لعملية التبرع يبدأ من تعبئة نموذج بسيط يختار فيه المتبرع:

اسم الفريق

الجامعة التابعة لها

رقم الجوال (مع دعم الأرقام العربية وتحويلها تلقائيًا)

مبلغ التبرع

وأسماء أعضاء الفريق

بعد إرسال النموذج، السيرفر يتحقق من صحة البيانات (قيمة التبرع، هوية الجامعة، وعدم تكرار اسم الفريق داخل نفس الجامعة)، ثم ينشئ/يحدّث سجل المتبرع والفريق في قاعدة البيانات، ويربطه بالجامعة المناسبة. بعدها يتم إنشاء جلسة دفع فعلية عبر بوابة الدفع.

بعد نجاح الدفع، يتم تحديث إجمالي تبرعات الفريق وإجمالي تبرعات الجامعة، مع دعم نظام الإحالة (دعوات بين الفرق) عن طريق أكواد مخصّصة، بحيث نقدر نفرّق بين التبرعات المباشرة والتبرعات اللي جاءت عن طريق الإحالات. بنيت كذلك منطق لاستخراج الترتيب (Leaderboard) لأعلى الفرق والجامعات من حيث إجمالي التبرعات، ويُستخدم في عرض نتائج التحدي بشكل حيّ.

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

بطاقة العمل

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