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

[Feature]: Ranking Cheapest Station #96

Closed
Klaus-Lucas opened this issue Nov 21, 2022 · 9 comments
Closed

[Feature]: Ranking Cheapest Station #96

Klaus-Lucas opened this issue Nov 21, 2022 · 9 comments

Comments

@Klaus-Lucas
Copy link

Klaus-Lucas commented Nov 21, 2022

Is your feature request related to a problem? Please describe.

Laut Issue 50
Der Adapter geht alle eingetragenen Stationen nacheinander durch und holt die Preise von Tankerkoenig ab und speichert sie in die Datenpunkte. Dabei vergleicht er bei jeder Station, ob sie verglichen mit den anderen Stationen nicht günstiger ist. Wenn ja, wird sie auch in Cheapest geschrieben.

Ich habe meine Tankstellen sortiert nach Entfernung eingegeben. Bei gleichen Preisen gibt der Adapter unter Cheapest (s.o.) die letzte Tankstelle aus, die den gleichen Preis hat, also bei mir die weit entfernteste. Meiner Meinung nach sollte der Adapter beim Vergleichen feststellen, dass es schon eine Tankstelle mit dem Preis gibt und die folgenden mit gleichem Preis ignorieren.

klu_011
klu_009
klu_010

Ich persönlich fände ich es noch gut, wenn der Short Preis gerundet ausgegeben würde, also bei 1,879€ 1,88€. Ist aber Ansichtssache.

Describe the solution you'd like

No response

Describe alternatives you've considered

No response

Additional context

No response

@Schmakus
Copy link
Contributor

Muss man sich mal anschauen mit "Erste günstige Tankstelle".
Was die Preisrundung angeht: Der short-Preis ist nix anderes, als der um eine Stelle gekürzte Preis, welcher zusammen mit dem 3rd Datenpunkt wieder zu einem "Tankstellenpreis" gemacht werden kann. (siehe combined).
Ansonsten ist es natürlich eine Ansichtssache, jedoch ist umgangssprachlich der Preis an einer Tankstelle der Preis ohne die letzte Stelle. Bei 1.889 € sagt niemand, dass der Preis bei 1.89 € liegt, sondern immer 1.88 €

@Pix---
Copy link
Collaborator

Pix--- commented Nov 21, 2022

Die Intention war, den Shortpreis für die Darstellung in VIS zu nutzen. So wie Schmakus es erklärt, wird der Preis normalerweise ohne den Tausendstel Euro (3rd) kommuniziert. So kann jeder selbst entscheiden, ob er in VIS 1,88€ oder 1,88hoch9 darstellen lässt. Einige Tankstellen setzen die Tausendstel-Stelle auch auf 4. Da geht es nur um die Darstellung der Zahl. Das schließt übrigens auch die Sprachausgabe ein.
Für alle Berechnungen und Charts ist der feed-Datenpunkt da.

Zu "cheapest":
Man könnte eine Flag (Schalter) in die Adapter-Einstellung aufnehmen. Es gibt da mehrere Wege.
Entweder eine Flag, die

  • bei jedem Durchlauf entscheidet, ob eben diese Station als Günstigste (oder "Mitgünstigste") markiert werden darf (Schalter bei jeder Station nötig)
  • generell entscheidet, dass nur Stationen, die günstiger sind, als die bisher Günstigste, selbst Günstigste werden können (dann bleibt nur eine "cheapest" übrig, so war es im alten Adapter und es ist nur ein Schalter nötig)

@Klaus-Lucas
Copy link
Author

"Bei 1.889 € sagt niemand, dass der Preis bei 1.89 € liegt, sondern immer 1.88 €"
Das genau ist ja das Ziel der Ölkonzerne, weil diese Art Preisdarstellung vorteilhafter für sie ist :-)

"generell entscheidet, dass nur Stationen, die günstiger sind, als die bisher Günstigste, selbst Günstigste werden können"
Würde ich bevorzugen.

