ob-vss-ss18 / ppl-core

BSD 3-Clause "New" or "Revised" License
0 stars 1 forks source link

Funktion Verleih #2

Closed hilakista closed 6 years ago

hilakista commented 6 years ago

Welche Funktion hat das Modul Verleih bzw. was ist der Unterschied zwischen Verleih und Leasing?

obcode commented 6 years ago

Verleih soll tageweise ohne spezielle Rabatte sein. Verliehen werden auch andere Produkte wie z.B. SUPs. Das Leasing bezieht sich immer auf die Saison.

D.h. wenn ich als Kunde komme und etwas leasen will, nehme ich es mit bis zum 30.4., egal ob ich im Oktober komme oder im März. Dafür gibt es einen pauschalen Preis mit den ganzen Rabatten etc. Wenn ich etwas leihen will, zählen die tatsächlichen Tage. D.h. leihen lohnt sich natürlich damit nur für wenige Tage. Ich weiß gar nicht ob es da auch noch mal eine Staffelung gibt.

Ich habe das erstmal auseinander genommen. Es ist natürlich recht ähnlich, insofern ist die Trennung vielleicht etwas künstlich.

hilakista commented 6 years ago

Also könnte man theoretisch den Verleih mit dem Leasing zusammenlegen, und aus dem alten Verleihsystem einen Auth Service für die Authentifikation für Verleih/Leasing und Reservierung machen? Das würde nämlich noch fehlen wenn man die Möglichkeit der Reservierung für Kunden von zu Hause einräumt.

obcode commented 6 years ago

Ja, klar. Das könnten wir machen.

Unterschied wäre dann ja nur:

obcode commented 6 years ago

Wenn die Gruppe das macht, soll sie bitte das Repo umbenennen in ppl-auth. Kann ich aber dann natürlich auch machen. // cc: @MarEliSeg

MarEliSeg commented 6 years ago

Alles klar, dann machen wir einen Auth Service :thumbsup:

obcode commented 6 years ago

@MarEliSeg Ich finde, dass Passwordless Authentication für diesen Anwendungsfall auch einen gewissen Charme hat.

Ablauf

  1. Benutzer geht auf Website und gibt seine E-Mail-Adresse ein.
  2. E-Mail-Adresse wird in der Kundenverwaltung gesucht.
  3. Wenn 2. erfolgreich war, wird ein One-Time-Token mit einer gewissen Gültigkeitsdauer (z.B. 30 Minuten) generiert.
  4. Token wird in der DB mit Gültigkeitszeitraum gespeichert.
  5. Benutzer bekommt an die E-Mail-Adresse eine E-Mail mit einer URL in der das Token und die E-Mail-Adresse enthalten ist.
  6. Über URL ist er Authentifiziert.

Es gibt dazu eine Implementierung in node.js/express unter https://passwordless.net/.

Darüber können sich natürlich auch Neukunden registrieren.

MarEliSeg commented 6 years ago

@obcode Für den Kunden ist das eine schöne Lösung. Man braucht dann aber eine zweite Variante für die Mitarbeiter, oder? Da die ja mehr Funktionen haben und nicht ständig ausgeloggt werden sollten.

hilakista commented 6 years ago

Ich würde sagen für die Kunden machen wir die beschriebene Methode ohne Passwort (mit Gegenchecken mit ppl-customers und versenden einer Email). Das Reservierungssystem wird dann mit ppl-auth den Token prüfen. Für den/die Mitarbeiter machen wir eine klassische user/passwort Lösung mit Ein- und Ausloggen. ppl-leasing wird dann ebenfalls mit ppl-auth die Gültigkeit des Tokens prüfen.

Wir werden das so in das API-Design aufnehmen für ein konsistentes System.