• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Frage Datenbankstruktur Multiuser + Gruppe

Seyonne

Mitglied
Hallo Zusammen,

Wie mir die SuFu zeigte wurden diese Fragen oft gestellt und beantwortet aber ich bin mir mit meiner Datenbankstruktur noch nicht im reinen.
Der Aufwand für mein Projekt ist neben meiner eigentlichen Arbeit zu groß um irgendwann zu denken: Hättest's mal lieber anders gemacht.

Ich hatte mir vor Jahren eine Firmenverwaltungsseite erstellt die ich als Singleuser nutzte.
Unter anderem:
- User (Login und File-Exchange)
- customer
- files
- offer
- order
- invoice

Jetzt bin ich dabei die Funktionen zu erweitern und zudem von Singleuser auf Multiuser zu erweitern.
Hintergrund sind Funktionen die meine Frau und mein Bruder sowie seine Angestellten nutzen würden.

Folglich gibt es nun Gruppen und Zugriffsrechte.
Jede Gruppe kann eigene Kunden, Aufträge, Rechnungen, Produkte, Zeiten, Fahrtenbuch,...... etc haben.
Nutzer sind Gruppen zugeordnet und haben auf Module Zugriffsrechte welche vom Gruppenadmin gemanaged werden.
Den einzelnen Gruppen weise ich entsprechend Zugriffsrechte zu.

Meine Überlegungen seit einer ganzen Weile:
Da es sich um sensible Daten handelt: Ist das gemsiche von Gruppen (Firmen) in einer DB nicht völliger murks?
-> Alle Kunden eine Tabelle, alle Rechnugen eine Tabelle, ... und mit foreign-keys / Zuweisungstabelle arbeiten?

Hier mal die angedachte Struktur (diverse weitere Module geplant):
1: user
2: portalcustomer (user 1:n) (Gruppe)
3: address (portalcustomer/customer n:m)
{ für diverse Zwecke
delivery (n)
invoice (n)
logbook (user n:m)
}
4: accessrights (user 1:1 / portalcustomer 1:n)
{
modul1
modul2
modul3
...
}
5: modul1 (timesheet incl. pausen wird wohl auf mehrere Tabellen gesplittet werden müssen) (user n:m)
6: modul2 (files) (user 1:n)
7: modul3 (customer) (portalcustimer n:m)
8: modul4 (logbook) (user n:m)
9: project (portalcustomer 1:n)
10:eek:ffer (project 1:n)
11:eek:rder (offer 1:n)
12:invoice (order 1:n)

Noch ne kleine Grundsatzfrage nebenbei:
Tabellen lieber ausweiten wie zB Tabelle User neben ID, Name, Email, pw, etc auch direkt Telefonnumern, fax, Konto, Schugröße oder die Daten eventuell auf weitere Tabellen aufteilen?

Aktuell habe ich bei jedem Kunden Lieferadresse und Rechnungsadresse direkt dabei...

Vielen Dank im voraus,
Marcus
 
Werbung:
Zurück
Oben