File: /home/posscale/.trash/1app.3/Http/Requests/PrinterRequest.php
<?php
namespace App\Http\Requests;
use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Validation\Rule;
class PrinterRequest extends FormRequest
{
/**
* Determine if the user is authorized to make this request.
*/
public function authorize(): bool
{
return true;
}
/**
* Get the validation rules that apply to the request.
*
* @return array<string, \Illuminate\Contracts\Validation\ValidationRule|array<mixed>|string>
*/
public function rules(): array
{
$rules = [
'model_name' => 'required|min:8',
'serial_number' => 'required|min:3|max:255|unique:printers,serial_number',
'equipment_id' => 'required|max:255|unique:printers,equipment_id',
'type_title' => 'required',
'toner_type' => 'required',
'drum_unit' => 'required',
'fuser_unit' => 'required',
'paper_tray' => 'required',
'connect_to_smpt' => 'nullable',
'host' => 'required_if:connect_to_smpt,=,1',
'auth' => 'required_if:connect_to_smpt,=,1',
'user_name' => 'required_if:connect_to_smpt,=,1',
'user_password' => 'required_if:connect_to_smpt,=,1',
'port' => 'required_if:connect_to_smpt,=,1',
'from' => 'nullable',
'from_name' => 'nullable',
'cus_name' => 'required',
'cus_email' => 'required',
'rec_name' => 'required',
'rec_email' => 'required',
];
if ($this->has('printer_id')) {
$rules['serial_number'] = 'required|min:3|max:255|' . Rule::unique('printers', 'serial_number')->ignore($this->input('printer_id'));
$rules['equipment_id'] = 'required|min:3|max:255|' . Rule::unique('printers', 'equipment_id')->ignore($this->input('printer_id'));
}
return $rules;
}
}