Because the trailing slash is part of the querystring you can't just rewrite it, you have to extract the querystring minus that final /
and then redirect to the page you're on with that match appended.
To do this you need to match on the pattern in the RewriteCond with %1
(see this answer for reference) and append that to the %{REQUEST_URI}
(thus removing the original querystring) - like this:
RewriteEngine On
RewriteCond %{QUERY_STRING} ^(.*)/$
RewriteRule ^.*$ %{REQUEST_URI}?%1 [L,R=301]
RewriteCond %{QUERY_STRING} ^(.*)/$
<-- make sure you've got that /
at the end here in your conditional - it ensures that only querystrings that end with /
are redirected so you don't end up in a horrible recursive loop.