External:
Internal:
User Table (NoSQL):
User ID
Prices Table (NoSQL):
Parked Cars Table (SQL):
UserID(PK)
LicensePlate(VARCHAR)
UserID(VARCHAR)
ParkingExpiry(DateTime)
Type(CHAR)
Client sends request
Serverside tries to pay through third party platform
Updates DB if pay goes through
Send response to let user know if payment was succesful
Clientside -> Serverside -> Calculate Payment -> Third party payment -> DB (if payment sucessful) -> Clientside
/calculatePrice -> hours * rate
Explain any trade offs you have made and why you made certain tech choices...
Too many requests at a time
Too many writes to DB at a time
We can check if the stall is already taken.
Right now we're not checking because its very likely that the user needs to park in the stall BEFORE paying therefore the user will probably not pay for a stall thats already taken.