تكلفة الساعة والربحيةHourly cost and profitability
تكلفة ساعة كل موظف من راتبه وتكاليف صاحب العمل وساعاته المتاحة، ثم ربحية كل ملف: الأتعاب ناقص (الساعات × التكلفة) ناقص المصروفات غير المستردة.
بطاقة الميزة
| البند | القيمة |
|---|---|
| 1. اسم الميزة | تكلفة الساعة والربحية — Hourly cost and profitability |
| 2. المعرّف (Feature ID) | B21 |
| 3. مصدر المتطلب | دليل المطور ص34، الوثيقة المعمارية: معادلة تكلفة الساعة والربحية |
| 4. تصنيف المحتوى | متطلب وارد في الملفات لوحة الربحية وActivity Cost. اقتراح هندسي معادلة تكلفة الساعة. يحتاج اعتمادًا قانونيًا مكونات التكلفة النظامية (التأمينات، مكافأة نهاية الخدمة). |
| الوحدة | الوقت والتسعير |
| الأدوار المعنية | شريك، محاسب |
| درجة الخطورة | متوسطة |
| حالة الاعتماد | يحتاج اعتمادًا قانونيًا |
| المنصات المرتبطة | المؤسسة العامة للتأمينات الاجتماعية |
5الهدف التجاري والمشكلة التي تعالجها
يعرف الشريك أي القضايا تربح وأيها تخسر، ويغذي المسعّر B20 المسعّر الذكي للقضايا الجديدة (دليل المطور ص34).
6المجال القانوني المرتبط للمطوّر غير المتخصص
مكونات التكلفة النظامية (اشتراكات التأمينات الاجتماعية، مكافأة نهاية الخدمة) ونسبها تتغير وتختلف المصادر فيها لسنة 2026 (الوثيقة المعمارية) يحتاج اعتمادًا قانونيًا؛ تُحفظ مؤرخة في الإعداد B26 الرواتب والموارد البشرية بالمتطلبات السعودية.
7المستخدمون والأدوار والصلاحيات
الشريك والمحاسب فقط.
8شروط البدء والاعتماديات
B26 الرواتب والموارد البشرية بالمتطلبات السعودية بيانات الرواتب، B19 تسجيل الوقت الفعلي والمتتبع المعلن الساعات، B23 الفوترة على المراحل والفوترة الإلكترونية الإيرادات.
9السيناريو الأساسي خطوة بخطوة
- شهريًا: تكلفة الساعة = (12 × الثابت + حصة صاحب العمل في التأمينات + مخصص نهاية الخدمة + التأمين الطبي + الرسوم الحكومية) ÷ ((أيام العمل − الإجازات − العطلات) × ساعات اليوم × نسبة الاستغلال) (الوثيقة المعمارية).
- تحديث
Activity Costلكل موظف؛ الساعات المعتمدة تقفل سعرها. - ربحية الملف = الأتعاب − Σ(الساعات × التكلفة المباشرة) − المصروفات غير المستردة؛ والصافي بعد توزيع المصروفات العامة بالساعات (الوثيقة المعمارية).
- لوحة: المقدر مقابل الفعلي، نسبة الفوترة لكل محامٍ، متوسط الساعات لكل نوع ومرحلة (دليل المطور ص34).
10السيناريوهات البديلة والاستثناءات
موظف بلا راتب مسجل: تكلفة افتراضية من الشريك بعلامة. ملف بنسبة نجاح: الإيراد عند التحصيل الفعلي.
11المدخلات والحقول
| الاسم العربي | الاسم البرمجي | النوع | إلزامي | التحقق | القيمة الافتراضية | مصدر البيانات |
|---|---|---|---|---|---|---|
| تكلفة الساعة | costing_rate | Currency | تلقائي | > 0 | — | المعادلة |
| سعر الفوترة | billing_rate | Currency | لا | — | — | الشريك |
| نسبة الاستغلال | utilization | Percent | نعم | 0–100 | — | الشريك افتراض تنفيذي |
| ساعات اليوم | daily_hours | Float | نعم | — | 8 افتراض تنفيذي | سياسة المكتب |
12المخرجات والإشعارات والسجلات والتقارير
لوحة الربحية للملف والمحامي والنوع. مؤشرات: نسبة الاستهلاك، الهامش، التكلفة المتوقعة عند الإغلاق، الجلسات مقابل المتوسط (الوثيقة المعمارية).
13قواعد العمل بصيغة قابلة للتحويل إلى كود
RULE B21.1 hourly_cost(emp, month) per formula; inputs versioned by effective date
RULE B21.2 approved timesheet freezes costing_rate at approval time
RULE B21.3 margin(matter) = revenue - Σ hours×cost - non_recoverable_expenses
RULE B21.4 visibility: Managing Partner, Legal Accountant onlyمثال توضيحي في الوثيقة المعمارية: 227,150 ÷ 1,191 ساعة ≈ 191 ريالًا للساعة (الوثيقة المعمارية) — رقم توضيحي لا معيار.
14حالات السجل وانتقالاتها وشروطها
لا ينطبق على هذه الميزة.
15نموذج البيانات والعلاقات والقيود والفهارس
يعيد استخدام Activity Cost وActivity Type. Hourly Cost Run شهري اقتراح هندسي.
16DocTypes المطلوبة في Frappe
Hourly Cost Run(month, employee, inputs JSON, result) اقتراح هندسي.
17الشاشات والعناصر والأزرار ورسائل الخطأ
لوحة بمرشحات الفترة والنوع والمحامي.
18خدمات Backend ومسؤولية كل خدمة
legal_erp.costing.monthly_run، legal_erp.costing.matter_margin.
19واجهات API الداخلية
لا توجد واجهة API خاصة بهذه الميزة.
20الأحداث والمهام الخلفية والجدولة وإعادة المحاولة
شهري: حساب تكلفة الساعة. أسبوعي: الربحية (الوثيقة المعمارية).
21التكاملات المرتبطة بالميزة وحدودها
المؤسسة العامة للتأمينات الاجتماعية مصدر النسب الرسمي؛ لا ربط آلي موثق.
22الأمن والخصوصية والتدقيق والاحتفاظ والحذف
رواتب وتكاليف: أعلى سرية داخلية.
23حالات الاختبار
| المعرّف | النوع | السيناريو | النتيجة المتوقعة |
|---|---|---|---|
B21-T01 | وحدة | معادلة بمدخلات المثال | النتيجة نفسها. |
B21-T02 | سلبي | تغيير تكلفة بعد اعتماد ساعات | الساعات المعتمدة لا تتغير. |
B21-T03 | أمني | المحامي يفتح لوحة الربحية | لا صلاحية. |
24معايير القبول
- الربحية لكل ملف تطابق القيود.
25تعريف الاكتمال (Definition of Done)
- كل قواعد العمل في هذه الصفحة منفذة في الخادم (Controller أو Service)، لا في الواجهة وحدها.
- حالات الاختبار المذكورة هنا مكتوبة اختباراتٍ آلية في إطار اختبار Frappe، وتنجح مع كل دفعة كود.
- اختبارات الصلاحيات تثبت أن مستخدمًا خارج فريق الملف لا يرى السجل في القائمة ولا برابطه المباشر ولا في البحث العام ولا في العدّادات.
- الحقول المخصصة والأدوار ومسارات الاعتماد مُصدَّرة في Fixtures التطبيق، وتظهر بعد تثبيت نظيف على موقع فارغ دون إعداد يدوي.
- لا تعديل في ملفات Frappe أو ERPNext.
- كل قيمة قانونية (مدة، نسبة، مبلغ، قائمة) محفوظة في إعداد قابل للتعديل، وموسومة بحالة اعتمادها.
- نصوص الواجهة ورسائل الخطأ بالعربية، وتخبر المستخدم بما يفعله.
- معايير القبول في هذه الصفحة مُتحقق منها ومسجلة في مصفوفة التتبع.
26القرارات المفتوحة والمخاطر والاعتمادات المطلوبة
نسب التأمينات ومكونات نهاية الخدمة لسنة 2026 يحتاج اعتمادًا قانونيًا.