<?php

namespace App\Domains\Admin\Controllers;

use App\Enumerations\TaxExemptionReason;
use App\Enumerations\VatPricingMode;
use App\Scopes\CommonController;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;

class ManagedTenantTaxGetController extends CommonController
{
    public function __invoke(string $slug, Request $request): JsonResponse
    {
        $tenant = $this->adminTenants->findBySlug($slug);

        return response()->json([
            'tax_liable' => $tenant->tax_liable,
            'vat_rate' => $tenant->vat_rate,
            'tax_exemption_reason' => $tenant->tax_exemption_reason,
            'tax_exemption_note' => $tenant->tax_exemption_note,
            'vat_pricing_mode' => $tenant->vat_pricing_mode,
            'exemption_reasons' => TaxExemptionReason::options(),
            'pricing_modes' => VatPricingMode::options(),
            'saveEndpoint' => '/api/v1/admin/tenants/' . $slug . '/tax',
        ]);
    }
}
