<?php

namespace Database\Seeders;

use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\DB;
use Carbon\Carbon;

// ══════════════════════════════════════════════════════════════════
//  InPractice — Inventory & Working Capital Cases
//  Topic: inventory_working_capital | 6 Generic Cases | Finance Hub
//  Hub ID: 1 | Created by: 2 (Mahmoud - admin)
//  Source: 07_inventory_working_capital.md
//  Run: php artisan db:seed --class=CaseSeeder_InventoryWorkingCapital
// ══════════════════════════════════════════════════════════════════

class CaseSeeder_InventoryWorkingCapital extends Seeder
{
    public function run(): void
    {
        $now     = Carbon::now();
        $hubId   = 1;
        $adminId = 2;

        $cases = [

            // ── IW-01 | The Warehouse Full of Dead Stock ──────────
            [
                'hub_id'                 => $hubId,
                'created_by'             => $adminId,
                'topic_slug'             => 'inventory_working_capital',
                'topic_name_en'          => 'Inventory & Working Capital',
                'topic_name_ar'          => 'المخزون ورأس المال العامل',
                'layer'                  => 'generic',
                'difficulty'             => 'beginner',
                'sort_order'             => 1,
                'status'                 => 'published',
                'published_at'           => $now,
                'read_time_minutes'      => 12,
                'title_en'               => 'The Warehouse Full of Dead Stock',
                'subtitle_en'            => 'Inventory management basics',
                'situation_en'           => 'You are a junior analyst at Crescent Electronics, a consumer electronics distributor. The operations manager takes you on a warehouse tour. Row after row of shelves. Products everywhere. "We have EGP 4.2 million in stock. But I cannot find half the products customers are actually ordering, and some of this stuff has been here since 2022. Nobody knows what we actually have." The CFO asks you to diagnose the problem and recommend a solution.',
                'challenge_questions_en' => json_encode([
                    'Calculate the Days Inventory Outstanding (DIO) for each category.',
                    'Classify inventory using an ABC/slow-mover framework — which categories are the problem?',
                    'Calculate the annual holding cost of the dead stock.',
                    'What do you recommend the CFO do in the next 30 days?',
                ], JSON_UNESCAPED_UNICODE),
                'solution_en'            => 'DAYS INVENTORY OUTSTANDING (DIO = Stock Units ÷ Monthly Sales × 30):
Smartphones (current): 420 ÷ 380 × 30 = 33 days — healthy.
Smartphones (discontinued): 290 ÷ 2 × 30 = 4,350 days — dead stock.
Tablets: 180 ÷ 65 × 30 = 83 days — borderline.
Laptop accessories: 1,200 ÷ 340 × 30 = 106 days — moderate concern.
Cables & peripherals: 8,400 ÷ 3,200 × 30 = 79 days — healthy.
Smart home devices: 380 ÷ 12 × 30 = 950 days — dead stock.
Audio equipment: 240 ÷ 48 × 30 = 150 days — slow-moving.

DEAD STOCK CLASSIFICATION (DIO > 365 days):
Discontinued smartphones: EGP 640,000 — 2 units/month, effectively unsellable.
Smart home devices: EGP 760,000 — 12 units/month at current rate = 31+ months of supply.

ANNUAL HOLDING COST OF DEAD STOCK (28% of inventory value):
Discontinued smartphones: 640,000 × 28% = EGP 179,200/year.
Smart home devices: 760,000 × 28% = EGP 212,800/year.
Total dead stock annual cost: EGP 392,000/year — equivalent to 2 sales staff or a significant marketing budget.

30-DAY ACTION PLAN:
Week 1 — Mark down discontinued smartphones aggressively at 40–50% below market. Even recovering EGP 320,000 (50 cents on the dollar) eliminates EGP 179,200 in annual holding cost. Offer a bulk deal to a secondary market buyer if retail clearance is slow.
Week 2 — Evaluate smart home devices. If a 20% price reduction generates demand, run the promotion. If not, treat as dead stock — clearance or write-down.
Week 3 — Implement ABC inventory classification going forward. Category A (current smartphones, cables): deep stock, frequent reorder. Category B (tablets, audio): moderate stock, monthly review. Category C (everything else): minimal stock, order-to-demand only.
Week 4 — Stop buying slow movers on standard terms. Any Category C product: maximum 30-day supply. No bulk purchasing regardless of supplier discounts. The discount is never worth the holding cost.',
                'bigger_lesson_en'       => 'Inventory is trapped cash. Every day an item sits on a shelf, it loses value and consumes storage cost. A warehouse full of dead stock is not an asset — it is a liability with a 28% annual fee.',
                'skills_taught_en'       => json_encode([
                    'Days Inventory Outstanding (DIO) calculation',
                    'ABC inventory classification',
                    'Dead stock identification and quantification',
                    'Holding cost analysis',
                    'Inventory clearance strategy',
                ], JSON_UNESCAPED_UNICODE),
                'case_data'              => json_encode([
                    'inventory_snapshot' => [
                        ['category' => 'Smartphones (current models)',  'stock_value_egp' => 980000,   'last_movement' => '3 days ago',    'units_in_stock' => 420,  'monthly_sales_units' => 380],
                        ['category' => 'Smartphones (discontinued)',    'stock_value_egp' => 640000,   'last_movement' => '8 months ago',  'units_in_stock' => 290,  'monthly_sales_units' => 2],
                        ['category' => 'Tablets',                       'stock_value_egp' => 520000,   'last_movement' => '2 weeks ago',   'units_in_stock' => 180,  'monthly_sales_units' => 65],
                        ['category' => 'Laptop accessories',            'stock_value_egp' => 380000,   'last_movement' => '1 month ago',   'units_in_stock' => 1200, 'monthly_sales_units' => 340],
                        ['category' => 'Cables & peripherals',          'stock_value_egp' => 210000,   'last_movement' => 'Daily',         'units_in_stock' => 8400, 'monthly_sales_units' => 3200],
                        ['category' => 'Smart home devices',            'stock_value_egp' => 760000,   'last_movement' => '4 months ago',  'units_in_stock' => 380,  'monthly_sales_units' => 12],
                        ['category' => 'Audio equipment',               'stock_value_egp' => 480000,   'last_movement' => '6 weeks ago',   'units_in_stock' => 240,  'monthly_sales_units' => 48],
                        ['category' => 'Total',                         'stock_value_egp' => 3970000,  'last_movement' => null,            'units_in_stock' => null, 'monthly_sales_units' => null],
                    ],
                    'holding_cost_rate_annual_pct' => 28,
                ], JSON_UNESCAPED_UNICODE),
                'title_ar'               => 'المستودع المليء بالمخزون الراكد',
                'subtitle_ar'            => 'أساسيات إدارة المخزون',
                'situation_ar'           => 'أنت محلل مبتدئ في شركة "كريسنت للإلكترونيات"، موزع إلكترونيات استهلاكية. يأخذك مدير العمليات في جولة بالمستودع. صفوف متتالية من الأرفف. منتجات في كل مكان. "لدينا 4.2 مليون جنيه في المخزون. لكنني لا أجد نصف المنتجات التي يطلبها العملاء، وبعض هذه البضاعة هنا منذ 2022. لا أحد يعرف ما لدينا فعلاً." يطلب منك المدير المالي تشخيص المشكلة وتقديم توصية.',
                'challenge_questions_ar' => json_encode([
                    'احسب أيام المخزون القائم (DIO) لكل فئة.',
                    'صنّف المخزون باستخدام إطار ABC / المتحركات البطيئة — ما هي الفئات الإشكالية؟',
                    'احسب تكلفة الحيازة السنوية للمخزون الراكد.',
                    'ماذا توصي المدير المالي بفعله في الثلاثين يوماً القادمة؟',
                ], JSON_UNESCAPED_UNICODE),
                'solution_ar'            => 'أيام المخزون القائم (DIO = الوحدات في المخزون ÷ المبيعات الشهرية × 30):
الهواتف الذكية (الحالية): 420 ÷ 380 × 30 = 33 يوماً — وضع صحي.
الهواتف الذكية (المتوقفة): 290 ÷ 2 × 30 = 4350 يوماً — مخزون راكد.
الأجهزة اللوحية: 180 ÷ 65 × 30 = 83 يوماً — حدي.
ملحقات اللابتوب: 1200 ÷ 340 × 30 = 106 أيام — مخاوف معتدلة.
الكابلات والملحقات: 8400 ÷ 3200 × 30 = 79 يوماً — وضع صحي.
الأجهزة المنزلية الذكية: 380 ÷ 12 × 30 = 950 يوماً — مخزون راكد.
المعدات الصوتية: 240 ÷ 48 × 30 = 150 يوماً — بطيء الحركة.

تصنيف المخزون الراكد (DIO أكثر من 365 يوماً):
الهواتف المتوقفة: 640,000 جنيه — وحدتان شهرياً، لا يمكن بيعها عملياً.
الأجهزة المنزلية الذكية: 760,000 جنيه — 12 وحدة شهرياً = 31 شهراً من المخزون.

تكلفة حيازة المخزون الراكد السنوية (28% من قيمة المخزون):
الهواتف المتوقفة: 640,000 × 28% = 179,200 جنيه سنوياً.
الأجهزة المنزلية الذكية: 760,000 × 28% = 212,800 جنيه سنوياً.
إجمالي التكلفة السنوية للمخزون الراكد: 392,000 جنيه — يعادل موظفَي مبيعات أو ميزانية تسويقية معتبرة.

خطة العمل لـ 30 يوماً:
الأسبوع الأول — تخفيض أسعار الهواتف المتوقفة بقوة بنسبة 40–50%. حتى استرداد 320,000 جنيه يُلغي تكلفة حيازة سنوية قدرها 179,200 جنيه. عرض صفقة جملة لموزع سوق ثانوي إذا كان البيع بالتجزئة بطيئاً.
الأسبوع الثاني — تقييم الأجهزة المنزلية الذكية. إذا أوجد تخفيض 20% طلباً، نفّذ العرض. وإلا، تعامل معها كمخزون راكد — تصفية أو شطب.
الأسبوع الثالث — تطبيق تصنيف المخزون ABC مستقبلاً. الفئة أ (الهواتف الحالية، الكابلات): مخزون عميق، إعادة طلب متكررة. الفئة ب (الأجهزة اللوحية، الصوتيات): مخزون معتدل، مراجعة شهرية. الفئة ج (كل شيء آخر): مخزون ضئيل، طلب حسب الطلب فقط.
الأسبوع الرابع — وقف شراء البطيء الحركة بشروط قياسية. أي منتج فئة ج: أقصى مخزون 30 يوماً. لا شراء بالجملة بغض النظر عن خصومات الموردين. الخصم لا يستحق تكلفة الحيازة أبداً.',
                'bigger_lesson_ar'       => 'المخزون هو نقد محبوس. كل يوم تبقى فيه سلعة على الرف تفقد قيمتها وتستنزف تكلفة تخزين. المستودع المليء بالمخزون الراكد ليس أصلاً — بل هو التزام برسوم سنوية 28%.',
                'skills_taught_ar'       => json_encode([
                    'حساب أيام المخزون القائم (DIO)',
                    'تصنيف المخزون ABC',
                    'تحديد المخزون الراكد وقياسه',
                    'تحليل تكاليف الحيازة',
                    'استراتيجية تصفية المخزون',
                ], JSON_UNESCAPED_UNICODE),
                'created_at'             => $now,
                'updated_at'             => $now,
            ],

            // ── IW-02 | Working Capital Basics — The Cash Cycle ──
            [
                'hub_id'                 => $hubId,
                'created_by'             => $adminId,
                'topic_slug'             => 'inventory_working_capital',
                'topic_name_en'          => 'Inventory & Working Capital',
                'topic_name_ar'          => 'المخزون ورأس المال العامل',
                'layer'                  => 'generic',
                'difficulty'             => 'beginner',
                'sort_order'             => 2,
                'status'                 => 'published',
                'published_at'           => $now,
                'read_time_minutes'      => 14,
                'title_en'               => 'Working Capital Basics — The Cash Cycle',
                'subtitle_en'            => 'Working capital and cash conversion cycle',
                'situation_en'           => 'You are a financial analyst at Horizon Manufacturing. Your manager asks you to explain the company\'s working capital position to a new board member who has a marketing background and no finance training. "She needs to understand why a profitable, growing company sometimes cannot pay its bills. Can you prepare a simple explanation using our actual numbers?"',
                'challenge_questions_en' => json_encode([
                    'Draw out the cash cycle in plain language — trace one EGP from supplier payment to customer collection.',
                    'Calculate the cash tied up in the 52-day cycle at current revenue levels.',
                    'What happens to working capital if revenue grows 30% next year?',
                    'What are the three levers to improve working capital without cutting revenue?',
                ], JSON_UNESCAPED_UNICODE),
                'solution_en'            => 'TRACING ONE EGP THROUGH THE CASH CYCLE:
Day 0 — Pay the supplier. Horizon pays EGP 1 to a raw material supplier. The money leaves the bank account.
Days 1–18 — Manufacturing. The raw material is converted to a finished product. The EGP 1 is trapped inside work in progress.
Days 19–30 — Finished goods warehouse. The product sits waiting to be sold. The EGP 1 is now inventory.
Day 30 — Sale. The product is sold to a customer for EGP 1.45 (including profit). An invoice is issued. The EGP 1 is now in accounts receivable — earned on paper, no cash received.
Days 31–84 — Waiting for payment. The customer takes 54 days to pay from the invoice date.
Day 84 — Cash arrives. EGP 1.45 arrives in the bank. The company\'s EGP 1 has been tied up for 84 days (18 + 12 + 54) — but the supplier only extended 32 days of credit. The net gap: 84 − 32 = 52 days the company must fund from its own resources.

CASH TIED UP IN THE 52-DAY CYCLE:
Cash required = Daily revenue × CCC days
= (EGP 3,800,000 ÷ 30) × 52
= EGP 126,667/day × 52 days
= EGP 6,586,667
The company must have approximately EGP 6.6 million available at all times simply to fund the working capital cycle — before spending a single penny on growth.

IMPACT OF 30% REVENUE GROWTH:
New revenue: EGP 4,940,000/month. New working capital required = (4,940,000 ÷ 30) × 52 = EGP 8,562,667.
Additional working capital needed: EGP 8,562,667 − EGP 6,586,667 = EGP 1,976,000.
The company needs to find nearly EGP 2 million in additional working capital just to fund the growth. This is why profitable, growing companies run out of cash.

THREE LEVERS TO IMPROVE WORKING CAPITAL:
Lever 1 — Reduce DSO from 54 to 40 days (early payment discounts or tighter terms): CCC = 18 + 12 + 40 − 32 = 38 days. Working capital required = EGP 4,813,333. Saving: EGP 1,773,333 freed immediately.
Lever 2 — Increase DPO from 32 to 45 days (negotiate better supplier terms): CCC = 18 + 12 + 54 − 45 = 39 days. Working capital required = EGP 4,940,000. Saving: EGP 1,646,667.
Lever 3 — Reduce DIO from 30 to 22 days (better production scheduling): CCC = 22 + 54 − 32 = 44 days. Working capital required = EGP 5,573,333. Saving: EGP 1,013,333.
Combining all three levers: CCC could reduce from 52 to 17 days — freeing up EGP 4.4 million in cash.',
                'bigger_lesson_en'       => 'A profitable company can go bankrupt. The income statement shows what you earned. The cash flow statement shows what you actually have. Working capital is the bridge — and if you do not manage it, growth will destroy you faster than any recession.',
                'skills_taught_en'       => json_encode([
                    'Cash conversion cycle mechanics',
                    'Working capital calculation',
                    'Growth impact on working capital',
                    'DSO, DPO, DIO as management levers',
                    'Explaining finance to non-financial audiences',
                ], JSON_UNESCAPED_UNICODE),
                'case_data'              => json_encode([
                    'working_capital_items' => [
                        ['item' => 'Inventory (raw materials + WIP + finished goods)', 'amount_egp' => 3200000],
                        ['item' => 'Accounts receivable (money owed by customers)',    'amount_egp' => 4800000],
                        ['item' => 'Accounts payable (money owed to suppliers)',        'amount_egp' => 2100000],
                        ['item' => 'Net Working Capital',                               'amount_egp' => 5900000],
                    ],
                    'timing_data' => [
                        ['metric' => 'Days to convert raw material to finished product', 'days' => 18],
                        ['metric' => 'Days finished goods sit in warehouse before sale', 'days' => 12],
                        ['metric' => 'Days customers take to pay (DSO)',                 'days' => 54],
                        ['metric' => 'Days company takes to pay suppliers (DPO)',        'days' => 32],
                        ['metric' => 'Cash Conversion Cycle',                           'days' => 52],
                    ],
                    'monthly_revenue_egp' => 3800000,
                ], JSON_UNESCAPED_UNICODE),
                'title_ar'               => 'أساسيات رأس المال العامل — دورة النقد',
                'subtitle_ar'            => 'رأس المال العامل ودورة التحول النقدي',
                'situation_ar'           => 'أنت محلل مالي في شركة "هورايزون للتصنيع". يطلب منك مديرك شرح وضع رأس المال العامل للشركة لعضو مجلس إدارة جديد خلفيته في التسويق وليس لديه تدريب مالي. "تحتاج أن تفهم لماذا تعجز شركة مربحة ومتنامية أحياناً عن سداد فواتيرها. هل يمكنك إعداد شرح بسيط بالأرقام الفعلية؟"',
                'challenge_questions_ar' => json_encode([
                    'اشرح دورة النقد بلغة بسيطة — تتبع جنيهاً واحداً من الدفع للمورد حتى التحصيل من العميل.',
                    'احسب النقد المحبوس في الدورة البالغة 52 يوماً عند مستويات الإيرادات الحالية.',
                    'ماذا يحدث لرأس المال العامل إذا نمت الإيرادات بنسبة 30% العام القادم؟',
                    'ما هي الروافع الثلاثة لتحسين رأس المال العامل دون خفض الإيرادات؟',
                ], JSON_UNESCAPED_UNICODE),
                'solution_ar'            => 'تتبع جنيه واحد عبر دورة النقد:
اليوم 0 — الدفع للمورد. تدفع هورايزون جنيهاً واحداً لمورد مواد خام. المال يغادر الحساب البنكي.
الأيام 1–18 — التصنيع. المادة الخام تتحول إلى منتج نهائي. الجنيه محبوس داخل الإنتاج الجاري.
الأيام 19–30 — مستودع المنتجات النهائية. المنتج ينتظر البيع. الجنيه الآن هو مخزون.
اليوم 30 — البيع. يُباع المنتج للعميل بـ 1.45 جنيه (متضمناً الربح). يُصدر الفاتورة. الجنيه الآن في الذمم المدينة — ربح على الورق، لا نقد فعلي.
الأيام 31–84 — انتظار الدفع. يستغرق العميل 54 يوماً للسداد من تاريخ الفاتورة.
اليوم 84 — وصول النقد. يصل 1.45 جنيه للحساب البنكي. ظل جنيه الشركة محبوساً 84 يوماً (18+12+54) — لكن المورد منح ائتماناً 32 يوماً فقط. الفجوة الصافية: 84 − 32 = 52 يوماً تموّلها الشركة من مواردها.

النقد المحبوس في دورة 52 يوماً:
النقد المطلوب = الإيراد اليومي × أيام CCC
= (3,800,000 ÷ 30) × 52
= 126,667 جنيه/يوم × 52 يوماً
= 6,586,667 جنيه
على الشركة توفير 6.6 مليون جنيه دائماً لتمويل دورة رأس المال العامل — قبل إنفاق أي شيء على النمو.

أثر نمو الإيرادات 30%:
الإيراد الجديد: 4,940,000 جنيه شهرياً. رأس المال العامل المطلوب = (4,940,000 ÷ 30) × 52 = 8,562,667 جنيه.
رأس المال العامل الإضافي المطلوب: 8,562,667 − 6,586,667 = 1,976,000 جنيه.
الشركة تحتاج إيجاد ما يقارب مليوني جنيه لمجرد تمويل النمو. هذا هو سبب نفاد نقد الشركات المربحة المتنامية.

الروافع الثلاثة لتحسين رأس المال العامل:
الرافعة الأولى — تقليل DSO من 54 إلى 40 يوماً: CCC = 38 يوماً. رأس المال المطلوب = 4,813,333. توفير: 1,773,333 جنيه.
الرافعة الثانية — زيادة DPO من 32 إلى 45 يوماً: CCC = 39 يوماً. رأس المال المطلوب = 4,940,000. توفير: 1,646,667 جنيه.
الرافعة الثالثة — تقليل DIO من 30 إلى 22 يوماً: CCC = 44 يوماً. رأس المال المطلوب = 5,573,333. توفير: 1,013,333 جنيه.
الجمع بين الروافع الثلاثة: يمكن تقليل CCC من 52 إلى 17 يوماً — تحرير 4.4 مليون جنيه.',
                'bigger_lesson_ar'       => 'الشركة المربحة يمكن أن تفلس. قائمة الدخل تُظهر ما كسبته. قائمة التدفق النقدي تُظهر ما تملكه فعلاً. رأس المال العامل هو الجسر — وإذا لم تديره، فالنمو سيدمرك أسرع من أي ركود.',
                'skills_taught_ar'       => json_encode([
                    'آليات دورة التحول النقدي',
                    'حساب رأس المال العامل',
                    'أثر النمو على رأس المال العامل',
                    'DSO وDPO وDIO كروافع إدارية',
                    'شرح المالية لغير المتخصصين',
                ], JSON_UNESCAPED_UNICODE),
                'created_at'             => $now,
                'updated_at'             => $now,
            ],

            // ── IW-03 | EOQ and the Real Cost of a Purchase Order ─
            [
                'hub_id'                 => $hubId,
                'created_by'             => $adminId,
                'topic_slug'             => 'inventory_working_capital',
                'topic_name_en'          => 'Inventory & Working Capital',
                'topic_name_ar'          => 'المخزون ورأس المال العامل',
                'layer'                  => 'generic',
                'difficulty'             => 'intermediate',
                'sort_order'             => 3,
                'status'                 => 'published',
                'published_at'           => $now,
                'read_time_minutes'      => 15,
                'title_en'               => 'EOQ and the Real Cost of a Purchase Order',
                'subtitle_en'            => 'Inventory optimisation',
                'situation_en'           => 'You are a supply chain finance analyst at Apex Packaging. The procurement manager is proud — he always buys in large quantities to get supplier volume discounts. The CFO is not convinced. "Every time Khaled buys a 6-month supply to get a 4% discount, we run out of cash for two weeks. I want you to model the real cost of his purchasing decisions."',
                'challenge_questions_en' => json_encode([
                    'Calculate the Economic Order Quantity (EOQ) without the discount.',
                    'Calculate the total annual cost at EOQ vs. the current 12,000-unit order.',
                    'Model whether the 4% supplier discount justifies the larger order.',
                    'What is the cash flow argument against large orders that the CFO is making?',
                ], JSON_UNESCAPED_UNICODE),
                'solution_en'            => 'EOQ CALCULATION:
EOQ Formula: √(2 × Annual Demand × Order Cost ÷ Holding Cost per unit)
Holding cost per unit = EGP 85 × 30% = EGP 25.50/unit/year
EOQ = √(2 × 48,000 × 320 ÷ 25.50) = √(1,204,706) = 1,097 units ≈ 1,100 units
At EOQ, the company places approximately 44 orders per year (48,000 ÷ 1,100).

TOTAL ANNUAL COST COMPARISON:
At EOQ (1,100 units): Purchase cost 48,000 × 85 = 4,080,000 | Ordering cost 44 × 320 = 14,080 | Holding cost (1,100 ÷ 2) × 25.50 = 14,025 | TOTAL: EGP 4,108,105.
At 12,000 units with 4% discount: Purchase cost 48,000 × 81.60 = 3,916,800 | Ordering cost 4 × 320 = 1,280 | Holding cost (12,000 ÷ 2) × 81.60 × 30% = 146,880 | TOTAL: EGP 4,064,960.
The 12,000-unit order is EGP 43,145 cheaper per year on paper. The supplier discount barely justifies the larger order.

THE CFO\'S CASH FLOW ARGUMENT:
Cash outflow on day of a 12,000-unit order: 12,000 × 81.60 = EGP 979,200.
Cash outflow per EOQ order: 1,100 × 85 = EGP 93,500.
The 12,000-unit order requires 10.5× more cash immediately.
At a borrowing cost of 24% p.a., the interest cost of excess cash tied in inventory:
Average excess inventory = (12,000 − 1,100) ÷ 2 = 5,450 units
Financing cost = 5,450 × 85 × 24% = EGP 111,180
When financing cost is included, the 12,000-unit order is more expensive by approximately EGP 67,000/year — and the discount does not justify the cash impact.

INTEGRATED RECOMMENDATION:
Order at EOQ (1,100 units, 44 orders/year) unless the supplier genuinely cannot process orders below 3,000 units.
A cash-neutral alternative: purchase at 12,000 units on 60-day supplier credit, reducing the cash impact to EGP 0 upfront.
Negotiate with the supplier: accept the 4% discount for orders above 4,000 units (not 12,000). This reduces cash impact from EGP 979,200 to EGP 326,400 while retaining the discount.',
                'bigger_lesson_en'       => 'Volume discounts feel like savings. They are often a cash flow trap in disguise. The total cost of a purchase order includes the purchase price, ordering cost, holding cost, and the financing cost of cash tied up in inventory — not just the unit price.',
                'skills_taught_en'       => json_encode([
                    'Economic Order Quantity (EOQ)',
                    'Total inventory cost modelling',
                    'Volume discount analysis',
                    'Cash flow impact of purchasing decisions',
                    'Inventory financing cost',
                ], JSON_UNESCAPED_UNICODE),
                'case_data'              => json_encode([
                    'annual_demand_units'          => 48000,
                    'unit_purchase_cost_egp'       => 85,
                    'order_processing_cost_egp'    => 320,
                    'annual_holding_cost_pct'      => 30,
                    'current_order_quantity'       => 12000,
                    'supplier_discount_pct'        => 4,
                    'discounted_unit_cost_egp'     => 81.60,
                    'cost_of_borrowing_pct'        => 24,
                ], JSON_UNESCAPED_UNICODE),
                'title_ar'               => 'الكمية الاقتصادية للطلب والتكلفة الحقيقية لأمر الشراء',
                'subtitle_ar'            => 'تحسين المخزون',
                'situation_ar'           => 'أنت محلل مالي لسلسلة التوريد في شركة "أبيكس للتغليف". مدير المشتريات يفتخر — يشتري دائماً بكميات كبيرة للحصول على خصومات حجم من الموردين. المدير المالي غير مقتنع. "في كل مرة يشتري فيها خالد مخزون 6 أشهر للحصول على خصم 4%، ينفد نقدنا لأسبوعين. أريدك أن تُنمذج التكلفة الحقيقية لقراراته الشرائية."',
                'challenge_questions_ar' => json_encode([
                    'احسب الكمية الاقتصادية للطلب (EOQ) بدون الخصم.',
                    'احسب إجمالي التكلفة السنوية عند EOQ مقابل طلب 12,000 وحدة الحالي.',
                    'نمّذج ما إذا كان خصم المورد 4% يبرر الطلب الأكبر.',
                    'ما هي حجة التدفق النقدي ضد الطلبات الكبيرة التي يطرحها المدير المالي؟',
                ], JSON_UNESCAPED_UNICODE),
                'solution_ar'            => 'حساب الكمية الاقتصادية للطلب (EOQ):
صيغة EOQ: √(2 × الطلب السنوي × تكلفة الطلب ÷ تكلفة الحيازة للوحدة)
تكلفة الحيازة للوحدة = 85 × 30% = 25.50 جنيه/وحدة/سنة
EOQ = √(2 × 48,000 × 320 ÷ 25.50) = √(1,204,706) = 1,097 وحدة ≈ 1,100 وحدة
عند EOQ تضع الشركة حوالي 44 طلباً سنوياً (48,000 ÷ 1,100).

مقارنة إجمالي التكلفة السنوية:
عند EOQ (1,100 وحدة): تكلفة الشراء 4,080,000 | تكلفة الطلبات 14,080 | تكلفة الحيازة 14,025 | الإجمالي: 4,108,105 جنيه.
عند 12,000 وحدة مع خصم 4%: تكلفة الشراء 3,916,800 | تكلفة الطلبات 1,280 | تكلفة الحيازة 146,880 | الإجمالي: 4,064,960 جنيه.
طلب 12,000 وحدة أرخص بـ 43,145 جنيه سنوياً على الورق. خصم المورد يبرر الطلب الأكبر بالكاد.

حجة المدير المالي للتدفق النقدي:
التدفق النقدي الخارج عند طلب 12,000 وحدة: 12,000 × 81.60 = 979,200 جنيه.
التدفق النقدي الخارج عند طلب EOQ: 1,100 × 85 = 93,500 جنيه.
طلب 12,000 وحدة يتطلب نقداً فورياً أعلى بـ 10.5 مرة.
بتكلفة اقتراض 24% سنوياً، تكلفة الفائدة على النقد المحبوس في المخزون الزائد:
متوسط المخزون الزائد = (12,000 − 1,100) ÷ 2 = 5,450 وحدة
تكلفة التمويل = 5,450 × 85 × 24% = 111,180 جنيه
عند إدراج تكلفة التمويل، طلب 12,000 وحدة أغلى بحوالي 67,000 جنيه سنوياً — والخصم لا يبرر الأثر النقدي.

التوصية المتكاملة:
الطلب عند EOQ (1,100 وحدة، 44 طلباً سنوياً) ما لم يكن المورد عاجزاً عن معالجة طلبات أقل من 3,000 وحدة.
بديل محايد نقدياً: الشراء بـ 12,000 وحدة على ائتمان مورد 60 يوماً، مما يقلل الأثر النقدي الفوري إلى صفر.
التفاوض مع المورد: قبول خصم 4% لطلبات أعلى من 4,000 وحدة (لا 12,000). يخفض الأثر النقدي من 979,200 إلى 326,400 جنيه مع الاحتفاظ بالخصم.',
                'bigger_lesson_ar'       => 'خصومات الحجم تبدو كتوفيرات. وهي في الغالب فخ للتدفق النقدي في ثوب مختلف. التكلفة الإجمالية لأمر الشراء تشمل سعر الشراء وتكلفة الطلب وتكلفة الحيازة وتكلفة تمويل النقد المحبوس في المخزون — وليس فقط سعر الوحدة.',
                'skills_taught_ar'       => json_encode([
                    'الكمية الاقتصادية للطلب (EOQ)',
                    'نمذجة إجمالي تكلفة المخزون',
                    'تحليل خصومات الحجم',
                    'أثر قرارات الشراء على التدفق النقدي',
                    'تكلفة تمويل المخزون',
                ], JSON_UNESCAPED_UNICODE),
                'created_at'             => $now,
                'updated_at'             => $now,
            ],

            // ── IW-04 | Working Capital in a Project-Based Business
            [
                'hub_id'                 => $hubId,
                'created_by'             => $adminId,
                'topic_slug'             => 'inventory_working_capital',
                'topic_name_en'          => 'Inventory & Working Capital',
                'topic_name_ar'          => 'المخزون ورأس المال العامل',
                'layer'                  => 'generic',
                'difficulty'             => 'intermediate',
                'sort_order'             => 4,
                'status'                 => 'published',
                'published_at'           => $now,
                'read_time_minutes'      => 16,
                'title_en'               => 'Working Capital in a Project-Based Business',
                'subtitle_en'            => 'Project working capital management',
                'situation_en'           => 'You are the financial controller at Vertex Engineering Consultants, a project-based firm. Unlike a product company with predictable inventory cycles, Vertex\'s working capital is tied up in long-duration projects with complex billing structures. The CFO has asked you to model the working capital position of three active projects and identify which one is causing the most cash strain.',
                'challenge_questions_en' => json_encode([
                    'Calculate the net working capital position for each project.',
                    'Identify which project is "funding" the company and which is consuming cash.',
                    'What is "work in progress" in a project business and why does it matter?',
                    'Design a billing strategy for Project Beta that reduces working capital consumption.',
                ], JSON_UNESCAPED_UNICODE),
                'solution_en'            => 'NET WORKING CAPITAL BY PROJECT (Cash invested by company not yet recovered from client):

Project Alpha: Costs paid to date EGP 2,910,600 minus Cash collected EGP 2,800,000 = NET EGP +110,600 consumed. Manageable.

Project Beta: Costs paid to date EGP 1,984,500 minus Cash collected EGP 1,260,000 = NET EGP +724,500 consumed. The highest of the three. The company has spent EGP 724,500 more than it has collected.

Project Gamma: Costs paid to date EGP 2,620,800 minus Cash collected EGP 2,912,000 = NET EGP -291,200 (CASH POSITIVE). Gamma is providing cash to the company — the client has paid more than was spent. This happens when advance payments or front-loaded billing structures are in place.

WORK IN PROGRESS AND WHY IT MATTERS:
WIP is revenue earned (work done) that has not yet been billed or collected. It sits on the balance sheet as an asset — but it is not cash.
Project Alpha unbilled WIP: Revenue recognised 4,620,000 minus Cash billed 3,360,000 = EGP 1,260,000 — work done, not yet invoiced.
Project Beta unbilled WIP: Revenue recognised 3,780,000 minus Cash billed 2,100,000 = EGP 1,680,000 — the largest WIP balance.
WIP can grow to represent 2–3 months of revenue — a massive working capital requirement invisible on the income statement.

BILLING STRATEGY FOR PROJECT BETA:
Beta is 18 months long at 30% completion. Without a better billing structure, the EGP 724,500 drain will grow.
1. Request a mobilisation advance: negotiate 15% of contract value upfront = EGP 1,890,000. Frame as "project commencement advance, deducted from final milestones." This eliminates the EGP 724,500 deficit immediately and provides a EGP 1,165,500 cash buffer.
2. Monthly progress billing: shift from milestone-only billing to monthly progress claims. Target: bill EGP 700,000/month for the remaining 12 months.
3. Reduce unbilled WIP lag: EGP 1,680,000 of work is done but not invoiced. Issue invoices within 5 working days of milestone completion. Every week of delay is a week of interest cost.
4. Negotiate shorter payment terms: Beta\'s client is paying approximately 40 days after billing. Target 30 days. In a 12-month project, 10 days faster collection across EGP 12M of billings = EGP 328,767 less working capital required.',
                'bigger_lesson_en'       => 'In project businesses, the billing structure is a financial instrument — not just an administrative procedure. A poorly structured billing schedule can drain cash out of a profitable project. Whoever controls the billing timeline controls the working capital.',
                'skills_taught_en'       => json_encode([
                    'Project working capital modelling',
                    'Work in progress (WIP) accounting',
                    'Billing strategy for cash optimisation',
                    'Mobilisation advance negotiation',
                    'Cash vs. revenue in project businesses',
                ], JSON_UNESCAPED_UNICODE),
                'case_data'              => json_encode([
                    'projects' => [
                        [
                            'name'                        => 'Project Alpha',
                            'total_contract_value_egp'    => 8400000,
                            'duration_months'             => 12,
                            'stage_of_completion_pct'     => 55,
                            'revenue_recognised_egp'      => 4620000,
                            'cash_billed_egp'             => 3360000,
                            'cash_collected_egp'          => 2800000,
                            'costs_incurred_egp'          => 3234000,
                            'costs_paid_egp'              => 2910600,
                        ],
                        [
                            'name'                        => 'Project Beta',
                            'total_contract_value_egp'    => 12600000,
                            'duration_months'             => 18,
                            'stage_of_completion_pct'     => 30,
                            'revenue_recognised_egp'      => 3780000,
                            'cash_billed_egp'             => 2100000,
                            'cash_collected_egp'          => 1260000,
                            'costs_incurred_egp'          => 2835000,
                            'costs_paid_egp'              => 1984500,
                        ],
                        [
                            'name'                        => 'Project Gamma',
                            'total_contract_value_egp'    => 5200000,
                            'duration_months'             => 8,
                            'stage_of_completion_pct'     => 80,
                            'revenue_recognised_egp'      => 4160000,
                            'cash_billed_egp'             => 4160000,
                            'cash_collected_egp'          => 2912000,
                            'costs_incurred_egp'          => 2912000,
                            'costs_paid_egp'              => 2620800,
                        ],
                    ],
                ], JSON_UNESCAPED_UNICODE),
                'title_ar'               => 'رأس المال العامل في الأعمال القائمة على المشاريع',
                'subtitle_ar'            => 'إدارة رأس المال العامل للمشاريع',
                'situation_ar'           => 'أنت المراقب المالي في شركة "فيرتكس للاستشارات الهندسية"، شركة قائمة على المشاريع. على عكس شركة المنتجات ذات دورات المخزون المتوقعة، رأس مال فيرتكس العامل محبوس في مشاريع طويلة الأجل بهياكل فوترة معقدة. طلب منك المدير المالي نمذجة وضع رأس المال العامل لثلاثة مشاريع نشطة وتحديد أيها يسبب أكبر ضغط نقدي.',
                'challenge_questions_ar' => json_encode([
                    'احسب صافي رأس المال العامل لكل مشروع.',
                    'حدد أي مشروع "يموّل" الشركة وأيها يستهلك النقد.',
                    'ما هو "الإنتاج الجاري" في الأعمال القائمة على المشاريع ولماذا يهم؟',
                    'صمّم استراتيجية فوترة لمشروع بيتا تقلل من استهلاك رأس المال العامل.',
                ], JSON_UNESCAPED_UNICODE),
                'solution_ar'            => 'صافي رأس المال العامل لكل مشروع (النقد المستثمر من الشركة غير المسترد من العميل):

مشروع ألفا: التكاليف المدفوعة 2,910,600 جنيه ناقص النقد المحصّل 2,800,000 = صافي +110,600 جنيه مستهلك. قابل للإدارة.

مشروع بيتا: التكاليف المدفوعة 1,984,500 جنيه ناقص النقد المحصّل 1,260,000 = صافي +724,500 جنيه مستهلك. الأعلى بين الثلاثة. الشركة أنفقت 724,500 جنيه أكثر مما حصّلت.

مشروع جاما: التكاليف المدفوعة 2,620,800 جنيه ناقص النقد المحصّل 2,912,000 = صافي -291,200 جنيه (ربح نقدي). جاما يوفر نقداً للشركة — دفع العميل أكثر مما أنفقته الشركة. يحدث هذا عند وجود دفعات مقدمة أو هياكل فوترة مقدمة.

الإنتاج الجاري ولماذا يهم:
الإنتاج الجاري هو إيراد مكتسب (عمل منجز) لم يُفوتر أو يُحصّل بعد. يظهر في الميزانية كأصل — لكنه ليس نقداً.
إنتاج جاري غير مفوتر لمشروع ألفا: إيراد مُعترف به 4,620,000 ناقص مُفوتر 3,360,000 = 1,260,000 جنيه — عمل منجز لم يُفوتر بعد.
إنتاج جاري غير مفوتر لمشروع بيتا: إيراد مُعترف به 3,780,000 ناقص مُفوتر 2,100,000 = 1,680,000 جنيه — أكبر رصيد إنتاج جاري.
يمكن أن ينمو الإنتاج الجاري ليمثل 2–3 أشهر من الإيراد — متطلب ضخم لرأس المال العامل غير ظاهر في قائمة الدخل.

استراتيجية الفوترة لمشروع بيتا:
1. طلب دفعة مبدئية للتعبئة: التفاوض على 15% من قيمة العقد مقدماً = 1,890,000 جنيه. يُقدَّم كـ"دفعة بداية المشروع مُخصومة من الأقساط النهائية." يُلغي العجز النقدي 724,500 فوراً ويوفر احتياطياً 1,165,500 جنيه.
2. الفوترة الشهرية بالتقدم: التحول من الفوترة على المراحل فقط إلى مطالبات تقدم شهرية. الهدف: فوترة 700,000 جنيه شهرياً للـ 12 شهراً المتبقية.
3. تقليل تأخر الإنتاج الجاري غير المفوتر: 1,680,000 جنيه من العمل منجز لكن غير مُفوتر. إصدار الفواتير خلال 5 أيام عمل من إنجاز المرحلة. كل أسبوع تأخير يكلف فائدة.
4. التفاوض على شروط دفع أقصر: عميل بيتا يدفع حوالي 40 يوماً بعد الفوترة. الهدف 30 يوماً. في مشروع 12 شهراً، تحصيل أسرع بـ 10 أيام على 12 مليون فوترة = 328,767 جنيه أقل في متطلبات رأس المال العامل.',
                'bigger_lesson_ar'       => 'في الأعمال القائمة على المشاريع، هيكل الفوترة هو أداة مالية — وليس مجرد إجراء إداري. جدول فوترة مهيكل بشكل سيئ يمكنه استنزاف النقد من مشروع مربح. من يتحكم في جدول الفوترة يتحكم في رأس المال العامل.',
                'skills_taught_ar'       => json_encode([
                    'نمذجة رأس المال العامل للمشاريع',
                    'محاسبة الإنتاج الجاري (WIP)',
                    'استراتيجية الفوترة لتحسين النقد',
                    'التفاوض على الدفعات المبدئية للتعبئة',
                    'الفرق بين النقد والإيراد في الأعمال المشروعية',
                ], JSON_UNESCAPED_UNICODE),
                'created_at'             => $now,
                'updated_at'             => $now,
            ],

            // ── IW-05 | Just-In-Time vs. Safety Stock ─────────────
            [
                'hub_id'                 => $hubId,
                'created_by'             => $adminId,
                'topic_slug'             => 'inventory_working_capital',
                'topic_name_en'          => 'Inventory & Working Capital',
                'topic_name_ar'          => 'المخزون ورأس المال العامل',
                'layer'                  => 'generic',
                'difficulty'             => 'advanced',
                'sort_order'             => 5,
                'status'                 => 'published',
                'published_at'           => $now,
                'read_time_minutes'      => 18,
                'title_en'               => 'Just-In-Time vs. Safety Stock — A Financial Decision',
                'subtitle_en'            => 'Inventory strategy and supply chain finance',
                'situation_en'           => 'You are the CFO of Delta Pharma Manufacturing, a pharmaceutical manufacturer. Your operations director wants to implement Just-In-Time (JIT) inventory to free up EGP 4,200,000 currently locked in raw material safety stock. The procurement director is strongly opposed — one raw material shortage could halt production for weeks. You need to make the financial case for or against JIT.',
                'challenge_questions_en' => json_encode([
                    'Calculate the expected cost of a stockout for the most critical raw material.',
                    'Build a risk-weighted analysis — is the EGP 1,092,000 saving worth the stockout risk?',
                    'Design a differentiated inventory strategy rather than blanket JIT.',
                    'What supply chain investments would reduce the need for safety stock without increasing stockout risk?',
                ], JSON_UNESCAPED_UNICODE),
                'solution_en'            => 'EXPECTED STOCKOUT COST FOR API A (most critical):
If a stockout occurs: lead time from Europe 21 days. Under JIT, safety stock buffer eliminated = 45 days. Total exposure: up to 45 days of production halt.
Production loss: 45 days × EGP 280,000/day = EGP 12,600,000.
Plus contractual penalties, customer loss, regulatory issues — potentially EGP 15,000,000+ total.

Expected annual stockout cost (probability-weighted):
European supplier on-time rate: 78% → 22% chance of delay in any delivery.
Delivery frequency: 8 deliveries/year.
Expected late deliveries: 8 × 22% = 1.76/year.
Average delay when late: 7 days. Under JIT, a 7-day delay means 7 days of production stoppage.
Expected annual cost: 1.76 × 7 days × EGP 280,000/day = EGP 3,449,600.
Versus the saving: EGP 1,092,000.
The EGP 3,449,600 expected stockout cost massively exceeds the EGP 1,092,000 holding cost saving. JIT for the API is financially irrational.

DIFFERENTIATED INVENTORY STRATEGY (not blanket JIT):
API A (imported, critical): Strategic safety stock — maintain 30 days minimum. Stockout cost far exceeds holding cost. Reduce from 45 to 30 days. Cash released: EGP 613,000.
Excipients (local, available): Near-JIT. Local supplier, 7-day lead time, low stockout cost. Reduce from 30 to 10 days. Cash released: EGP 453,000.
Packaging (local): JIT-compatible. 5-day lead time, low disruption cost. Reduce from 28 to 7 days. Cash released: EGP 690,000.
Secondary packaging: Full JIT. 3-day lead time, negligible disruption. Reduce to 5 days. Cash released: EGP 296,000.
Cleaning/utilities: JIT. 2-day lead time, negligible disruption. Reduce to 5 days. Cash released: EGP 154,000.
Chemicals (imported): Safety stock — maintain 20 days. Imported, 18-day lead time, significant disruption. Cash released: EGP 94,000.
Total cash released: EGP 2,300,000 (55% of safety stock) — without meaningfully increasing stockout risk.

SUPPLY CHAIN INVESTMENTS TO REDUCE SAFETY STOCK NEED:
1. Dual-sourcing for API A — qualify a second supplier (India/China) with 14-day lead time. Reduces required safety stock from 30 to 18 days, releasing another EGP 500,000+.
2. Vendor-managed inventory (VMI) for local suppliers — suppliers hold stock at their warehouse with 48-hour delivery commitment. Safety stock moves off the balance sheet.
3. Demand forecast sharing — share 3-month rolling production plans with all suppliers. Better visibility allows pre-positioning, reducing lead times 20–30%.',
                'bigger_lesson_en'       => 'JIT is a supply chain philosophy developed in Japan for a stable, reliable supply environment. Egypt and the GCC are not that environment. The right answer is never "full JIT" or "full safety stock" — it is a differentiated strategy matched to the risk profile of each individual material.',
                'skills_taught_en'       => json_encode([
                    'JIT vs. safety stock financial analysis',
                    'Expected value / probability-weighted decision making',
                    'Differentiated inventory strategy',
                    'Supply chain risk quantification',
                    'Dual-sourcing and VMI strategies',
                ], JSON_UNESCAPED_UNICODE),
                'case_data'              => json_encode([
                    'raw_materials' => [
                        ['material' => 'Active pharmaceutical ingredient A', 'stock_value_egp' => 1840000, 'safety_stock_days' => 45, 'lead_time' => '21 days (Europe)',  'stockout_daily_cost_egp' => 280000],
                        ['material' => 'Excipients (fillers, binders)',       'stock_value_egp' => 680000,  'safety_stock_days' => 30, 'lead_time' => '7 days (local)',   'stockout_daily_cost_egp' => 45000],
                        ['material' => 'Packaging materials',                 'stock_value_egp' => 920000,  'safety_stock_days' => 28, 'lead_time' => '5 days (local)',   'stockout_daily_cost_egp' => 12000],
                        ['material' => 'Secondary packaging',                 'stock_value_egp' => 360000,  'safety_stock_days' => 20, 'lead_time' => '3 days (local)',   'stockout_daily_cost_egp' => 0],
                        ['material' => 'Cleaning & utilities',                'stock_value_egp' => 180000,  'safety_stock_days' => 14, 'lead_time' => '2 days (local)',   'stockout_daily_cost_egp' => 0],
                        ['material' => 'Chemicals (imported)',                'stock_value_egp' => 220000,  'safety_stock_days' => 35, 'lead_time' => '18 days (Europe)', 'stockout_daily_cost_egp' => 60000],
                    ],
                    'financial_parameters' => [
                        'holding_cost_rate_pct'         => 26,
                        'total_safety_stock_egp'        => 4200000,
                        'annual_holding_cost_egp'       => 1092000,
                        'stockout_probability_monthly'  => 0.03,
                        'european_supplier_ontime_pct'  => 78,
                        'local_supplier_ontime_pct'     => 91,
                    ],
                ], JSON_UNESCAPED_UNICODE),
                'title_ar'               => 'المخزون الآني مقابل مخزون الأمان — قرار مالي',
                'subtitle_ar'            => 'استراتيجية المخزون وتمويل سلسلة التوريد',
                'situation_ar'           => 'أنت المدير المالي لشركة "دلتا فارما للتصنيع"، شركة أدوية. يريد مدير العمليات تطبيق نظام المخزون الآني (JIT) لتحرير 4,200,000 جنيه محبوسة في مخزون الأمان من المواد الخام. مدير المشتريات معارض بشدة — نقص مادة خام واحدة يمكن أن يوقف الإنتاج أسابيع. تحتاج إلى تقديم الحجة المالية مع أو ضد JIT.',
                'challenge_questions_ar' => json_encode([
                    'احسب التكلفة المتوقعة لنفاد المادة الخام الأكثر أهمية.',
                    'ابنِ تحليلاً مرجحاً بالمخاطر — هل يستحق توفير 1,092,000 جنيه مخاطر نفاد المخزون؟',
                    'صمّم استراتيجية مخزون متمايزة بدلاً من JIT الشامل.',
                    'ما هي استثمارات سلسلة التوريد التي ستقلل الحاجة لمخزون الأمان دون زيادة مخاطر النفاد؟',
                ], JSON_UNESCAPED_UNICODE),
                'solution_ar'            => 'التكلفة المتوقعة لنفاد المادة API أ (الأكثر أهمية):
إذا حدث نفاد: مدة التوريد من أوروبا 21 يوماً. تحت JIT، يُلغى احتياطي مخزون الأمان = 45 يوماً. مدة التعرض: ما يصل إلى 45 يوماً من توقف الإنتاج.
خسارة الإنتاج: 45 يوماً × 280,000 جنيه/يوم = 12,600,000 جنيه.
بالإضافة إلى عقوبات تعاقدية وفقدان عملاء ومشكلات تنظيمية — إجمالي محتمل 15,000,000 جنيه+.

التكلفة السنوية المتوقعة لنفاد المخزون (مرجحة بالاحتمال):
معدل الأوروبيين في الوقت المحدد: 78% → 22% احتمال تأخر في أي توصيل.
تكرار التوريد: 8 توصيلات/سنة.
التوصيلات المتأخرة المتوقعة: 8 × 22% = 1.76/سنة.
متوسط التأخير: 7 أيام. تحت JIT، تأخير 7 أيام يعني توقف إنتاج 7 أيام.
التكلفة السنوية المتوقعة: 1.76 × 7 أيام × 280,000 = 3,449,600 جنيه.
مقابل التوفير: 1,092,000 جنيه.
تكلفة النفاد المتوقعة 3,449,600 تتجاوز بكثير توفير الحيازة 1,092,000. JIT للـ API غير منطقي مالياً.

استراتيجية مخزون متمايزة (لا JIT شامل):
المادة API أ (مستوردة، حيوية): مخزون أمان استراتيجي — الحد الأدنى 30 يوماً. التكلفة تفوق الحيازة. التخفيض من 45 إلى 30 يوماً. نقد محرر: 613,000 جنيه.
السواغات (محلي): شبه JIT. مورد محلي، توريد 7 أيام. التخفيض من 30 إلى 10 أيام. نقد محرر: 453,000 جنيه.
مواد التغليف (محلي): متوافق مع JIT. توريد 5 أيام. التخفيض من 28 إلى 7 أيام. نقد محرر: 690,000 جنيه.
التغليف الثانوي: JIT كامل. توريد 3 أيام. التخفيض إلى 5 أيام. نقد محرر: 296,000 جنيه.
مواد التنظيف والمرافق: JIT. توريد يومين. التخفيض إلى 5 أيام. نقد محرر: 154,000 جنيه.
المواد الكيميائية (مستوردة): مخزون أمان — 20 يوماً. توريد 18 يوماً. نقد محرر: 94,000 جنيه.
إجمالي النقد المحرر: 2,300,000 جنيه (55% من مخزون الأمان) — دون زيادة ملموسة في مخاطر النفاد.

استثمارات سلسلة التوريد لتقليل الحاجة لمخزون الأمان:
1. تعدد المصادر لـ API أ — التأهيل لمورد ثانٍ (الهند/الصين) بوقت توريد 14 يوماً. يقلل مخزون الأمان المطلوب من 30 إلى 18 يوماً، محرراً 500,000 جنيه+ إضافية.
2. المخزون المُدار من المورد (VMI) للموردين المحليين — يحتفظ الموردون بالمخزون في مستودعاتهم بالتزام توصيل 48 ساعة. ينتقل مخزون الأمان خارج الميزانية.
3. مشاركة توقعات الطلب — مشاركة خطط الإنتاج المتداولة 3 أشهر مع جميع الموردين. الرؤية الأفضل تتيح التموضع المسبق، مما يقلل أوقات التوريد 20–30%.',
                'bigger_lesson_ar'       => 'نظام JIT فلسفة لسلسلة توريد تطورت في اليابان لبيئة مستقرة وموثوقة. مصر ودول الخليج ليست تلك البيئة. الإجابة الصحيحة ليست أبداً "JIT كامل" أو "مخزون أمان كامل" — بل استراتيجية متمايزة مطابقة لملف مخاطر كل مادة على حدة.',
                'skills_taught_ar'       => json_encode([
                    'التحليل المالي لـ JIT مقابل مخزون الأمان',
                    'القيمة المتوقعة / صنع القرار المرجح بالاحتمال',
                    'استراتيجية المخزون المتمايزة',
                    'قياس مخاطر سلسلة التوريد',
                    'استراتيجيات تعدد المصادر والـ VMI',
                ], JSON_UNESCAPED_UNICODE),
                'created_at'             => $now,
                'updated_at'             => $now,
            ],

            // ── IW-06 | Working Capital Optimisation as a Strategic Lever
            [
                'hub_id'                 => $hubId,
                'created_by'             => $adminId,
                'topic_slug'             => 'inventory_working_capital',
                'topic_name_en'          => 'Inventory & Working Capital',
                'topic_name_ar'          => 'المخزون ورأس المال العامل',
                'layer'                  => 'generic',
                'difficulty'             => 'advanced',
                'sort_order'             => 6,
                'status'                 => 'published',
                'published_at'           => $now,
                'read_time_minutes'      => 20,
                'title_en'               => 'Working Capital Optimisation as a Strategic Lever',
                'subtitle_en'            => 'Enterprise-wide working capital management',
                'situation_en'           => 'You are the new Group CFO of Meridian Holdings, a diversified Egyptian conglomerate with four business units: FMCG manufacturing, engineering services, real estate development, and a logistics subsidiary. The group has EGP 380,000,000 in annual revenue and EGP 96,000,000 in net working capital. The Group CEO has tasked you with releasing EGP 25,000,000 from working capital in the next 12 months to fund an acquisition — without taking on additional debt.',
                'challenge_questions_en' => json_encode([
                    'Calculate the working capital improvement potential for each business unit vs. benchmark.',
                    'Prioritise which business units offer the highest and most achievable improvement.',
                    'Design a 12-month working capital improvement programme — actions, owners, milestones.',
                    'How do you govern the programme at Group level without micromanaging business units?',
                ], JSON_UNESCAPED_UNICODE),
                'solution_en'            => 'WORKING CAPITAL IMPROVEMENT POTENTIAL VS. BENCHMARK:

FMCG Manufacturing: CCC 52 → 13 days = 39 days improvement. Daily revenue = 145,000,000 ÷ 365 = EGP 397,260/day. Potential WC release: 39 × 397,260 = EGP 15,493,000.

Engineering Services: CCC 78 → 35 days = 43 days improvement. Daily revenue = 88,000,000 ÷ 365 = EGP 241,096/day. Potential WC release: 43 × 241,096 = EGP 10,367,000.

Real Estate: CCC 230 → 135 days = 95 days improvement. Daily revenue = 96,000,000 ÷ 365 = EGP 263,014/day. Potential WC release: 95 × 263,014 = EGP 24,986,000.

Logistics: CCC 18 → 3 days = 15 days improvement. Daily revenue = 51,000,000 ÷ 365 = EGP 139,726/day. Potential WC release: 15 × 139,726 = EGP 2,096,000.

Total theoretical potential: EGP 52,942,000 — well above the EGP 25M target. Achievable even at 50% of theoretical potential.

PRIORITISATION:
Tier 1 — FMCG Manufacturing: EGP 15.5M potential. CCC improvements well-understood in this sector. Key levers: extend DPO 28 → 45 days (supplier negotiations), reduce DSO 38 → 28 days, reduce DIO 42 → 30 days. Target: EGP 8–10M release.
Tier 2 — Engineering Services: EGP 10.4M potential. DSO improvement 82 → 55 days is dominant lever (milestone billing, advance payments). Target: EGP 5–6M release.
Tier 3 — Real Estate: EGP 25M potential but driven by project structure — not easily compressible in 12 months. Focus on DPO improvement and pre-sales. Target: EGP 8–10M release over 12–18 months.
Tier 4 — Logistics: Already near benchmark. EGP 2M potential. Target: EGP 1M release.

12-MONTH PROGRAMME:
Month 1–2 (Diagnostic): Complete WC audit in each BU. Agree improvement targets. Install monthly WC reporting dashboard. Quick wins: identify top 5 overdue receivables per BU for immediate collections.
Month 3–6 (Primary actions): FMCG — renegotiate payment terms with 12 key suppliers; implement 90-day credit policy change. Engineering — implement milestone advance billing on all contracts over EGP 1M; launch collections programme. Group Treasury — pool cash across BUs to reduce idle cash in individual BU accounts.
Month 7–12 (Real Estate and sustainability): Implement pre-sales incentive programme; renegotiate contractor terms 45 → 60 days. Embed WC metrics in BU MD annual performance targets.

GROUP GOVERNANCE WITHOUT MICROMANAGEMENT:
Monthly Group WC Dashboard — one page showing CCC, NWC/revenue, and target gap per BU.
Quarterly Business Review — WC performance is standing agenda item. BU MDs present WC improvement actions, not just P&L.
Incentive alignment — include NWC/revenue reduction in BU MD annual bonus metrics. Profit without cash is not rewarded.
Group Treasury — cash pooling across BUs saves EGP 800,000–1,200,000 in annual interest costs by utilising cash in Logistics to fund Engineering rather than paying bank overdraft rates.',
                'bigger_lesson_en'       => 'Working capital is not a treasury function — it is a strategic lever. A CFO who releases EGP 25 million from working capital has found an acquisition without needing a bank. That is the difference between a financial controller and a strategic CFO.',
                'skills_taught_en'       => json_encode([
                    'Enterprise working capital analysis',
                    'CCC benchmarking by industry',
                    'Group treasury and cash pooling',
                    'Working capital programme design',
                    'Governance and incentive alignment',
                ], JSON_UNESCAPED_UNICODE),
                'case_data'              => json_encode([
                    'business_units' => [
                        ['name' => 'FMCG Manufacturing',   'revenue' => 145000000, 'nwc' => 28500000, 'dso' => 38,  'dio' => 42,  'dpo' => 28, 'ccc' => 52,  'dso_benchmark' => 28, 'dio_benchmark' => 30, 'dpo_benchmark' => 45, 'ccc_benchmark' => 13],
                        ['name' => 'Engineering Services', 'revenue' => 88000000,  'nwc' => 31200000, 'dso' => 82,  'dio' => 14,  'dpo' => 18, 'ccc' => 78,  'dso_benchmark' => 55, 'dio_benchmark' => 10, 'dpo_benchmark' => 30, 'ccc_benchmark' => 35],
                        ['name' => 'Real Estate',          'revenue' => 96000000,  'nwc' => 28800000, 'dso' => 95,  'dio' => 180, 'dpo' => 45, 'ccc' => 230, 'dso_benchmark' => 75, 'dio_benchmark' => 120,'dpo_benchmark' => 60, 'ccc_benchmark' => 135],
                        ['name' => 'Logistics',            'revenue' => 51000000,  'nwc' => 7500000,  'dso' => 32,  'dio' => 8,   'dpo' => 22, 'ccc' => 18,  'dso_benchmark' => 28, 'dio_benchmark' => 5,  'dpo_benchmark' => 30, 'ccc_benchmark' => 3],
                    ],
                    'group_total' => ['revenue' => 380000000, 'nwc' => 96000000, 'nwc_to_revenue_pct' => 25.3],
                    'target_wc_release_egp' => 25000000,
                ], JSON_UNESCAPED_UNICODE),
                'title_ar'               => 'تحسين رأس المال العامل كرافعة استراتيجية',
                'subtitle_ar'            => 'إدارة رأس المال العامل على مستوى المؤسسة',
                'situation_ar'           => 'أنت المدير المالي الجديد لمجموعة "ميريديان القابضة"، تكتل مصري متنوع مع أربع وحدات أعمال: التصنيع الاستهلاكي، خدمات الهندسة، التطوير العقاري، وشركة فرعية للخدمات اللوجستية. تبلغ إيرادات المجموعة 380,000,000 جنيه سنوياً وصافي رأس المال العامل 96,000,000 جنيه. كلّفك الرئيس التنفيذي للمجموعة بتحرير 25,000,000 جنيه من رأس المال العامل خلال 12 شهراً لتمويل عملية استحواذ — دون الاستعانة بديون إضافية.',
                'challenge_questions_ar' => json_encode([
                    'احسب إمكانية تحسين رأس المال العامل لكل وحدة أعمال مقارنة بالمعيار.',
                    'حدد أولويات وحدات الأعمال التي تقدم أعلى تحسين وأكثره قابلية للتحقيق.',
                    'صمّم برنامج تحسين رأس المال العامل لـ 12 شهراً — الإجراءات والمسؤولون والمعالم.',
                    'كيف تحكم البرنامج على مستوى المجموعة دون إدارة تفصيلية لوحدات الأعمال؟',
                ], JSON_UNESCAPED_UNICODE),
                'solution_ar'            => 'إمكانية تحسين رأس المال العامل مقارنة بالمعيار:

التصنيع الاستهلاكي: CCC 52 → 13 يوماً = تحسين 39 يوماً. الإيراد اليومي = 145,000,000 ÷ 365 = 397,260 جنيه/يوم. تحرير محتمل لرأس المال: 15,493,000 جنيه.

خدمات الهندسة: CCC 78 → 35 يوماً = تحسين 43 يوماً. الإيراد اليومي = 241,096 جنيه/يوم. تحرير محتمل: 10,367,000 جنيه.

العقارات: CCC 230 → 135 يوماً = تحسين 95 يوماً. الإيراد اليومي = 263,014 جنيه/يوم. تحرير محتمل: 24,986,000 جنيه.

اللوجستيات: CCC 18 → 3 أيام = تحسين 15 يوماً. الإيراد اليومي = 139,726 جنيه/يوم. تحرير محتمل: 2,096,000 جنيه.

الإمكانية النظرية الإجمالية: 52,942,000 جنيه — تتجاوز الهدف 25 مليون بكثير. قابل للتحقيق حتى عند 50% من الإمكانية النظرية.

الأولويات:
المستوى الأول — التصنيع الاستهلاكي: إمكانية 15.5 مليون. الروافع الرئيسية: مد DPO من 28 إلى 45 يوماً، تقليل DSO من 38 إلى 28، تقليل DIO من 42 إلى 30. الهدف: 8–10 ملايين.
المستوى الثاني — خدمات الهندسة: إمكانية 10.4 مليون. تحسين DSO 82 → 55 يوماً هو الرافعة المحورية (فوترة المراحل، دفعات مقدمة). الهدف: 5–6 ملايين.
المستوى الثالث — العقارات: إمكانية 25 مليون لكن مدفوعة بهيكل المشاريع — يصعب ضغطها في 12 شهراً. الهدف: 8–10 ملايين في 12–18 شهراً.
المستوى الرابع — اللوجستيات: قريبة من المعيار. إمكانية 2 مليون. الهدف: مليون.

البرنامج لـ 12 شهراً:
الشهر 1–2 (التشخيص): مراجعة شاملة لرأس المال العامل في كل وحدة. الاتفاق على أهداف التحسين. تركيب لوحة مراقبة شهرية. مكاسب سريعة: تحديد أكبر 5 مستحقات متأخرة في كل وحدة.
الشهر 3–6 (الإجراءات الرئيسية): التصنيع الاستهلاكي — إعادة التفاوض مع 12 مورداً رئيسياً. الهندسة — تطبيق الفوترة المسبقة على كل عقد أعلى من مليون جنيه. خزينة المجموعة — تجميع النقد عبر الوحدات.
الشهر 7–12 (العقارات والاستدامة): تطبيق برنامج حوافز ما قبل البيع. ربط مقاييس رأس المال العامل بأهداف أداء مديري الوحدات السنوية.

حوكمة المجموعة دون إدارة تفصيلية:
لوحة مراقبة رأس المال العامل الشهرية — صفحة واحدة تُظهر CCC ونسبة NWC/الإيرادات والفجوة عن الهدف لكل وحدة.
مراجعة الأعمال الفصلية — أداء رأس المال العامل بند ثابت على جدول الأعمال.
مواءمة الحوافز — إدراج تحسين NWC/الإيرادات في مكافآت مديري الوحدات السنوية. الربح بدون نقد لا يُكافأ.
خزينة المجموعة — تجميع النقد يوفر 800,000–1,200,000 جنيه سنوياً في تكاليف الفائدة.',
                'bigger_lesson_ar'       => 'رأس المال العامل ليس وظيفة خزينة — بل هو رافعة استراتيجية. المدير المالي الذي يحرر 25 مليون جنيه من رأس المال العامل وجد تمويل استحواذ دون الحاجة إلى بنك. هذا هو الفرق بين المراقب المالي والمدير المالي الاستراتيجي.',
                'skills_taught_ar'       => json_encode([
                    'تحليل رأس المال العامل على مستوى المؤسسة',
                    'مقارنة CCC بالمعيار حسب الصناعة',
                    'خزينة المجموعة وتجميع النقد',
                    'تصميم برنامج تحسين رأس المال العامل',
                    'الحوكمة ومواءمة الحوافز',
                ], JSON_UNESCAPED_UNICODE),
                'created_at'             => $now,
                'updated_at'             => $now,
            ],

        ];

        foreach ($cases as $case) {
            DB::table('cases')->insert($case);
        }

        $this->command->info('✅ CaseSeeder_InventoryWorkingCapital: 6 cases seeded.');
    }
}