apply( $query, $tenant ?? static::resolveTenantContextForTenantOwnedRecords(), static::tenantOwnedRelationshipName(), ); } protected static function resolveTenantOwnedRecord(Model|int|string|null $record, ?Builder $query = null, ?Tenant $tenant = null): ?Model { $scopedQuery = static::scopeTenantOwnedQuery( $query ?? parent::getEloquentQuery(), $tenant, ); return app(TenantOwnedRecordResolver::class)->resolve($scopedQuery, $record); } protected static function resolveTenantOwnedRecordOrFail(Model|int|string|null $record, ?Builder $query = null, ?Tenant $tenant = null): Model { $scopedQuery = static::scopeTenantOwnedQuery( $query ?? parent::getEloquentQuery(), $tenant, ); return app(TenantOwnedRecordResolver::class)->resolveOrFail($scopedQuery, $record); } }