<?php

namespace App\Rules;

use Illuminate\Validation\Rule;

class BienRules
{
    public static function rules(bool $isUpdate = false, $id = null): array
    {
        return [
            'sap' => ['nullable', 'string', 'max:10'],
            'codigo' => ['nullable', 'string', 'max:50'],
            'descripcion' => ['required', 'string', 'max:200'],
            'unidad' => ['nullable', 'string', 'max:20'],
            'unidadUtil' => ['nullable', 'string', 'max:20'],
            'relacionUnidades' => ['required', 'integer', 'min:1'],
            'tipo' => ['nullable', 'integer', Rule::exists('tipo_insumos', 'id')],
            'marca' => ['nullable', 'string', 'max:30'],
            'modelo' => ['nullable', 'string', 'max:30'],
            'serial' => ['nullable', 'string', 'max:30'],
            'costo' => ['nullable', 'numeric', 'min:0'],
            'peso' => ['nullable', 'numeric', 'min:0'],
            'ubicacionEstante' => ['nullable', 'string', 'max:120'],
            'ubicacionFila' => ['nullable', 'string', 'max:120'],
            'tiempoRetorno' => ['nullable', 'integer', 'min:0'],
            'mesesEntrega' => ['nullable', 'integer', 'min:0'],
            'fotoBienes' => ['nullable', 'file', 'mimes:jpg,jpeg,png,webp', 'max:4096'],
        ];
    }
}
