(string) ($data['field_key'] ?? ''), 'label' => (string) ($data['label'] ?? ''), 'type' => (string) ($data['type'] ?? ''), 'is_required' => (int) ($data['is_required'] ?? 0), 'is_filterable' => (int) ($data['is_filterable'] ?? 0), 'active' => (int) ($data['active'] ?? 1), 'sort_order' => (int) ($data['sort_order'] ?? 100), ]; if (array_key_exists('modified_by', $data)) { $fields['modified_by'] = $data['modified_by']; } $set = []; $params = []; foreach ($fields as $field => $value) { $set[] = sprintf('`%s` = ?', $field); $params[] = (string) $value; } $params[] = (string) $id; $result = DB::update( 'update tenant_custom_field_definitions set ' . implode(', ', $set) . ' where id = ?', ...$params ); return $result !== false; } public function delete(int $id): bool { if ($id <= 0) { return false; } $result = DB::delete('delete from tenant_custom_field_definitions where id = ?', (string) $id); return $result !== false; } }