-
-
Notifications
You must be signed in to change notification settings - Fork 23
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
API requirements #13
Comments
Tentative schemaFrom the Figma file, it seems that we would need these models: Opportunities
Project
Events (Meeting Time)
Role
Experience
Supervisory Level
SDG
Technologies
User (Seekers)
User (Posters)
will have permission levels based on projects, for ex, this account can make posts for project X and Y but not Z Admin
*Project image will most likely be a path string that leads to where we store the site's assets in our frontend. Items unsure where to add to schemaprogram areas (?) Note for developer: To effectively query the API from this database structure, I have included project (or more accurately project id) as a part of the Meeting Times model. My thought is that this will allow us to fetch, by say, getting the project then getting the meeting times by id. If an alternative way to model this (and the schema in general), please let me know! Old details## Additional questions to discuss with team
|
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Code for https://dbdiagram.io/d // Creating tables
Table opportunities {
id int [pk, increment] // auto-increment
poster int [ref: - user_poster.id]
job_title varchar
project int [ref: - project.id]
max_commitment int [note: 'hours per week']
min_commitment int [note: 'hours per week']
max_duration int [note: 'days total']
min_duration int [note: 'days total']
positions_available int
description varchar
posted_date datetime [default: `now()`]
role int [ref: - role.id]
experience int [ref: - experience.id, note: 'experience level']
required_tech int [ref: < technologies.id]
preferred_tech int [ref: < technologies.id]
}
Table project {
id int [pk, increment]
name varchar
leads int // [ref: < user.id]
description varchar
image_path varchar [note: 'image path']
slack_url varchar [note: 'url string']
is_COP boolean // can this also be a separate class, that inherits from project?
program_area int [ref: < program_area.id]
supervisory_level supervisory_level
sdg int [ref: < sdg.id]
}
Table meetings {
day_of_week weekdays
start_time datetime
end_time datetime
team_name string [note: 'ex: developer']
project int [ref: - project.id]
timezone timezone
must_roles int [ref: < role.id]
should_roles int [ref: < role.id]
could_roles int [ref: < role.id]
}
Table role {
id int [pk, increment]
name varchar
description varchar
}
Table experience {
id int [pk, increment]
name varchar
description varchar
}
// note, will expand in the future
Table sdg {
id int [pk, increment]
}
Table technologies {
id int [pk, increment]
name varchar
web_link url
image_path path
}
Table user_seeker {
id int [pk, increment]
email varchar [note: 'email @string']
slack varchar [note: 'slack @string']
availability varchar // unsure
role int [ref: - role.id]
timezone timezone
}
// Should this be combined with seekers? Or a separate class made by inheritance?
Table user_poster {
id int [pk, increment]
email varchar [note: 'email @string']
slack varchar [note: 'slack @string']
project_permissions int [ref: < project.id]
}
Table program_area {
id int [pk, increment]
}
Enum supervisory_level {
1
2
3
}
Enum weekdays {
sunday
monday
tuesday
wednesday
thursday
friday
saturday
}
Enum timezone {
PST
CST
EST
etc
} |
This comment has been minimized.
This comment has been minimized.
Project Tableprojectname : Char/String Project Status Records TableprojectId Project and Program Area StatusActive Partners Tablename Partner Project Join TableMany to many - some partners help with several projects and projects do have multiple partners Program Area Tablename: names for Program Areas are |
This comment was marked as resolved.
This comment was marked as resolved.
User TablenameFirst: String DesiredRoles user’s desired contributor roles at HfLA (structured and comes from the CivicTechJobs data) - Talk to Ava about it. CurrentSkills user’s current skills they want to use as a volunteer User Status TableId, name, descriptionString Brigade/GMT Time Bucket TableBrigadeId, name, startTime, endTime Association table (join table)1 record for every permission granted example Association History TableAll records that have dateEnded from the Association table will be moved here 1:12 Pacific Time Permissions tablesee notes from VRMS document Practice Area Table (bonnie to add all practice areas)UX Referrer Tablename Example content: Referrer Category TableBootcamp |
Checkins TableJoinIDEvent connects to associated event object EventsEventName event’s title FAQ TableID, Q, A, toolTipName, dateAdded, lastUpdated FAQ viewed TableFAQID, Customer, Date Review the vrms 0.4 schema Location TableiD, name, address |
Roles TableroleId Role and Community of Practice Join Tablerole id users of role data
|
Not Included from VRMS: User table:V3 v4 Project Tablev3 v4 Recurring EventsV3 v4 Eventv3 v4 checkinv3 Project Membershipv3 v4 |
This comment has been minimized.
This comment has been minimized.
Migrated to: hackforla/peopledepot#2 (comment) |
Closed because completed. Further work has been moved to hackforla/peopledepot#2 |
Overview
We need to determine what data we will require and who will consume it so that we can get signoff from stakeholders and setup the wireframing team for success.
Action Items
Resources/Instructions
Current tentative schema
The text was updated successfully, but these errors were encountered: