ما الجديد؟
“قوة الصلاحية” للموظف
- تم إضافة قوة الصلاحية (0–100) كصفة أساسية لكل موظف، تعمل كطبقة أمان وتحكم دقيقة فوق صلاحيات الرتب.
- تُعيَّن عند إنشاء الموظف، ويمكن تعديلها لاحقًا من داخل ملف الموظف نفسه.
- هذه القيمة منفصلة عن صفحة الصلاحيات والمستويات؛ لا تُدار من هناك.
* العلاقة بين القوة والرتب والصلاحيات
- عند إنشاء الموظف، ينتمي إلى رتبة تحمل مجموعة صلاحيات محددة كالعادة.
- بالإضافة لذلك، يمتلك الموظف قوة صلاحية خاصة به.
- قرار السماح يعتمد الآن على شرطين معًا:
- امتلاك الصلاحية من الرتبة.
- امتلاك قوة كافية لتنفيذ الحد المطلوب.
* طريقة العمل (أمثلة تطبيقية)
أ) ميزة “اتخاذ إجراء”
- كل إجراء يمكن أن يملك قوة مطلوبة لتنفيذه.
- عند محاولة التنفيذ:
- إذا كان لدى الموظف إذن “اتخاذ إجراء” وكانت قوته ≥ القوة المطلوبة ⇒ يُسمح بالتنفيذ.
- إذا كانت قوته أقل ⇒ يظهر تنبيه بأن القوة لا تكفي.
ب) مثال خارج “اتخاذ إجراء”
- لدى موظف صلاحية “تعديل الحسابات” بحكم رتبته.
- لكن يوجد حساب معيّن مُصنَّف أنه يحتاج قوة 90 حتى يُعدَّل.
- عند محاولة التعديل، النظام يتحقق من قوة الموظف:
- إذا كانت ≥ 90 ⇒ يُسمح بالتعديل.
- إذا كانت أقل ⇒ يُمنع التعديل مع توضيح السبب.
* لماذا هذا التغيير مهم؟
- تحكم أدقّ: لم تعد الصلاحيات “كلها أو لا شيء”؛ بل تُربط بدرجة قوة واضحة.
- مرونة وسهولة إدارة: يكفي تحديث القوة المطلوبة للإجراء بدل إعادة هيكلة الصلاحيات.
- أمان أعلى: الإجراءات الحساسة وتعديلات الحسابات الحرجة لا ينفذها إلا أصحاب القوة المناسبة.
- قابلية التوسع: ليست حكرًا على الإجراءات؛ سيتم توظيفها تدريجيًا في مزيد من السيناريوهات مثل:
- تحرير بيانات حساسة.
- عمليات مالية متقدمة.
- مهام إدارية حرجة.
* تغييرات الواجهة
أ) واجهة ملف الموظف
- إضافة حقل “قوة الصلاحية” يظهر عند الإنشاء ومتاح للتعديل لاحقًا من نفس الملف.
- تُعرض القيمة بوضوح ضمن بيانات الموظف وتُستخدم تلقائيًا عند تقييم أي إجراء.
ب) واجهة تعريف الإجراء
- إضافة حقل “القوة المطلوبة” يُحدَّد لكل إجراء على حدة.
- هذه القيمة تُستخدم كشرط إضافي أثناء التنفيذ بجانب الصلاحية.
الخلاصة
- الرتبة تمنح نوع الصلاحية.
- قوة الصلاحية تحدد مدى العمق أو الحساسية المسموح بها داخل نفس الصلاحية.
- النتيجة: موظف واحد قد يُسمح له ببعض الإجراءات ويُمنع من أخرى حسب حساسية المهمة، دون الحاجة لصلاحيات إضافية لكل حالة.