تقرير الوضع الحالي — هل كل المتعاملين (أشخاص ومؤسسات) بيتسجّلوا كـ Partner في المحاسبة؟
التكامل لسه موجود وشغّال في مسارات الستاف والويزارد والمؤسسات — لكن فيه ثغرة واضحة: مرضى بورتال الـB2B بيتعملوا من غير Partner، بالإضافة للمرضى المستوردين القدام اللي اتعملوا بره الـAPI.
| المصدر | النوع | الحالة | الكود / الدليل |
|---|---|---|---|
مريض من الستاف POST /lis/patients |
شخص | شغّال | LabPatientController@store — يعمل Partner لو مفيش partner_id |
| مريض من ويزارد الطلب (inline) | شخص | شغّال | بيستخدم نفس endpoint الستاف |
| المعامل الخارجية | مؤسسة | شغّال | LabExternalLabController@store — auto • الداتا: 6/6 |
| الأطباء | شخص | شغّال | مشروط بفلاج auto_create_partner • الداتا: 6/6 |
| شركات التأمين | مؤسسة | مشروط | مشروط بفلاج auto_create_partner • العقود الـ4 الحالية: 0 مربوطين |
الكنترولر ExternalLabPortalPatientController@store بيعمل LabPatient::create() على طول
من غير أي استدعاء لـ CreateBusinessPartner. فأي مريض اللاب الخارجي يضيفه من بوابته مايتسجّلش كشريك في الحسابات.
الكتلة الكبيرة من المرضى دخلت عن طريق سكربت import مش عن طريق الـAPI، فمحصلتش على Partners.
partner_id → ينده CreateBusinessPartnertype: individual / company) في الحساباتpartner_id ← تشتغل عليه الفوترة والذممملاحظة محاسبية: في الـB2B الفوترة فعلياً بتروح على حساب المعمل الخارجي (هو الشريك اللي عليه الـAR)، مش المريض الفرد — فمن ناحية محاسبية بحتة مرضى B2B ممكن مايحتاجوش Partner. لكن ده يخالف القاعدة "كل شخص → Partner".
ExternalLabPortalPatientController (store + update) يعمل/يزامن
BusinessPartner زي كنترولر الستاف بالظبط — going-forward لكل مريض B2B جديد.auto_create_partner ON افتراضياً عشان مايعتمدش على الفرونت.