<?php

namespace App\Http\Controllers;

use App\Subpedido;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
use Illuminate\Http\Response;
use Illuminate\Support\Facades\Auth;
use Illuminate\Validation\Rule;

class SessionController extends Controller
{
    public function store(Request $request): Response
    {
        $grupo_de_compra_id = Auth::user()->grupo_de_compra_id;
        $validated = $request->validate([
            'id' => 'required',
                    Rule::in(Subpedido::where('grupo_de_compra_id', $grupo_de_compra_id)->pluck('id')),
        ]);
        session()->put('pedido_id', $validated["id"]);
        return response()->noContent();
    }

    public function fetch(): JsonResponse
    {
        return response()->json(['id' => session('pedido_id')]);
    }

    public function destroy(): Response
    {
        session()->forget('pedido_id');
        return response()->noContent();
    }
}