<?php

namespace App\Http\Requests\Admin;

use Illuminate\Foundation\Http\FormRequest;

class StoreUserRequest extends FormRequest
{
    /**
     * Determine if the user is authorized to make this request.
     */
    public function authorize(): bool
    {
        return true; // Middleware handles authorization
    }

    /**
     * Get the validation rules that apply to the request.
     */
    public function rules(): array
    {
        return [
            'msnv'        => 'required|integer|unique:user,msnv',
            'name'        => 'required|string|max:255',
            'mail'        => 'required|email|unique:user,mail',
            'departments' => 'required|string|in:' . implode(',', config('constants.DEPARTMENTS')),
            'password'    => 'required|string',
            'role'        => 'required|in:' . config('constants.ROLE_MEMBER') . ',' . config('constants.ROLE_ADMIN'),
        ];
    }
}
