This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
de:developer:ideas:extensions:ext-grade [2011/07/02 22:13] roland parent id added |
de:developer:ideas:extensions:ext-grade [2012/10/23 08:55] (current) quix0r better this word |
||
---|---|---|---|
Line 3: | Line 3: | ||
====== Erweiterung ext-grade (Entwicklerversion, kein produktiver Einsatz möglich) ====== | ====== Erweiterung ext-grade (Entwicklerversion, kein produktiver Einsatz möglich) ====== | ||
**Daten zur Erweiterung:** | **Daten zur Erweiterung:** | ||
- | * Name: **[[de:user:extensions:ext-grade|ext-grade]]** | + | * Name: **[[de:webmaster:extensions:ext-grade|ext-grade]]** |
- | * Kurzbeschreibung: **Einstufung von Mitgliedern** | + | * Kurzbeschreibung: **Accountstufen** |
+ | * Version: **v0.0.0** | ||
* Hat Adminbereich? **Ja** | * Hat Adminbereich? **Ja** | ||
* Hat Gastbereich? **Ja** | * Hat Gastbereich? **Ja** | ||
* Hat Mitgliederbereich? **Ja** | * Hat Mitgliederbereich? **Ja** | ||
* Abhängigkeiten: //Keine// | * Abhängigkeiten: //Keine// | ||
- | * Releae-Revision: //Noch nicht fertiggestellt// | + | * Release-Revision: //Noch nicht fertiggestellt// |
**Aus dem Aufgabentext herauskopiert:** | **Aus dem Aufgabentext herauskopiert:** | ||
Line 19: | Line 20: | ||
Hier nun alle Ideen aufgelistet: | Hier nun alle Ideen aufgelistet: | ||
==== Bereits implementiert (auch lokale Arbeitskopie) ==== | ==== Bereits implementiert (auch lokale Arbeitskopie) ==== | ||
+ | * Es werden mehr als drei weitere Tabellen benötigt: Einstufungsdaten (Id, Kurzbezeichnung, Rückfallsstufe bei Einlösung, Eltern-Id), Ermäßigung/Sonderbonus (Id, Kurzbezeichnung, Art [Ermäßigung,Sonderbonus], erreichte Punkteanzahl, erreichte Mailbestätigungen, Dauer ab Einlösung), Verknüpfungstabelle Einstufung<->Ermäßigung/Sonderbonus (Id, Id-Einstufung, Id-Ermäßigung/Sonderbonus), Verknüpfungstabelle Einstufung<->Mitglied (Id, Id-Einstufung, Id-Mitglied, Zeitmarke bei Ablauf der Ermäßigung/Sonderbonus) | ||
==== Noch zu implementieren ==== | ==== Noch zu implementieren ==== | ||
=== Allgemeine Ideen: === | === Allgemeine Ideen: === | ||
Line 30: | Line 32: | ||
* Der Filterkette müssen (vermutlich) nur Mitglieder-Id und Punkteanzahl übermittelt werden. | * Der Filterkette müssen (vermutlich) nur Mitglieder-Id und Punkteanzahl übermittelt werden. | ||
=== Überlegungen zum Datenbanklayout === | === Überlegungen zum Datenbanklayout === | ||
- | * Es werden mehr als drei weitere Tabellen benötigt: Einstufungsdaten (Id, Kurzbezeichnung, Rückfallsstufe bei Einlösung, Eltern-Id), Ermäßigung/Sonderbonus (Id, Kurzbezeichnung, Art [Ermäßigung,Sonderbonus], erreichte Punkteanzahl, erreichte Mailbestätigungen, Dauer ab Einlösung), Verknüpfungstabelle Einstufung<->Ermäßigung/Sonderbonus (Id, Id-Einstufung, Id-Ermäßigung/Sonderbonus), Verknüpfungstabelle Einstufung<->Mitglied (Id, Id-Einstufung, Id-Mitglied) | ||
* Dadurch sind Mehrfach-Ermäßigungen/Sonderboni an die Mitglieder pro Stufe vergebbar: keine Eingrenzung auf z.B. ein Sonderbonus für eine Stufe und eine Ermäßigung auf eine andere Einstufung, sondern flexible Möglichkeiten | * Dadurch sind Mehrfach-Ermäßigungen/Sonderboni an die Mitglieder pro Stufe vergebbar: keine Eingrenzung auf z.B. ein Sonderbonus für eine Stufe und eine Ermäßigung auf eine andere Einstufung, sondern flexible Möglichkeiten | ||
* //Weiteres?// | * //Weiteres?// | ||
Line 36: | Line 37: | ||
* //Weiteres?// | * //Weiteres?// | ||
===== Datenbankstruktur ===== | ===== Datenbankstruktur ===== | ||
+ | ==== Tabelle grade_data - Einstufungsdaten ==== | ||
+ | * **grade_id**, BIGINT - Durchlaufende Nummer zur Identifizierung der einzelnen Zeilen | ||
+ | * **grade_name**, VARCHAR - Kurzbeschreibung der Einstufung (z.B. Gold,Platin) | ||
+ | * **grade_description**, TINYTEXT - Längerer, ausführlicherer Text | ||
+ | * **grade_parent_id**, BIGINT - Verknüpfungen mit der Eltern-Einstung (um Abhängigkeiten zu konstruieren) | ||
+ | ==== Tabelle grade_cash_data - Daten für Ermäßigungen bzw. Sonderboni ==== | ||
+ | * **cash_id**, BIGINT - Durchlaufende Nummer zur Identifizierung der einzelnen Zeilen | ||
+ | * **grade_cash_name**, VARCHAR - Kurzbeschreibung der Ermäßigung bzw. Sonderbonus | ||
+ | * **grade_cash_type**, ENUM - Typ: Ermäßigung bzw. Sonderbonus | ||
+ | * **reached_points**, FLOAT - Erreichte Punkteanzahl um diese Ermäßigung bzw. Sonderbonus zu erhalten | ||
+ | * **reached_mails**, BIGINT - Erreichte Mailbestätigungen um diese Ermäßigung bzw. Sonderbonus zu erhalten | ||
+ | * **time_valid**, BIGINT - Anzahl Sekunden, wie lange diese Ermäßigung bzw. Sonderbonus gültig ist | ||
+ | ==== Tabelle grade_cash_connection - Verknüpfungstabelle "Einstufung<->Ermäßigung" ==== | ||
+ | * **connect_id**, BIGINT - Durchlaufende Nummer zur Identifizierung der einzelnen Zeilen | ||
+ | * **grade_id**, BIGINT - Verknüpfung mit der Tabelle //grade_data// | ||
+ | * **grade_cash_id**, BIGINT - Verknüpfung mit der Tabelle //grade_cash_data// | ||
+ | ==== Tabelle grade_user_connection - Verknüpfungstabelle "Einstufung<->Mitglied" ==== | ||
+ | * **connect_id**, BIGINT - Durchlaufende Nummer zur Identifizierung der einzelnen Zeilen | ||
+ | * **userid**, BIGINT - Verknüpfung mit der Tabelle //user_data// | ||
+ | * **grade_id**, BIGINT - Verknüpfung mit der Tabelle //grade_data// | ||
+ | * **grade_expired**, TIMESTAMP - Zeitmarke, bis die Einlösung gültig ist | ||
====== Sprachauswahl: ====== | ====== Sprachauswahl: ====== | ||
Diese Webseite ist auch in anderen Sprachen erhältlich: | Diese Webseite ist auch in anderen Sprachen erhältlich: | ||
[[en:developer:ideas:extensions:ext-grade|English]] | [[en:developer:ideas:extensions:ext-grade|English]] |