icssc / ZotMeet

Coordinating meetings and so much more
https://zotmeet.com/
MIT License
6 stars 0 forks source link

ER Diagram #17

Closed MinhxNguyen7 closed 6 months ago

MinhxNguyen7 commented 7 months ago

Description

Draw ER diagram for database including User, Meeting, and Group. Add any other entities necessary.

HoussinSa commented 7 months ago
Screen Shot 2024-01-25 at 3 34 31 PM
MinhxNguyen7 commented 7 months ago

That's missing the per-day availability.

You can use two tables to represent (a user's) general availability and (a user-meeting's) specific availability. You can also do the inheritance thing, which is elegant, but a little more complicated. Prisma might have its own implementation of inheritence as well.

HoussinSa commented 7 months ago

Screen Shot 2024-02-04 at 5 28 27 PM

MinhxNguyen7 commented 7 months ago

I didn't realize this at the start, or otherwise I would've told you not to draw and implement join tables. Prisma has implicit many-to-many relations. I only realized this when I looked at your Primsa schema and saw that it looked significantly more complicated than I expected. That's my fault.

Comments on the properties:

  1. We can leave out the notifications and agenda items for now.
  2. Maybe it's my lack of sleep, but I can't tell how you're modeling the availability date range of a meeting.

I believe that means that you only need to model User, Group, Session, Meeting, GeneralAvailability, MeetingSpecificAvailability. I think that using PrismaBuilder would simplify your life significantly. You can just specify the models in the GUI, then it makes the schama and visualization for you.

I am very disinclined to tell you to redo so much work and hold up this feature, but the additional complexity would significantly slow us down in the near future. If you'd rather not continue to be stuck on this (which is understandable), I can pick it up, and I can assign you a different task.

HoussinSa commented 7 months ago

@MinhxNguyen7 I really dont mind if you'd like me to redo the work or if you'd like me to work on another task. I'll leave it up to you but I have no preference! Let me know!

MinhxNguyen7 commented 7 months ago

Well, you should mind. I wasted your time.

But I'll leave it with you if you don't mind. It'd be good if you could throw the schema together soon. It shouldn't be too much given PrismaBuilder

HoussinSa commented 7 months ago

@MinhxNguyen7 Yea no worries, its a part of the process and yea Iemme put together a new schema using PrismaBuilder

HoussinSa commented 7 months ago
Screen Shot 2024-02-08 at 4 28 32 PM