Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: Ensure consistent order of results on list responses (frontend and API) #2934

Merged
merged 36 commits into from
Dec 13, 2024

Conversation

ancorcruz
Copy link
Contributor

@ancorcruz ancorcruz commented Dec 10, 2024

Context

Some endpoints like GET /api/v1/credit_notes provide duplicate results on pagination as created_at is not accurate enough to effectively order resources by itself.

Description

This change updates all API/v1 controllers to use query objects to retrieve records for the GET / (index) endpoints. Also, apply default ordering by created_at :desc and id :asc to ensure records stay in their position when going through pages.

Query classes specs are re-styled to the current rules we are following.

ensures consistent ordering of returned credit notes
as this is going to be applied accross all query objects, extract the
ordering to the base class
Why is this one ordering by created_at asc instead of created_at desc?
this was not really required as the ordering field webhook_url was
already unique...
@ancorcruz ancorcruz self-assigned this Dec 10, 2024
on plans index to include pending for deletion plans
ensure responses are consistent and have a consistent ordering
and keep the same data as before with the new inclusion of pending for
deletion plans added to the query object
add wallets query object with filter validation
@ancorcruz ancorcruz changed the title Fix consistent order fix: Ensure consistent order of results on list responses (frontend and API) Dec 11, 2024
@ancorcruz ancorcruz added the 🐞 Bug Something isn't working label Dec 11, 2024
@ancorcruz ancorcruz marked this pull request as ready for review December 11, 2024 10:16
@ancorcruz ancorcruz requested a review from lovrocolic December 11, 2024 10:40
Copy link
Collaborator

@vincent-pochet vincent-pochet left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great one!

Just one comment regarding the event endpoint as it is a pretty sensitive one

app/queries/events_query.rb Outdated Show resolved Hide resolved
@ancorcruz ancorcruz merged commit bdb7668 into main Dec 13, 2024
6 checks passed
@ancorcruz ancorcruz deleted the fix-consistent-order branch December 13, 2024 08:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🐞 Bug Something isn't working
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants