المنصة الحية والخطوات الأولى
المنصة تعمل الآن على helsen-med.com. تسرد هذه الصفحة كل عنوان عام، وتوضّح بصراحة ما يعمل اليوم وما لم يعمل بعد، وترافق المشغّل خلال يومه الأول. وتنتهي ببدايات سريعة للمشترين والبائعين والسائقين والمرسِلين.
العناوين الحية
| العنوان | ما هو | من يستخدمه |
|---|---|---|
| helsen-med.com | المتجر. العربية على /ar والإنجليزية على /en؛ ويُحوَّل www.helsen-med.com إليه. | المشترون |
| seller.helsen-med.com | لوحة البائع على الويب: الطلبات والمنتجات والمخزون والموظفون والانضمام. | مالكو المتاجر وموظفوها |
| delivery.helsen-med.com | لوحة التوزيع والتوصيل على الويب: المهام والإسناد والمسارات والمناوبات والنقد. | المرسِلون (راجع الملاحظة عن المديرين أدناه) |
| api.helsen-med.com | الواجهة البرمجية على /api/v1؛ وواجهة Swagger التفاعلية على /docs. | كل التطبيقات؛ والمطورون والمشغّلون |
| docs.helsen-med.com | موقع التوثيق هذا. | الجميع |
| تطبيقات المشتري والبائع والسائق | تطبيقات أندرويد يوزّعها الفريق كملفات APK — ليست على Google Play بعد. تتصل بـ api.helsen-med.com وتثبّت المفتاح العام لشهادة TLS الخاصة به. | المشترون والبائعون والسائقون |
تطبيق لوحة الإدارة موجود في المستودع لكنه غير منشور على عنوان عام بعد؛ ونشره بانتظار قرار. وحتى ذلك الحين تُنفَّذ الإجراءات الإدارية عبر الواجهة البرمجية — إذ تتيح واجهة Swagger على api.helsen-med.com/docs للمدير المسجّل دخوله استدعاء كل نقاط الإدارة.
ما يعمل اليوم وما لم يعمل بعد
| المجال | الحالة |
|---|---|
| التصفح والبحث والسلة وإتمام الشراء | مفعّل يتصفح الزوار ويملؤون السلة؛ أما إتمام الشراء فيتطلب مشتريًا مسجّل الدخول. |
| الدفع عند الاستلام | مفعّل وسيلة الدفع الوحيدة. الأسعار بالريال القطري (QAR). |
| الدفع بالبطاقة | متوقف لم يُهيّأ Stripe ولا Paymob. راجع المال والضريبة والعمولة. |
| الشحن | مفعّل قطر بالكامل: العادي 25.00 ريال (2–4 أيام عمل)، والسريع 50.00 ريال (يوم العمل التالي)، يوصله سائقو المنصة. لا يوجد حد للشحن المجاني. |
| الضريبة | مفعّل قطر 0%، والأسعار شاملة للضريبة. |
| البريد والرسائل النصية والإشعارات الفورية | متوقف المشغّلات مضبوطة على none: كل بريد ورسالة نصية وإشعار فوري يوضع في الطابور ولا يُرسل حتى تُهيّأ جهة مزوّدة. الإشعارات داخل التطبيق (الجرس في الموقع والتطبيقات) تعمل. |
| الكتالوج | مستورد كتالوج عمرو أفندي: 3 فئات (الأزياء والمنسوجات، الجمال والعناية، المنزل ونمط الحياة)، و8 منتجات، و20 متغيّرًا، و5 بائعين (الصنّاع). مخزون افتتاحي 25 لكل متغيّر؛ وخطة عمولة 10%. |
| البائعون المستوردون | بلا مالكين ليس للبائعين الخمسة حسابات مستخدمين، فلا يستطيع أحد قبول طلباتهم أو تنفيذها بعد. أسماؤهم القانونية وعنوان المستودع قيم مؤقتة. |
| لوحة الإدارة | غير منشورة استخدم الواجهة البرمجية عبر Swagger في الأثناء. |
| صور المنتجات | الأصلية خدمة تصغير الصور (imgproxy) غير منشورة، فتُعرض الصور بحجمها الأصلي. |
كل ما يعتمد على وصول رسالة إلى شخص ما لا يصل بعد: رموز الدخول بالبريد، ورموز تفعيل البريد، وروابط إعادة تعيين كلمة المرور، ودعوات موظفي البائع، ورسائل الطلبات كلها تنتظر في الطابور. ويظل بإمكان المشترين التسجيل بكلمة مرور والدخول بها. أما رمز التسليم الذي يحتاجه السائق عند الباب فيُرسل بالرسائل النصية، لكنه يُسلَّم داخل التطبيق أيضًا، فيستطيع المستلم قراءته من إشعاراته.
قائمة اليوم الأول للمشغّل
- سجّل الدخول بحساب المدير. يوجد حساب مدير أعلى واحد؛ بيانات دخوله لدى الفريق، ولا تُنشر في هذا الموقع أبدًا. ولأن لوحة الإدارة غير منشورة، سجّل الدخول عبر واجهة Swagger: استدعِ
POST /api/v1/auth/loginثم استخدم Authorize مع رمز الوصول المُعاد. - فعّل التحقق بخطوتين لهذا الحساب. يجب على المديرين اجتياز عامل ثانٍ: وإلى أن يُضبط، يُرفض كل استدعاء عدا الدخول والخروج والتسجيل في العامل الثاني بالخطأ
auth.MFA_REQUIRED. استدعِPOST /api/v1/auth/mfa/enroll، وأضف المفتاح المُعاد إلى تطبيق مصادقة، ثم أكّد عبرPOST /api/v1/auth/mfa/confirmبرمز حالي. ومن بعدها يتطلب الدخول كلمة المرور ورمزًا (الحقلmfaTokenفي استدعاء الدخول). - امنح كل بائع مستورد حساب مالك. إلى أن يكون للبائع مالك، لا يمكن قبول طلباته. لا توجد بعد شاشة أو نقطة نهاية تربط مالكًا ببائع قائم (فدعوات الموظفين تنشئ موظفين لا مالكين، وتُرسل بالبريد)، لذا فهذا بند مفتوح على الفريق حسمه قبل أن تستقبل هذه المنتجات طلبات حقيقية.
- صحّح بيانات البائعين ومخزونهم. الأسماء القانونية وعنوان المستودع قيم مؤقتة. يمكن تعديل المستودعات ومستويات المخزون عبر نقاط المخزون؛ أما الاسم القانوني للبائع فلا توجد نقطة لتعديله بعد تقديم الطلب، فتصحيحه يحتاج الفريق أيضًا. اضبط المخزون الحقيقي لكل متغيّر — فالرقم الافتتاحي 25 ليس جردًا.
- هيّئ البريد. اضبط مشغّل البريد على SMTP بإعدادات المزوّد في بيئة الخادم، ثم أعد تشغيل الواجهة البرمجية والعامل الخلفي (دليل التشغيل في
infra/deploy/README.md). عندها تُرسل الإشعارات المنتظرة؛ والرموز التي في هذا الطابور ستكون قد انتهت صلاحيتها منذ زمن، فعلى المستخدمين طلب رمز جديد. وتسير الرسائل النصية والإشعارات الفورية على النمط نفسه عند توفر الحسابات. - راجع الضريبة والشحن. تأكّد من ضريبة قطر 0% الشاملة، ومن سعري العادي والسريع. مُدد التوصيل (2–4 أيام عمل، يوم العمل التالي) أُخذت من القيم الافتراضية لبيئة التطوير ولم تُعتمد كقرار تجاري — اعتمدها.
- تحقق من مناطق التوصيل والموظفين. لا يُسند للسائقين إلا محطات داخل مناطق توصيلهم، فيجب أن تغطي منطقة واحدة على الأقل قطر. أنشئ حساب مرسِل (امنحه الدور
DISPATCHER) واعتمد سائقًا تجريبيًا واحدًا على الأقل مع منطقة وحد نقدي — راجع التوصيل والسائقون. - ثبّت ملفات APK على هواتف الاختبار. ثبّت تطبيقات المشتري والبائع والسائق من الفريق (يطلب أندرويد السماح بتثبيت التطبيقات من ذلك المصدر). سجّل الدخول بكلمة مرور: فرموز الرسائل النصية لا تُرسل بعد.
- ضع طلبًا تجريبيًا بالدفع عند الاستلام وتابعه حتى النهاية، على منتج لبائع له مالك:
- المشتري: يسجّل الدخول، ويضيف إلى السلة، ويختار عنوانًا في قطر وطريقة شحن، ويدفع عند الاستلام.
- البائع: يقبل مجموعة الطلب، ويغلّفها، ويعلّمها جاهزة للاستلام (لوحة البائع على الويب).
- التوزيع: يتحقق من إنشاء مهمة التوصيل وإسنادها؛ ويسندها يدويًا عند الحاجة (لوحة التوصيل على الويب).
- السائق: يقبل، ويستلم، ويبدأ النقل، ويطلب رمز التسليم، ويُدخل الرمز الذي يقرؤه المشتري من إشعاراته داخل التطبيق، ويسجّل النقد، ويُكمل.
- تأكّد أن الطلب يظهر للمشتري مُسلَّمًا، وأن نقد السائق يظهر للتسوية.
بدايات سريعة
المشتري
- افتح helsen-med.com (أو تطبيق المشتري) واختر العربية أو الإنجليزية.
- تصفّح أو ابحث، واختر متغيّرًا، وأضفه إلى السلة. تُحفظ سلة الزائر وتُدمج عند تسجيل الدخول.
- أنشئ حسابًا بالبريد وكلمة المرور (اختر تسجيل الدخول بكلمة المرور بدلاً من ذلك في صفحة الدخول) — فرموز البريد لا تُرسل بعد.
- أتمم الشراء: اختر عنوان توصيل في قطر، وطريقة شحن لكل بائع، والدفع عند الاستلام.
- تابع الطلب من حسابك. وعند وصول السائق، اقرأ له رمز التسليم من إشعاراتك.
البائع
- سجّل الدخول على seller.helsen-med.com أو في تطبيق البائع.
- اضبط الدخول بخطوتين بتطبيق مصادقة — وهو مطلوب قبل أن تتمكن من إضافة حساب بنكي.
- راقب قائمة الطلبات واقبل الطلبات الجديدة قبل مهلتها؛ ثم غلّفها وعلّمها جاهزة للاستلام.
- حافظ على صحة المخزون والأسعار. التفاصيل: دليل البائع.
السائق والمرسِل
- السائق: ثبّت ملف APK للسائق وسجّل الدخول بالبريد وكلمة المرور. بعد اعتمادك ترى مهامك ومسارك؛ ولكل محطة تسليم اطلب رمز التسليم، وأدخل الرمز الذي يقرؤه المستلم، وسجّل النقد في طلبات الدفع عند الاستلام، ثم أكمل المهمة.
- المرسِل: سجّل الدخول على delivery.helsen-med.com بحساب مرسِل. راقب المهام غير المُسندة، وأسند أو أعد بناء المسارات عند الحاجة، وأدِر المناوبات، وسجّل تسليم السائقين للنقد.
نموذج الدخول في لوحة التوصيل يطلب البريد وكلمة المرور فقط — وليس فيه حقل لرمز تطبيق المصادقة، بينما يجب على المديرين اجتياز عامل ثانٍ. لذلك لا يستطيع حساب مدير العمل هناك اليوم؛ استخدم حساب مرسِل.
عندما لا يسير أمر كما هو متوقع، راجع حل المشكلات والأسئلة الشائعة.