<?php
return [
    'finance' => [
        'favicon' => 'data/FINANCE_DATA_UPLOAD.PNG',
        'sampleFileLocation' => 'data/SampleGraphs/finance_sample.xlsx',
        'title' => 'Finance Data Upload',
        'dashboardTitle' => '💰 Finance Data Upload',
        'description' => 'Upload your CSV files to import finance data into the system',
        'table' => 'FinanceTable',
        'columns' => [
            'Year' => [
                'type' => 'string',
                'required' => true,
                'display' => 'Year'
            ],
            'Month' => [
                'type' => 'string',
                'required' => true,
                'display' => 'Month',
                'options' => ['January','February','March','April','May','June',
                              'July','August','September','October','November','December']
            ],
            'Date' => [
                'type' => 'string',
                'required' => false,
                'display' => 'Date',
                'format' => 'date'
            ],
            'InvoiceNo' => [
                'type' => 'string',
                'required' => false,
                'display' => 'Invoice No'
            ],
            'Category' => [
                'type' => 'string',
                'required' => false,
                'display' => 'Category'
            ],
            'SubCategory' => [
                'type' => 'string',
                'required' => false,
                'display' => 'Sub Category'
            ],
            'ProjectName' => [
                'type' => 'string',
                'required' => false,
                'display' => 'Project Name'
            ],
            'LicenseType' => [
                'type' => 'string',
                'required' => false,
                'display' => 'License Type',
                'options' => ['Enhancement', 'Subscription', 'Fixed', 'FTE']
            ],
            'RevenueType' => [
                'type' => 'string',
                'required' => false,
                'display' => 'Revenue Type',
                'options' => ['Adhoc', 'Recurring']
            ],
            'CustomerName' => [
                'type' => 'string',
                'required' => false,
                'display' => 'Customer Name'
            ],
            'Revenue' => [
                'type' => 'float',
                'required' => false,
                'display' => 'Revenue',
                'default' => 0,
                'validation' => ['min' => 0]
            ],
            'InvoiceDescription' => [
                'type' => 'string',
                'required' => false,
                'display' => 'Invoice Description'
            ]
        ]
    ],

    'expenses' => [
        'favicon' => 'data/FINANCE_DATA_UPLOAD.PNG',
        'sampleFileLocation' => 'data/SampleGraphs/expense_sample.xlsx',
        'title' => 'Expense Data Upload',
        'dashboardTitle' => '💸 Expense Data Upload',
        'description' => 'Upload your CSV files to import expense data into the system',
        'table' => 'ExpenseTable',
        'columns' => [
            'Year' => [
                'type' => 'string',
                'required' => false,
                'display' => 'Year'
            ],
            'Month' => [
                'type' => 'string',
                'required' => false,
                'display' => 'Month',
                'options' => ['January','February','March','April','May','June',
                              'July','August','September','October','November','December']
            ],
            'ExpenseType' => [
                'type' => 'string',
                'required' => false,
                'display' => 'Expense Type'
            ],
            'Amount' => [
                'type' => 'float',
                'required' => false,
                'display' => 'Amount',
                'default' => 0,
                'validation' => ['min' => 0]
            ]
        ]
    ],

    'sales' => [
        'favicon' => 'data/SALES_DATA_UPLOAD.PNG',
        'title' => 'Sales Data Upload',
        'dashboardTitle' => '📊 Sales Data Upload',
        'description' => 'Upload your CSV files to import sales data into the system',
        'table' => 'sales_table',
        'columns' => [
            'date' => [
                'type' => 'string',
                'required' => true,
                'display' => 'Sale Date',
                'format' => 'date'
            ],
            'salesperson' => [
                'type' => 'string',
                'required' => true,
                'display' => 'Salesperson Name'
            ],
            'product_name' => [
                'type' => 'string',
                'required' => true,
                'display' => 'Product Name'
            ],
            'quantity' => [
                'type' => 'int',
                'required' => true,
                'display' => 'Quantity Sold',
                'validation' => ['min' => 1]
            ],
            'unit_price' => [
                'type' => 'float',
                'required' => true,
                'display' => 'Unit Price',
                'validation' => ['min' => 0]
            ],
            'total_amount' => [
                'type' => 'float',
                'required' => false,
                'display' => 'Total Amount',
                'calculated' => true
            ],
            'commission' => [
                'type' => 'float',
                'required' => false,
                'display' => 'Commission',
                'default' => 0
            ]
        ]
    ],

    'inventory' => [
        'favicon' => 'data/INVENTORY_DATA_UPLOAD.PNG',
        'title' => 'Inventory Data Upload',
        'dashboardTitle' => '📦 Inventory Data Upload',
        'description' => 'Upload your CSV files to import inventory data into the system',
        'table' => 'inventory_table',
        'columns' => [
            'item_code' => [
                'type' => 'string',
                'required' => true,
                'display' => 'Item Code',
                'unique' => true
            ],
            'item_name' => [
                'type' => 'string',
                'required' => true,
                'display' => 'Item Name'
            ],
            'category' => [
                'type' => 'string',
                'required' => true,
                'display' => 'Category'
            ],
            'stock_quantity' => [
                'type' => 'int',
                'required' => true,
                'display' => 'Stock Quantity',
                'validation' => ['min' => 0]
            ],
            'reorder_level' => [
                'type' => 'int',
                'required' => false,
                'display' => 'Reorder Level',
                'default' => 10
            ],
            'unit_cost' => [
                'type' => 'float',
                'required' => false,
                'display' => 'Unit Cost',
                'validation' => ['min' => 0]
            ],
            'supplier' => [
                'type' => 'string',
                'required' => false,
                'display' => 'Supplier Name'
            ]
        ]
    ],

    'hr' => [
        'favicon' => 'data/HR_DATA_UPLOAD.PNG',
        'title' => 'HR Data Upload',
        'dashboardTitle' => '👥 HR Data Upload',
        'description' => 'Upload your CSV files to import HR data into the system',
        'table' => 'hr_table',
        'columns' => [
            'employee_id' => [
                'type' => 'string',
                'required' => true,
                'display' => 'Employee ID',
                'unique' => true
            ],
            'employee_name' => [
                'type' => 'string',
                'required' => true,
                'display' => 'Employee Name'
            ],
            'department' => [
                'type' => 'string',
                'required' => true,
                'display' => 'Department'
            ],
            'position' => [
                'type' => 'string',
                'required' => true,
                'display' => 'Position/Title'
            ],
            'salary' => [
                'type' => 'float',
                'required' => false,
                'display' => 'Salary',
                'validation' => ['min' => 0]
            ],
            'hire_date' => [
                'type' => 'string',
                'required' => false,
                'display' => 'Hire Date',
                'format' => 'date'
            ],
            'status' => [
                'type' => 'string',
                'required' => false,
                'display' => 'Employment Status',
                'default' => 'Active',
                'options' => ['Active', 'Inactive', 'On Leave', 'Terminated']
            ]
        ]
    ],

    'marketing' => [
        'favicon' => 'data/MARKETING_DATA_UPLOAD.PNG',
        'title' => 'Marketing Data Upload',
        'dashboardTitle' => '📈 Marketing Data Upload',
        'description' => 'Upload your CSV files to import marketing campaign data into the system',
        'table' => 'marketing_table',
        'columns' => [
            'campaign_id' => [
                'type' => 'string',
                'required' => true,
                'display' => 'Campaign ID',
                'unique' => true
            ],
            'campaign_name' => [
                'type' => 'string',
                'required' => true,
                'display' => 'Campaign Name'
            ],
            'channel' => [
                'type' => 'string',
                'required' => true,
                'display' => 'Marketing Channel',
                'options' => ['Google Ads', 'Facebook', 'Instagram', 'LinkedIn', 'Email', 'SMS', 'Print', 'TV', 'Radio', 'Other']
            ],
            'budget' => [
                'type' => 'float',
                'required' => true,
                'display' => 'Campaign Budget',
                'validation' => ['min' => 0]
            ],
            'spend' => [
                'type' => 'float',
                'required' => false,
                'display' => 'Amount Spent',
                'default' => 0,
                'validation' => ['min' => 0]
            ],
            'impressions' => [
                'type' => 'int',
                'required' => false,
                'display' => 'Impressions',
                'default' => 0
            ],
            'clicks' => [
                'type' => 'int',
                'required' => false,
                'display' => 'Clicks',
                'default' => 0
            ],
            'conversions' => [
                'type' => 'int',
                'required' => false,
                'display' => 'Conversions',
                'default' => 0
            ]
        ]
    ],

    'operations' => [
        'favicon' => 'data/OPERATIONS_DATA_UPLOAD.PNG',
        'title' => 'Operations Data Upload',
        'dashboardTitle' => '⚙️ Operations Data Upload',
        'description' => 'Upload your CSV files to import operational process data into the system',
        'table' => 'operations_table',
        'columns' => [
            'process_id' => [
                'type' => 'string',
                'required' => true,
                'display' => 'Process ID',
                'unique' => true
            ],
            'process_name' => [
                'type' => 'string',
                'required' => true,
                'display' => 'Process Name'
            ],
            'department' => [
                'type' => 'string',
                'required' => true,
                'display' => 'Department'
            ],
            'duration_hours' => [
                'type' => 'float',
                'required' => false,
                'display' => 'Duration (Hours)',
                'validation' => ['min' => 0, 'max' => 24]
            ],
            'cost' => [
                'type' => 'float',
                'required' => false,
                'display' => 'Process Cost',
                'validation' => ['min' => 0]
            ],
            'efficiency_score' => [
                'type' => 'float',
                'required' => false,
                'display' => 'Efficiency Score (%)',
                'validation' => ['min' => 0, 'max' => 100]
            ],
            'status' => [
                'type' => 'string',
                'required' => false,
                'display' => 'Process Status',
                'default' => 'Active',
                'options' => ['Active', 'Inactive', 'Under Review', 'Optimizing', 'Completed']
            ]
        ]
    ]
];
