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

Price range filtering of products #3

Open
pjedrzejewski opened this issue Dec 14, 2016 · 4 comments
Open

Price range filtering of products #3

pjedrzejewski opened this issue Dec 14, 2016 · 4 comments
Assignees

Comments

@pjedrzejewski
Copy link
Contributor

Just like on https://bestvalue.eu/listing/skincare?badge=BestSeller

@gabiudrescu
Copy link

I can provide you the feature files we are currently using for our listings.

As you know, this is based on ElasticSearch

@pjedrzejewski
Copy link
Contributor Author

@gabiudrescu That would be great!

@Arminek
Copy link
Contributor

Arminek commented Dec 15, 2016

@gabiudrescu really cool as soon as this #6 will be merged you can open pr with the feature 🎉

@gabiudrescu
Copy link

after I looked in our codebase, I have realized that this feature is so early that we don't have features in a form we can share them.

but, I can share with you our user story:


In order to easily select what I want to buy according to my budget,
As a customer,
I need price filters.

Criteria of acceptance:

  • pricing filters should be exclusive (only one price range filter can be applied at a given moment)
  • there should be an option to manually insert min & max for price range
  • the number of price ranges for this filter will be a configurable option application-wide; the entire catalogue will have the same number of price ranges (e.g. 4)
  • the number of products will be distributed to each filter evenly; see more details in the note section
  • pricing ranges will be rounded to exact number; e.g: 100 - 199.99
  • pricing ranges will be calculated only related to taxon; the pricing ranges will not be modified by other applied filters; e.g:
    -- we have taxon "Perfume"
    -- the algorithm calculates 5 relevant pricing intervals
    -- no matter how many other filters are applied, the same 5 relevant pricing intervals can be used
    -- the ones not having products will not be displayed
  • pricing rules should be always applied to EUR price - no matter what's the locale

Notes:

We will tried to replicate the algorithm from a search engine service provider:

Dynamic (currently used) , the only configurable parameter is number of steps (default = 5)
This tries to create 5 groups each containing some results.
It starts trying equal step sizes , i.e highest/5 ,
0-200, 200-400,400-600,800-100
if this does not provide a good distribution
The algorithm then tries to adjust the step sizes to provide an acceptable distribution.

The priority for price range and rounding up / down the interval head is for having an even product distribution; e.g. if we have the interval between 250 and 500 and the majority is between 200 and 250 + 250 and 300, the intervals will be calculated to have an even distribution.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants