mirror of
https://github.com/aaronpo97/the-biergarten-app.git
synced 2026-10-14 17:54:42 +00:00
45 lines
1.2 KiB
Plaintext
45 lines
1.2 KiB
Plaintext
---
|
|
config:
|
|
layout: elk
|
|
---
|
|
|
|
erDiagram
|
|
Avatar }o--|| Photo : "uses photo"
|
|
Photo ||--o{ BreweryPhoto : "used in"
|
|
Photo ||--o{ BeerPhoto : "used in"
|
|
|
|
%% Cross-schema: defined in full in identity.mmd / brewery.mmd / beer.mmd
|
|
Profile ||--o{ Avatar : "has avatar history"
|
|
User ||--o{ Photo : "uploads"
|
|
Brewery ||--o{ BreweryPhoto : "has photos"
|
|
Beer ||--o{ BeerPhoto : "has photos"
|
|
|
|
Photo {
|
|
uniqueidentifier PhotoID PK
|
|
nvarchar Hyperlink "nullable"
|
|
uniqueidentifier UploadedByID FK
|
|
datetime UploadedAt
|
|
}
|
|
|
|
Avatar {
|
|
uniqueidentifier UserAvatarID PK
|
|
uniqueidentifier UserProfileID FK
|
|
uniqueidentifier PhotoID FK
|
|
datetime2 ValidFrom
|
|
datetime2 ValidTo "nullable; at most one row per UserProfileID has ValidTo IS NULL (active avatar)"
|
|
}
|
|
|
|
BreweryPhoto {
|
|
uniqueidentifier BreweryPostPhotoID PK
|
|
uniqueidentifier BreweryPostID FK
|
|
uniqueidentifier PhotoID FK
|
|
datetime LinkedAt
|
|
}
|
|
|
|
BeerPhoto {
|
|
uniqueidentifier BeerPostPhotoID PK
|
|
uniqueidentifier BeerPostID FK
|
|
uniqueidentifier PhotoID FK
|
|
datetime LinkedAt
|
|
}
|