الاشتراكات والخطط والقياسSubscriptions, plans and metering
لوحة مركزية تعرف الخطط (الميزات، حد المستخدمين، حصة الذكاء، التخزين) واشتراك كل مكتب، وتقيس الاستخدام شهريًا (مستخدمون نشطون، تخزين، استدعاءات الذكاء وتكلفتها، رسائل، توقيعات) لتقرير «التكلفة الشهرية لكل مكتب».
بطاقة الميزة
| البند | القيمة |
|---|---|
| 1. اسم الميزة | الاشتراكات والخطط والقياس — Subscriptions, plans and metering |
| 2. المعرّف (Feature ID) | B41 |
| 3. مصدر المتطلب | دليل المطور ص46-47 (الجانب التجاري) |
| 4. تصنيف المحتوى | متطلب وارد في الملفات موقع لكل مكتب، الميزات بمفاتيح تفعيل، لوحة مركزية، القياس من اليوم الأول، النسخة التجريبية ببيانات وهمية، تقرير التكلفة الشهرية لكل مكتب. |
| الوحدة | التجاري |
| الأدوار المعنية | مدير نظام |
| درجة الخطورة | متوسطة |
| حالة الاعتماد | معتمد في الوثائق |
| المنصات المرتبطة | هيئة الزكاة والضريبة والجمارك — الفوترة الإلكترونية |
5الهدف التجاري والمشكلة التي تعالجها
بلا قياس لا يُعرف هل المكتب مربح للمنصة (دليل المطور ص46).
6المجال القانوني المرتبط للمطوّر غير المتخصص
فواتير الاشتراكات عبر ERPNext وZATCA (دليل المطور ص46).
7المستخدمون والأدوار والصلاحيات
فريق المنصة.
8شروط البدء والاعتماديات
موقع تحكم مركزي منفصل عن مواقع المكاتب اقتراح هندسي.
9السيناريو الأساسي خطوة بخطوة
Subscription PlanوOffice Subscription.- مفاتيح الميزات تُقرأ في كل موقع.
- عدّادات يومية تُجمع شهريًا.
- تنبيه عند 80% من حصة الذكاء (دليل المطور ص25).
- تقرير التكلفة الشهرية.
10السيناريوهات البديلة والاستثناءات
تثبيت محلي لمكتب كبير: مفتاح ترخيص وقناة تحديث (دليل المطور ص46). تجريبي: بيانات وهمية فقط ولا ينتقل للإنتاج أبدًا.
11المدخلات والحقول
| الاسم العربي | الاسم البرمجي | النوع | إلزامي | التحقق | القيمة الافتراضية | مصدر البيانات |
|---|---|---|---|---|---|---|
| الخطة: الميزات | features | Table | نعم | — | — | — |
| حد المستخدمين | user_limit | Int | نعم | — | — | — |
| حصة الذكاء | ai_quota | Currency | نعم | — | — | — |
| التخزين | storage_gb | Int | نعم | — | — | — |
12المخرجات والإشعارات والسجلات والتقارير
تقرير التكلفة الشهرية لكل مكتب.
13قواعد العمل بصيغة قابلة للتحويل إلى كود
RULE B41.1 feature flag off -> menu, API and jobs of feature disabled
RULE B41.2 trial site never promoted to production
RULE B41.3 AI quota 80% -> alert; 100% -> block per plan14حالات السجل وانتقالاتها وشروطها
تجريبي ← نشط ← موقوف ← منتهٍ.
15نموذج البيانات والعلاقات والقيود والفهارس
Subscription Plan، Office Subscription، Usage Meter (دليل المطور ص46).
16DocTypes المطلوبة في Frappe
- الثلاثة المذكورة (في الموقع المركزي).
17الشاشات والعناصر والأزرار ورسائل الخطأ
اللوحة المركزية.
18خدمات Backend ومسؤولية كل خدمة
central.metering.collect.
19واجهات API الداخلية
لا توجد واجهة API خاصة بهذه الميزة.
20الأحداث والمهام الخلفية والجدولة وإعادة المحاولة
يومي: جمع العدادات.
21التكاملات المرتبطة بالميزة وحدودها
هيئة الزكاة والضريبة والجمارك — الفوترة الإلكترونية لفواتير الاشتراك.
22الأمن والخصوصية والتدقيق والاحتفاظ والحذف
العدادات أرقام بلا محتوى.
23حالات الاختبار
| المعرّف | النوع | السيناريو | النتيجة المتوقعة |
|---|---|---|---|
B41-T01 | طبيعي | إيقاف ميزة | تختفي وتُرفض واجهتها. |
B41-T02 | حدّي | 80% من الحصة | تنبيه. |
24معايير القبول
- تقرير التكلفة الشهرية من العدادات.
25تعريف الاكتمال (Definition of Done)
- كل قواعد العمل في هذه الصفحة منفذة في الخادم (Controller أو Service)، لا في الواجهة وحدها.
- حالات الاختبار المذكورة هنا مكتوبة اختباراتٍ آلية في إطار اختبار Frappe، وتنجح مع كل دفعة كود.
- اختبارات الصلاحيات تثبت أن مستخدمًا خارج فريق الملف لا يرى السجل في القائمة ولا برابطه المباشر ولا في البحث العام ولا في العدّادات.
- الحقول المخصصة والأدوار ومسارات الاعتماد مُصدَّرة في Fixtures التطبيق، وتظهر بعد تثبيت نظيف على موقع فارغ دون إعداد يدوي.
- لا تعديل في ملفات Frappe أو ERPNext.
- كل قيمة قانونية (مدة، نسبة، مبلغ، قائمة) محفوظة في إعداد قابل للتعديل، وموسومة بحالة اعتمادها.
- نصوص الواجهة ورسائل الخطأ بالعربية، وتخبر المستخدم بما يفعله.
- معايير القبول في هذه الصفحة مُتحقق منها ومسجلة في مصفوفة التتبع.
26القرارات المفتوحة والمخاطر والاعتمادات المطلوبة
اشتراك بالمستخدم أم بالمكتب؟ تثبيت محلي من البداية؟ (دليل المطور ص47).