getMethod() == 'PATCH') { $id = is_numeric($this->tax) ? $this->tax : $this->tax->getAttribute('id'); $enabled = 'integer|boolean'; } else { $id = null; $enabled = 'nullable'; } $company_id = (int) $this->request->get('company_id'); $type = 'required|string'; if (!empty($this->request->get('type')) && $this->request->get('type') == 'compound') { $type .= '|unique:taxes,NULL,' . $id . ',id,company_id,' . $company_id . ',type,compound,deleted_at,NULL'; } return [ 'name' => 'required|string', 'rate' => 'required|min:0|max:100', 'type' => $type, 'enabled' => $enabled, ]; } }