مين بيدخل على السيستم، وبيعمل إيه بالظبط
في ميتنج أغسطس العميل عدّ الأدوار واحد واحد — مودريشن، داتا إنتري، أوبريشن، فاليديشن، أوديتور، محاسب، خدمة عملاء، شكاوى، والمين يوزر — واتفقنا إن الصلاحيات تبقى ديناميك تماماً: يعمل حساب باسم الشخص ويحدد له الصفحات والأزرار جوه كل صفحة (يطبع، يغيّر، يلغي…). الصفحة دي بتجمع كل الأدوار من كل المصادر، وبتقترح مصفوفة صلاحيات مبدئية نبدأ بيها لحد ميتنج القيود التفصيلية اللي لسه مستنيينه (Q5).
الفكرة في سطور
الدور مش «نوع حساب» ثابت في الكود — الدور قالب صلاحيات بيتعمل ويتعدل من اللوحة، والمستخدم بياخد دور أو أكتر، وكل ده بنطاق (أنهي مخزن، أنهي قناة، أنهي فرع).
حساب لكل شخص
العميل قالها: «محمد مودريشن» — حساب باسم الشخص مش حساب مشترك. كل إجراء في السيستم متسجل باسم اللي عمله (R11)، والحساب المشترك بيبوّظ ده.
S2الصفحة + الزرار
الصلاحية بتتحدد على مستويين: يدخل الصفحة ولا لأ، وجوه الصفحة يقدر يعمل إيه (عرض، إضافة، تعديل، طباعة، اعتماد، حذف، تصدير).
S2السيرفر هو الحَكَم
إخفاء الزرار في الشاشة راحة للمستخدم بس. الحماية الحقيقية إن السيرفر بيرفض أي عملية من غير الصلاحية — حتى لو حد بعت الطلب بإيده.
S8الأدوار كلها
مجمّعة من ميتنج أغسطس S2 S3 والـ PDF S1 والجروب S6. الكود الصغير جنب كل دور هو اختصاره في المصفوفة.
| الكود | الدور | الشغل الأساسي | المصدر | ملاحظة |
|---|---|---|---|---|
OW | المالك / الأدمن الرئيسي | كل حاجة + نقل حالة الطلب لأي مكان + التسعير + حجز الأكواد + Prime | S2 S3 S6 | «المين يوزر» — على الأقل واحد دايماً |
MR | مودريشن قطاعي | إضافة طلبات القطاعي، الحجوزات والطلبات المركونة، متابعة العملاء | S2 S3 | — |
MW | مودريشن جملة | طلبات الجملة (الشاشة الخضرا)، متابعة التجار | S3 | «الاتنين» = نفس الدور بنطاق قناتين |
CS | خدمة العملاء | الاستثناءات واللمبة، المكالمات، التأكيد اليدوي، الإلغاء | S2 | الـ «Call center» في الميتنج |
CP | الشكاوى | استقبال الشكاوى ومتابعتها لحد الحل | S2 | «وممكن حد للشكاوي» |
DE | إدخال البيانات | المنتجات والمتغيرات والأكواد والباركود | S1 S2 | «اللي بيدخل المنتجات» |
CO | أوبريشن — مجمّع | الطباعة، التجميع بالمكان، التقفيل، التسليم للمندوب | S2 | «كوليكتور اللي بيعمل بيكنج» |
AU | أوبريشن — مراجع | مراجعة التسكين والأماكن بالمسدس، الجرد | S1 S2 | «الأوديتور تحت الأوبريشن» |
RC | مسؤول استلام / مخزن | الاستلام في كل مخزن، تأكيد التحويلات الداخلة، التسكين | S1 S3 | بنطاق مخزنه |
CT | العدّاد | العد بالقطعة، المقارنة بالاستلام، سحب العينات | S1 S3 | «الكاونتر» |
QC | فريق الجودة | فحص كل قطعة، فرز أول / فرز تاني / تالف | S1 S3 | 7–8 بنات · بنطاق البراند |
DT | فني التالف | مراجعة التالف، إعدام أو إصلاح (مرتجع تالف)، سحب الخامات | S1 S3 | «فني بيعرف يشتغل هاند ميد» |
BM | مدير الفرع | استلام الفرع، تخفيض سعر القطعة اللي فيها عيب | S1 S3 | بنطاق فرعه |
VL | فريق المراجعة (Validation) | مطابقة ملفات التسليم مع شركات الشحن، الطلبات الواقعة | S2 | — |
AC | المحاسب / مسؤول المرتجعات | فحص المرتجعات والقرار، أذون الشراء ومدفوعاتها، المصاريف | S2 | «مش معايا دلوقتي» — الدور جاهز من غير مستخدم |
CR | شركة الشحن | دخول محدود على طلباتها بس | S2 | بوابة منفصلة (القسم 11) |
مش دور لوحده في كلام العميل. افتراضنا: المالك بيراجع ويقبل ويمنح Prime، ويقدر يدي صلاحية «مراجعة طلبات التجار» لمودريشن الجملة — من غير Prime. لو العميل عايز دور منفصل، بيتعمل من اللوحة في دقيقة.
تفاصيل كل دور
اللي بيعمله، واللي مابيعملهوش قصداً — عشان كل دور يبقى واضح للعميل وللموظف.
- كل الشاشات وكل الأزرار.
- «حالة الطلب ينزل فين» — نقل لأي حالة بسبب.
- التسعير والتكلفة، حجز وقفل نطاقات الأكواد.
- قبول التجار، منح Prime، الأدوار والإعدادات.
- مايقدرش يمسح سجل الحركات أو سجل التعديلات — محدش يقدر.
- إضافة طلب بالكود (آخر سعر)، خصم نسبة أو مبلغ في حدود.
- الطلبات المركونة ومؤجلة الشحن.
- لون الشريط وعاجل (يتأكد في الميتنج).
- زرار الجملة مش موجود عندها.
- ماتشوفش التكلفة ولا تنقل الحالة بعد الطباعة.
- الشاشة الخضرا: مخزن الجملة وأسعاره وشرائحه.
- متابعة التجار وطلباتهم، وفتح شات الواتساب.
- مراجعة طلبات التجار لو المالك ادّاها الصلاحية.
- مايمنحش Prime.
- مايعملش طلب قطاعي (إلا لو نطاقه الاتنين).
- الطلبات اللي عليها اللمبة أول القايمة: يكلم العميل ويكتب الحل ويطفيها.
- التأكيد اليدوي بعد المكالمة (الطلب اللي عدّى 24 ساعة).
- الإلغاء قبل الشحن بسبب من القايمة.
- مايطبعش ومايقفلش طلبات.
- مايرجعش مرتجع للمخزون.
- صندوق الشكاوى المربوطة بالطلبات: تسجيل، تصنيف، متابعة، حل.
- يشوف الطلب وتاريخه عشان يرد.
- تعويض (كود خصم) في حدود يحددها المالك.
- مايعدلش الطلبات نفسها.
- المنتجات والمتغيرات والصور والوصف.
- التكويد في النطاق المفتوح + طباعة الباركود.
- المنتج «المتكوّد والمنتظر» بصورة داخلية من الصين.
- مايشوفش التكلفة (يدخل الأسعار المعتمدة بس — يتأكد).
- مايقفلش ولا يفتح نطاقات الأكواد.
- يطبع الإيصال (= جاري التحضير)، ويعيد الطباعة بسبب.
- يجمّع بكود المكان، ويقفل في محطة السكان.
- يفتح استثناء لو قطعة ناقصة، ويسلّم للمندوب بالسكان.
- مايشوفش تليفون العميل كامل ولا الأسعار.
- مايلغيش طلب.
- يعدّي على الأماكن بالمسدس ويقارن بالصورة والكود.
- يطلّع فروق الجرد كطلب تسوية.
- مايعتمدش التسوية بنفسه — المالك.
- الاستلام قصاد قايمة التعبئة (بالدستة والوزن) والتبليغ عن العجز.
- تأكيد التحويلات الداخلة لمخزنه + التسكين.
- إرسال تحويل من مخزنه (طلب).
- مايأكدش تحويل هو اللي باعته.
- مايشوفش فلوس إذن الشراء.
- العد بالقطعة على شيت العد ومقارنته بالاستلام.
- سحب العينات للمصوّر وتسجيلها.
- مايعدلش التكلفة — الفرق بيروح للتسعير.
- دفعات الفحص لبراندها: فرز أول / فرز تاني / تالف.
- «إضافة تالف» بكود (التكويد قبل الفرز — R3).
- ماتعدمش ولا تصلّح التالف.
- مراجعة التالف: إعدام أو إصلاح، وسحب الخامات (قفل، حلقة، فصوص).
- اختيار وجهة المرتجع التالف (أونلاين، فرع، جملة).
- الإعدام فوق قيمة معيّنة محتاج اعتماد المالك (اقتراح).
- استلام التحويلات لفرعه بالفاتورة.
- تخفيض سعر القطعة اللي عيبها باين — في حد أقصى %.
- البيع في الفرع (لما نقطة البيع تتبني).
- مايشوفش مخازن تانية ولا أسعار التكلفة.
- يحط Excel التسليم قصاد سيستم شركة الشحن: 100 اتسلموا ← 99 مسجلين؟
- تعليم «تم الاستلام» و«مرتجع» واستيراد ملف الشركة.
- مايعدلش بنود الطلب ولا الأسعار.
- فحص المرتجع قطعة قطعة والقرار (للمخزون / تالف / غلط).
- أذون الشراء ومدفوعاتها وتسويتها، المصاريف والإيرادات.
- التقارير المالية والتكلفة.
- مايعدلش طلبات مفتوحة.
- تشوف طلبات شركتها بس، والبيانات اللازمة للتوصيل.
- تنزّل ملف دفعتها.
- مفيش أسعار منتجات ولا تكلفة ولا شركات تانية.
مين بيلمس كل وحدة، وإزاي
نفس الوحدات اللي في صفحة المعمارية — قدام كل وحدة الأدوار اللي بتشتغل فيها ودور كل واحد.
| الوحدة | بيعمل فيها | بيشوف بس |
|---|---|---|
| الكتالوج | DE (إنشاء وتعديل) · OW (نشر، ظهور جملة/Prime) | MR · MW · CS · CO · QC · الباقي حسب الحاجة |
| الأكواد | OW (حجز وقفل النطاقات) · DE (تكويد في المفتوح، طباعة باركود) · RC (طباعة باركود) | — |
| الأسعار | OW (تكلفة، قطاعي، عرض، جملة، شرائح) · BM (تخفيض في الفرع) · DE (إدخال المعتمد) | AC (والتكلفة) |
| المخزون والتحويلات | RC (إرسال/تأكيد في مخزنه) · AU (جرد وفروق) · BM (فرعه) · OW (اعتماد التسويات) | MR · MW · CS (المتاح بس) |
| البضاعة الداخلة | OW/AC (إذن الشراء والفلوس) · RC (الاستلام) · CT (العد والعينات) | AU |
| الجودة والتالف | QC (الفرز وإضافة تالف) · DT (إعدام/إصلاح) | AU · AC |
| الطلبات | MR/MW (إنشاء، حجز) · CS (استثناءات، تأكيد، إلغاء) · OW (نقل لأي حالة) | CP · AC · VL |
| التجهيز | CO (طباعة، تجميع، تقفيل) بنطاق قسم التجهيز | CS · OW |
| الشحن والتسليم | CO (دفعات التسليم) · VL (المطابقة واستيراد الحالات) | CR (طلباتها) |
| المرتجعات | AC (الفحص والقرار والإرجاع للمخزون) · VL (تسجيل المرتجع الواصل) | CS · CP |
| العملاء والجملة | OW (قبول، Prime، إيقاف) · MW (مراجعة لو اتسمحت) · CS (بيانات العملاء) | MR |
| التسويق | OW (العروض، الكوبونات، الولاء) · CP (كود تعويض في حدود) | MR · MW · CS (عشان يقولوا للعميل) |
| الرسائل | OW (القوالب والجداول) | CS (سجل رسايل الطلب) |
| التقارير والمالية | AC (المالية) · OW | كل دور تقارير شغله |
| الفروع ونقطة البيع | BM | OW · AC |
| الإعدادات والمستخدمين | OW بس | — |
مصفوفة الصلاحيات — مسودة
دي نقطة البداية اللي هنشغّل بيها السيرفر التجريبي، مش القرار النهائي. كل خانة هتتراجع في ميتنج القيود مع العميل، وأي تعديل بعده بيتعمل من اللوحة من غير كود. افتراض
| الشاشة | OW مالك | MR مود ق | MW مود ج | CS خدمة | CP شكاوى | DE إدخال | CO مجمّع | AU مراجع | RC استلام | CT عدّاد | QC جودة | DT تالف | BM فرع | VL مطابقة | AC محاسب | CR شحن |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| عام | ||||||||||||||||
| الرئيسية الإحصائية | ● | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ◐ | — |
| الطلبات والتجهيز | ||||||||||||||||
| كل الطلبات | ● | ◐ | ◐ | ◐ | ○ | — | ○ | — | — | — | — | — | — | ◐ | ○ | ○ |
| إضافة طلب — قطاعي | ● | ● | — | ◐ | — | — | — | — | — | — | — | — | — | — | — | — |
| إضافة طلب — جملة (أخضر) | ● | — | ● | — | — | — | — | — | — | — | — | — | — | — | — | — |
| الاستثناءات واللمبة | ● | ◐ | ◐ | ● | ○ | — | ◐ | — | — | — | — | — | — | — | — | — |
| المركون ومؤجل الشحن | ● | ● | ● | ◐ | — | — | ○ | — | — | — | — | — | — | — | — | — |
| طباعة الإيصال وإعادتها | ● | — | — | — | — | — | ● | — | — | — | — | — | — | — | — | — |
| محطة التقفيل | ● | — | — | — | — | — | ● | ○ | — | — | — | — | — | — | — | — |
| التسليم للمندوب | ● | — | — | — | — | — | ● | — | — | — | — | — | — | ○ | — | ○ |
| المطابقة مع شركات الشحن | ● | — | — | — | — | — | — | — | — | — | — | — | — | ● | ○ | — |
| المرتجعات — الفحص والقرار | ● | ○ | ○ | ○ | ○ | — | — | — | — | — | — | — | — | ◐ | ● | — |
| الشكاوى | ● | ◐ | ◐ | ◐ | ● | — | — | — | — | — | — | — | — | — | ○ | — |
| الكتالوج والأكواد والأسعار | ||||||||||||||||
| المنتجات والمتغيرات | ● | ○ | ○ | ○ | ○ | ● | ○ | ○ | ○ | ○ | ○ | ○ | ○ | — | ○ | — |
| الأسعار والتكلفة | ● | — | — | — | — | ◐ | — | — | — | — | — | — | ◐ | — | ○ | — |
| نطاقات الأكواد | ● | — | — | — | — | ◐ | — | — | — | — | — | — | — | — | — | — |
| طباعة الباركود | ● | — | — | — | — | ● | — | — | ● | — | — | — | — | — | — | — |
| المخزون والبضاعة الداخلة | ||||||||||||||||
| المخازن والأرصدة والأماكن | ● | ○ | ○ | ○ | — | ○ | ○ | ◐ | ○ | — | — | — | ○ | — | ○ | — |
| التحويلات بين المخازن | ● | — | — | — | — | — | — | ○ | ◐ | — | — | — | ◐ | — | ○ | — |
| أذون الشراء | ● | — | — | — | — | — | — | — | ○ | — | — | — | — | — | ◐ | — |
| الاستلام | ● | — | — | — | — | — | — | ○ | ● | ○ | — | — | ◐ | — | — | — |
| العدّاد والعينات | ● | — | — | — | — | — | — | ○ | ○ | ● | — | — | — | — | — | — |
| فحص الجودة والفرز | ● | — | — | — | — | — | — | ○ | — | — | ● | ○ | — | — | — | — |
| التالف — إعدام / إصلاح | ● | — | — | — | — | — | — | — | — | — | ◐ | ● | — | — | ○ | — |
| الفرع — استلام وتخفيض | ● | — | — | — | — | — | — | — | — | — | — | — | ● | — | ○ | — |
| العملاء والجملة والتسويق | ||||||||||||||||
| طلبات التجار (المراجعة) | ● | — | ◐ | — | — | — | — | — | — | — | — | — | — | — | — | — |
| Prime وVIP | ● | — | ○ | ○ | — | — | — | — | — | — | — | — | — | — | — | — |
| العملاء | ● | ◐ | ◐ | ◐ | ○ | — | — | — | — | — | — | — | — | ○ | ○ | — |
| العروض والكوبونات والولاء | ● | ○ | ○ | ○ | ◐ | — | — | — | — | — | — | — | — | — | ○ | — |
| التقارير والإدارة | ||||||||||||||||
| التقارير | ● | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | — | ○ | ○ | ○ | ◐ | ◐ | — |
| المالية (موردين، مصاريف، إيرادات) | ● | — | — | — | — | — | — | — | — | — | — | — | — | — | ● | — |
| الإعدادات وقوالب الرسائل | ● | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — |
| المستخدمين والأدوار | ● | — | — | — | — | — | — | — | — | — | — | — | — | — | — | — |
| سجل التعديلات | ● | — | — | — | — | — | — | — | — | — | — | — | — | — | ○ | — |
◐ يعني إيه بالظبط؟
كل ◐ ليها تفصيل في محرر الدور. مثال: مودريشن قطاعي في «كل الطلبات» = تشوف طلبات القطاعي بس، وتعدّل البنود قبل الطباعة، ومن غير إلغاء ولا تصدير.
«الرئيسية» لكل واحد
كل دور بيشوف كروت شغله بس: المجمّع «مستني طباعة / اتقفل النهارده»، الاستلام «تحويلات مستنية تأكيدك»، خدمة العملاء «اللمبات المفتوحة».
المستخدم بأكتر من دور
شخص ممكن يبقى «مودريشن قطاعي + خدمة عملاء» (محلات صغيرة كده). الصلاحيات بتتجمع، والنطاق لكل دور بيفضل منفصل.
مثال على مستوى الزرار: شاشة الطلبات
عشان يبان «الصفحة + الأزرار جوه الصفحة» شكلها إيه — دي أكتر شاشة فيها أزرار وأكتر شاشة بتتفتح.
| الزرار | كود الصلاحية | OW | MR | MW | CS | CO | VL | AC | CR |
|---|---|---|---|---|---|---|---|---|---|
| عرض القايمة | orders.view | ✓ | قطاعي | جملة | ✓ | قسمه | ✓ | ✓ | طلباته |
| إضافة طلب | orders.create | ✓ | ✓ | ✓ | ؟ | — | — | — | — |
| تعديل البنود (قبل الطباعة) | orders.edit | ✓ | ✓ | ✓ | ✓ | — | — | — | — |
| تأكيد يدوي | orders.confirm | ✓ | ✓ | ✓ | ✓ | — | — | — | — |
| ركن / تأجيل الشحن | orders.hold | ✓ | ✓ | ✓ | ✓ | — | — | — | — |
| عاجل / لون الشريط | orders.flag | ✓ | ؟ | ؟ | ✓ | — | — | — | — |
| حل الاستثناء (إطفاء اللمبة) | orders.exception.resolve | ✓ | — | — | ✓ | — | — | — | — |
| فتح استثناء (قطعة ناقصة) | orders.exception.open | ✓ | ✓ | ✓ | ✓ | ✓ | — | — | — |
| إلغاء (قبل الشحن) | orders.cancel | ✓ | — | — | ✓ | — | — | — | — |
| طباعة الإيصال | orders.print | ✓ | — | — | — | ✓ | — | — | — |
| إعادة الطباعة (بسبب) | orders.reprint | ✓ | — | — | — | ✓ | — | — | — |
| تعليم «تم الاستلام» / «مرتجع» | orders.delivery.mark | ✓ | — | — | — | — | ✓ | — | — |
| نقل الحالة لأي مكان | orders.status.override | ✓ | — | — | — | — | — | — | — |
| تصدير Excel | orders.export | ✓ | — | — | — | — | ✓ | ✓ | دفعته |
| عرض التكلفة والربح | orders.profit.view | ✓ | — | — | — | — | — | ✓ | — |
| تليفون العميل كامل | customers.phone.full | ✓ | ✓ | ✓ | ✓ | مخفي جزئياً | ✓ | — | ✓ |
«نقل الحالة لأي مكان» للأدمن بس — ده كلام العميل حرفياً في الميتنج: «دي أوبشن عندي كأدمن يوزر بس» S3. الخانات اللي عليها «؟» من أول أسئلة ميتنج القيود.
الصلاحيات الحساسة
صلاحيات لو اتدّت لحد غلط بتكلّف فلوس أو بضاعة أو بيانات. كل واحدة عليها حماية زيادة فوق الصلاحية العادية، والقايمة دي بالذات لازم العميل يراجعها بنفسه.
| الكود | الصلاحية | ليه حساسة | افتراضياً لمين | الحماية الإضافية |
|---|---|---|---|---|
orders.status.override | نقل حالة الطلب لأي مكان | بيتخطى كل قواعد الدورة (الطباعة، السكان) | OW | سبب إجباري + سجل مميّز + تقرير «التخطيات» |
products.cost.view | رؤية سعر التكلفة | سر تجاري | OW · AC | مابيطلعش في أي تصدير لغيرهم |
prices.edit | تعديل الأسعار (قطاعي، عرض، جملة، شرائح) | بيأثر على كل الطلبات الجاية | OW (أو مفوّض) | سجل قبل/بعد + إشعار للمالك |
prices.branch.discount | تخفيض في الفرع | بيع بأقل من السعر | BM | حد أقصى % من الإعدادات + سبب + صورة العيب |
stock.transfer.approve | تأكيد استلام تحويل | حركة مخزون (R2) | RC بنطاق المخزن المستلم | اللي بعت مايأكدش لنفسه + الفرق = عجز تحويل |
stock.adjust.approve | اعتماد تسوية جرد | بتغيّر الرصيد من غير مستند بيع | OW | المراجع يطلب، والمالك يعتمد — مش نفس الشخص |
codes.range.lock | حجز وقفل/فتح نطاق أكواد | R12 — محدش يكوّد في المحجوز | OW | سجل + سبب |
merchants.approve | قبول تاجر | بيفتح أسعار الجملة | OW · MW (لو اتسمح) | سجل القرار ومين |
merchants.prime.grant | منح/سحب Prime | بيفتح خط المنتجات المقفول | OW | خطوة تأكيد + إشعار |
damage.writeoff | إعدام تالف | خروج نهائي من المخزون | DT | صورة + سبب + اعتماد المالك فوق قيمة معيّنة |
returns.restock | إرجاع مرتجع للمخزون | R7 — بعد فحص بس | AC | قرار لكل قطعة + مايتعملش قبل «اتفحص» |
export.excel | تصدير أي قايمة | تسريب بيانات العملاء والأسعار | OW · VL · AC | كل تصدير متسجل باسم اللي عمله وبالفلاتر |
loyalty.adjust · coupons.manage | تعديل نقاط / إنشاء كوبونات | فلوس بشكل غير مباشر | OW (CP: كود تعويض بحد) | سبب + حد أقصى للقيمة |
users.roles.manage | إدارة المستخدمين والأدوار | تصعيد صلاحيات | OW | تحقق بخطوتين قبل الحفظ + إشعار للمالك |
settings.edit | تعديل الإعدادات | مهلات ورسايل وحدود | OW | حد أدنى وأقصى لكل إعداد + سجل |
في كل الحركات اللي بتخرّج بضاعة أو فلوس من غير بيع (تسوية جرد، إعدام، تأكيد تحويل)، اللي بيطلب غير اللي بيوافق. ده نفس منطق العميل في التحويلات: «ده بيقدّم ريكويست وده بيوافق» S3.
إزاي الأدوار الديناميك بتشتغل
اتفاق الميتنج: «حضرتك هتنشئ أكونت… وتحدد له الصفحات، وفي نفس الوقت الصلاحيات اللي جوه كل صفحة» S2. ده التنفيذ.
كل صفحة وكل زرار بيعلن كود صلاحيته (orders.print). القايمة بتتولد تلقائياً — مفيش صلاحية «منسية».
اسم + وصف + يختار الصفحات والأزرار + النطاق. أو «انسخ من دور» ويعدّل.
باسم الشخص، تليفون، دور أو أكتر، ونطاق (مخازن، فروع، قنوات). تاريخ انتهاء اختياري.
كل زرار بيوصل السيرفر بيتشيك الصلاحية + النطاق. اللوحة بتخفي اللي مش مسموح — بس ده للراحة.
تعديل الدور بيوصل للمستخدمين المفتوحين في ثواني (بيتحدث الكاش) من غير ما يخرجوا.
مين غيّر أنهي دور، إمتى، الصلاحيات قبل وبعد — ومحاولات الدخول المرفوضة كمان.
🧱 قواعد الحماية
- لازم يفضل مالك واحد على الأقل — السيستم يرفض حذف أو تعطيل آخر مالك.
- محدش يقدر يدّي صلاحية مش عنده.
- المستخدم مايعدلش دوره بنفسه.
- الأدوار الـ 16 بتيجي كقوالب جاهزة، والعميل يعدّل فيها أو يعمل جديد.
- الدور اللي عليه مستخدمين مايتمسحش — يتعطل بس.
🧾 شكل الداتا
شاشة محرر الدور
شكل مقترح للصفحة اللي المالك هيعمل منها الأدوار. الصفحات في صفوف، والأزرار في أعمدة، والنطاق فوق.
| الصفحة | عرض | إضافة | تعديل | طباعة | اعتماد | حذف/إلغاء | تصدير |
|---|---|---|---|---|---|---|---|
| كل الطلبات | |||||||
| إضافة طلب | |||||||
| الحجوزات | |||||||
| الاستثناءات | |||||||
| المنتجات | |||||||
| الأسعار والتكلفة ⚠ | |||||||
| العملاء |
👁️ معاينة كمستخدم
المالك يشوف اللوحة زي ما الدور هيشوفها (قراءة بس) — عشان يتأكد قبل ما يحفظ.
🔍 «مين يقدر يعمل…؟»
بحث عكسي: اكتب «إعدام تالف» يطلعلك كل الأدوار والمستخدمين اللي عندهم الصلاحية دي.
📜 تاريخ الدور
كل نسخة من الدور محفوظة، والمالك يقدر يرجع لنسخة قديمة بزرار.
النطاق: المخازن والفروع والقنوات
الصلاحية بتقول «يقدر يعمل إيه»، والنطاق بيقول «على أنهي حاجة». مسؤول استلام الجملة ومسؤول استلام الأونلاين نفس الدور — بنطاق مختلف.
| نوع النطاق | مثال | الأثر | المصدر |
|---|---|---|---|
| المخازن | مسؤول استلام ← مخزن الجملة بس | يشوف أرصدة مخزنه بس، ويأكد التحويلات الداخلة لمخزنه بس، والتسكين في أماكنه | S1 S3 |
| الفروع | مدير فرع بورسعيد ← فرعه | استلامه وتخفيضاته ومبيعاته على فرعه بس | S1 |
| القناة | مودريشن ← قطاعي / جملة / الاتنين | زرار الجملة والشاشة الخضرا وطلبات الجملة | S3 |
| قسم التجهيز | مجمّع ← الجملة / طلبات الصور | قايمة الطباعة والتقفيل للقسم ده بس (بورسعيد · المحافظات · الجملة · الصور) | S6 |
| البراند | فريق الجودة ← فلوكة / براند تاني | دفعات فحص البراند ده بس — العميل ناوي يفتح براند تاني | S3 |
| شركة الشحن | مستخدم شركة الشحن ← شركته | طلباتها ودفعاتها بس | S2 |
| المدة | حساب مؤقت لحد تاريخ | بيتقفل تلقائياً (موظف تحت التجربة، دخول مؤقت) | افتراض |
زي Prime بالظبط: المستخدم اللي نطاقه مخزن الجملة، أي قايمة بتطلعله متفلترة من الداتابيز — مش متخبية في الشاشة. ولو حاول يفتح تحويل لمخزن تاني برابط مباشر ← «مش موجود».
بوابة شركة الشحن
العميل قال: «ممكن حد منهم يدخل على السيستم يشوف حتة الطلبات بس» S2. وذكر كمان إنه ساعات لما يمضي مع شركة جديدة بيخلي «الداتا إنتري من عندهم» فترة.
✓ بيشوف ويعمل
- طلبات شركته في: جاهز للمندوب · تم الشحن · تم الاستلام · مرتجع.
- الحقول: رقم الطلب، اسم المستلم، التليفون، العنوان، المحافظة، مبلغ التحصيل، عدد القطع، ملاحظة التوصيل.
- دفعات التسليم بتاعته (العدد والتاريخ) وتنزيل ملفها Excel.
- رفع ملف حالات (اتسلم / رجع) — بيروح لفريق المراجعة يعتمده، مش بيغيّر الحالة مباشرة افتراض.
✕ مايشوفش
- أسعار المنتجات، التكلفة، الخصومات، تفاصيل البنود (غير العدد).
- طلبات شركات تانية أو طلبات لسه ماجهزتش.
- بيانات العميل التانية (الإيميل، الطلبات القديمة، النقاط).
- أي صفحة تانية في اللوحة — البوابة على
/dashboard/courierبس.
لو موظف من الشركة قاعد عند فلوكة فترة بيدخل بيانات الشحن: حساب مؤقت بتاريخ انتهاء بدور محدود (شحن + تسليم بنطاق الشركة دي)، مش حساب داتا إنتري كامل. السؤال في الميتنج: هو بيعمل إيه بالظبط؟
الأمان والمراقبة
الصلاحيات من غير مراقبة نص حماية. ده اللي بيكمّلها.
🔐 الدخول
- تحقق بخطوتين إجباري للمالك وأي دور فيه صلاحية حساسة.
- قفل مؤقت بعد محاولات غلط.
- انتهاء الجلسة بعد خمول (إعداد) — أطول لأجهزة محطات المخزن.
📟 أجهزة المحطات
- محطة التقفيل والتسليم ممكن تتربط بجهاز معيّن (اقتراح).
- المجمّع بيدخل بكود سريع على جهاز المحطة.
- كل سكان متسجل باسم اللي داخل.
📒 السجلات
- سجل الدخول: مين، إمتى، منين، نجح ولا لأ.
- سجل التعديلات بفلاتر (مستخدم، صفحة، تاريخ).
- محاولات تنفيذ زرار من غير صلاحية بتتسجل وتطلع في تقرير.
🚪 إنهاء فوري
- تعطيل مستخدم = خروجه من كل الأجهزة فوراً.
- «اخرج من كل الأجهزة» للمستخدم نفسه.
- موظف ساب الشغل ← تعطيل مش مسح (عشان سجله يفضل).
🙈 إخفاء البيانات
- تليفون العميل مخفي جزئياً للأدوار اللي مش محتاجاه (01xx xxx x418).
- التكلفة مابتظهرش في أي مكان من غير صلاحيتها.
📊 تقرير الصلاحيات
- مين عنده كل صلاحية حساسة — يتراجع كل شهر.
- حسابات مادخلتش من 30 يوم.
- تغييرات الأدوار في الفترة.
ميتنج القيود التفصيلية (Q5) — الأسئلة
القيود التفصيلية لكل دور «لسه مستنية ميتنج» مع العميل. دي القايمة اللي هندخل بيها، ومعانا المصفوفة اللي فوق كنقطة بداية. الهدف نخرج بكل خانة ◐ و«؟» محسومة.
🛒 الطلبات والمودريشن
- مين يقدر يلغي طلب؟ المودريشن ولا خدمة العملاء بس؟افتراضنا: خدمة العملاء والمالك
- مين يقدر يحط «عاجل» ويلوّن الشريط؟
- المودريشن تقدر تدي خصم لحد كام (% أو مبلغ)؟
- المودريشن تشوف الكمية المتاحة بالرقم ولا «متاح/مش متاح» بس؟
- تعديل الطلب بعد الطباعة مسموح لمين؟
- خدمة العملاء تقدر تعمل طلب جديد ولا لأ؟
📦 الأوبريشن والمخزن
- إعادة طباعة الإيصال: لأي حد في الأوبريشن ولا بموافقة؟
- المجمّع يشوف تليفون العميل؟ (مقترح: مخفي جزئياً)
- مين يرسل تحويل من المخزن الرئيسي؟ ومين يأكد في كل مخزن بالاسم؟
- تسوية الجرد مين يعتمدها؟
- العدّاد والاستلام نفس الشخص أحياناً؟ (لو أيوه، مين يراجع مين؟)
- أجهزة المحطات مشتركة ولا لكل شخص؟
💰 الأسعار والفلوس
- مين يشوف سعر التكلفة؟ وإدخال البيانات يدخل الأسعار ولا التسعير للمالك بس؟
- «المفوّض بالتسعير» (من الـ PDF) مين؟
- مدير الفرع يخفّض لحد كام %؟
- الإعدام: فوق قيمة كام يحتاج موافقتك؟
- المحاسب: إذن الشراء يعمله ولا يدفع بس؟
- مين يصدّر Excel؟
🤝 الجملة والتسويق والإدارة
- مين يقبل التجار؟ ومين يمنح Prime ويشيله؟
- مين يعمل العروض والكوبونات؟ والشكاوى تدي كود تعويض لحد كام؟
- حجز وقفل نطاقات الأكواد ليك بس؟
- شركة الشحن تشوف مبلغ التحصيل؟ وترفع حالات ولا لأ؟
- موظف شركة الشحن اللي بيقعد عندكم بيعمل إيه بالظبط؟
- فيه حد غيرك هيبقى «مالك» (شريك، مدير)؟
- المحاسب هييجي إمتى؟ ولحد ما ييجي مين بيفحص المرتجعات؟
- فيه دور ناقص من القايمة؟ (العميل قال «لو افتكرنا هنزود»)
بنحدّث الأدوار الـ 16 على السيرفر التجريبي، ونعمل حساب اختبار لكل دور، والعميل يجرب «معاينة كمستخدم» قبل الإنتاج. أي تعديل بعدها من اللوحة من غير ما نلمس الكود.