<?php

namespace App\Filament\Widgets;

use App\Support\NumberToWords as N;
use Filament\Widgets\StatsOverviewWidget as BaseWidget;
use Filament\Widgets\StatsOverviewWidget\Stat;

class MySalesBonusWidget extends BaseWidget
{
    protected static ?int $sort = 4;

    protected function getStats(): array
    {
        $user = auth()->user();
        $startMonth = now()->startOfMonth();
        $startYear = now()->startOfYear();

        $monthSales = $user->salesTotal($startMonth);
        $monthBonus = $user->bonusAmount($startMonth);
        $yearSales = $user->salesTotal($startYear);

        return [
            Stat::make('فروش این ماه', N::money($monthSales) . ' ریال')
                ->description('مجموع فاکتورهای ماه جاری شما')
                ->color('success')
                ->icon('heroicon-o-banknotes'),
            Stat::make('پاداش این ماه', N::money($monthBonus) . ' ریال')
                ->description('بر اساس ' . N::digits((float) $user->bonus_percent) . '٪ پاداش')
                ->color('warning')
                ->icon('heroicon-o-gift'),
            Stat::make('فروش امسال', N::money($yearSales) . ' ریال')
                ->description('مجموع فروش شما در سال جاری')
                ->color('info')
                ->icon('heroicon-o-chart-bar'),
        ];
    }
}
