# Clinic Appointments App - Github repo: **[clinic-appointment-app ](https://github.com/alfarih31/clinic-appointment-app)** ## ERD ```plantuml entity User { ID: bigint <<PK, AI>> -- fullName: varchar(255) createdAt: datetime updatedAt: datetime } entity UserHasRole { ID: bigint <<PK>> -- userID: bigint <<FK>> roleID: smallint <<FK>> createdAt: datetime } entity Role { ID: smallint <<PK>> -- name: varchar(255) createdAt: datetime updatedAt: datetime } entity UserAuth { ID: bigint <<PK, AI>> -- userID: bigint <<FK>> username: varchar(128) <<UNIQUE>> credential: varchar(255) createdAt: datetime updatedAt: datetime } entity Clinic { ID: bigint <<PK, AI>> -- slug: varchar(255) <<UNIQUE>> name: varchar(255) createdAt: datetime updatedAt: datetime } entity ClinicAdmin { ID: bigint <<PK, AI>> -- userID: bigint <<FK>> clinicID: bigint <<FK>> createdAt: datetime updatedAt: datetime } entity Patient { ID: bigint <<PK, AI>> -- userID: bigint <<FK>> clinicID: bigint <<FK>> createdAt: datetime updatedAt: datetime } entity Appointment { ID: bigint <<PK, AI>> -- queue: smallint patientID: bigint statusID: smallint promisedStartDate: datetime estimatedEndDate: datetime promisedDuration: smallint createdAt: datetime updatedAt: datetime } note right enum statusID { QUEUED: 1 FULFILLED: 2 COMPLETED: 3 CANCELLED: 4 } end note User "ID"||--||"userID" UserAuth User "ID"||--|{"userID" UserHasRole Role "ID"||--|{"roleID" UserHasRole User "ID" ||--|{ "userID" Patient User "ID" ||--|{ "userID" ClinicAdmin Clinic "ID" ||--|{ "clinicID" ClinicAdmin Clinic "ID" ||--|{ "clinicID" Patient Patient "ID"||--|{ "pateintID" Appointment ```
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up