@xXBJXx
Copy link
Contributor

xXBJXx commented Nov 25, 2022

Ich persönlich fände ich es noch gut, wenn der Short Preis gerundet ausgegeben würde, also bei 1,879€ 1,88€. Ist aber Ansichtssache.

Eine Rundung des Preises im short Datenpunkt werde ich nicht einbauen.
Man könnte eventuell darüber nachdenken / diskutieren, ob man einen neuen Datenpunkt rounded einbaut. Falls erwünscht, dann bitte ein Feature Request dafür erstellen.


Ich habe meine Tankstellen sortiert nach Entfernung eingegeben. Bei gleichen Preisen gibt der Adapter unter Cheapest (s.o.) die letzte Tankstelle aus, die den gleichen Preis hat, also bei mir die weit entfernteste. Meiner Meinung nach sollte der Adapter beim Vergleichen feststellen, dass es schon eine Tankstelle mit dem Preis gibt und die folgenden mit gleichem Preis ignorieren.

Ich habe mir heute noch mal den Response von der API angeschaut und gesehen, dass die Stationen dort nicht in der Reihenfolge, wie sie in der UI konfiguriert sind zurückkommen.

Reihenfolge UI
0 = a5d9021e-7833-41e7-abe5-b2d99e7623ba
1 = b37bbb94-30a6-4c84-ba09-56d9d318b9f8
2 = 00545000-fa12-4f42-a991-8e3556c24db3
3 = f9e2db4d-a0b0-481d-97c5-f1953ed63657
4 = e1a15081-25d9-9107-e040-0b0a3dfe563c

Reihenfolge Response
image

Darauf wird dann die Sortierung angewandt (e5 Sortierung).
image

Und angesichts dessen wird, auch wenn die 1. Tankstelle, die in der UI konfiguriert ist und gerade einer der Tankstellen mit dem billigsten Preisen ist, nicht als Erstes angezeigt wird.

Ich werde was einbauen, dass der Response nach der Reihenfolge der Stationen in der UI sortiert wird und dann erst nach den Preisen. Jetzt sollten die billigsten Tankstellen nach der UI Reihenfolge angezeigt werden.
image

@Klaus-Lucas Ist das so OK für dich?

@Klaus-Lucas
Copy link
Author

@xXBJXx auf jeden Fall. Danke für die Mühe.
Wegen des Short Preis: Lasst es wie es ist. Ein weiterer Datenpunkt Rounded ist die bessere Lösung.

@xXBJXx
Copy link
Contributor

xXBJXx commented Nov 25, 2022

@Klaus-Lucas Ich habe auf GitHub eine Testversion mit der neuen sortier Funktion hochgeladen kannst du sie bitte testen und mir dann Bescheid geben, ob sie bei dir so funktioniert wie du sie haben wolltest?
Bitte von GitHub installieren.

@Klaus-Lucas
Copy link
Author

@xXBJXx Sieht korrekt aus. Wie geschrieben sind die Tankstellen nach Prio 0-8 eingetragen.
Erst Markant (0), PM (1), Jet (3).... Alle 3 haben den gleichen Preis und in Cheapest steht die Markant.
klu_004
klu_005
klu_006

klu_007

@xXBJXx
Copy link
Contributor

xXBJXx commented Nov 25, 2022

Also so wie es soll?
In der neusten Version auf GitHub ist noch ein neuer state cheapest_stations dazu gekommen, in dem alle billigen Stationen mit Namen eingetragen sind. {issue #93)

@Klaus-Lucas
Copy link
Author

@xXBJXx Danke für die Anpassung.

xXBJXx added a commit that referenced this issue Nov 27, 2022
* (xXBJXx) removed noLog option because the adapter log output was strongly optimized
* (xXBJXx) Optimized sorting of the cheapest gas station [issue #96](#96)
* (xXBJXx) add new state `cheapest_stations` for the cheapest gas station [issue #93](#93)
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

4 participants