Skip to content
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

Create Table: user_availability #79

Open
9 of 15 tasks
fyliu opened this issue Sep 12, 2022 · 4 comments
Open
9 of 15 tasks

Create Table: user_availability #79

fyliu opened this issue Sep 12, 2022 · 4 comments
Labels
complexity: missing dependency Issue has dependencies feature: table creation needs FK text see issue #150 for explanation, temporary label delete when done p-feature: user PII: TRUE Table or function has or uses Personally Identifiable Information (PII) role: db architect s: CTJ stakeholder: Civic Tech Jobs size: 2pt Can be done in 7-12 hours

Comments

@fyliu
Copy link
Member

fyliu commented Sep 12, 2022

Dependency

Overview

We need to create the user_availability table so that we can update a shared data store across hackforla.org, vrms, civictechjobs, and tables (onboarding) project.

Details

A table and a model are the same thing

Action Items

  • identify and document table description (see spreadsheet under Resources)
    • if not, reach out to PD leads
  • compare and check off the data fields (below) against the ERD. Note any fields in the ERD that's missing from the list. (see Resources)
  • compare the check off associated tables (below) against the ERD. Note any associated tables in the ERD that's missing from the list (see Resources)
  • create a single model in Django (defining schema)
  • write a test for the relationships this model will have with other models (e.g., creating a user and assigning them a set of permissions on a project).
  • write an API end point
  • write API unit tests
  • document the endpoint

Resources/Instructions

Description

Users availability to attend team meetings

Data Fields

  1. Copied from spreadsheet and checked off according to ERD. (unchecked items indicate a mismatch between ERD and spreadsheet, which requires a review)
    • (PK) id - int
    • (FK) user_id - int
    • day_of_week - enum
    • start - time
    • duration - int
  2. In ERD only (having items here indicates a mismatch, which requires a review)
    • None

Associated Tables

  1. Copied from spreadsheet and checked off according to ERD. (unchecked items indicate a mismatch between ERD and spreadsheet, which requires a review)

    • user (many-to-one)
  2. In ERD only (having items here indicates a mismatch, which requires a review)

    • None
@fyliu
Copy link
Member Author

fyliu commented Sep 12, 2022

Problem:

  1. Missing data fields in spreadsheet
    1. I added the 5 fields to the spreadsheet

@fyliu fyliu added good first issue Good for newcomers and removed good first issue Good for newcomers labels Sep 20, 2022
@fyliu fyliu added this to the All tables added milestone Sep 25, 2022
@joshuayhwu
Copy link


class User_Availability(AbstractBaseModel):
	"""
	user availability
	"""
	id = models.IntegerField(primary_key=True)
	user_int = models.ForeignKey(User, on_delete=models.CASCADE)
	day_int = models.ForeignKey(Day_Of_Week, on_delete=models.CASCADE)
	time = models.timeField()
	duration = models.IntegerField()

	def __str__(self): 
		return f"{self.name}" 

@ExperimentsInHonesty ExperimentsInHonesty added the PII: TRUE Table or function has or uses Personally Identifiable Information (PII) label May 4, 2023
@fyliu
Copy link
Member Author

fyliu commented May 23, 2023

We should wait until we decide what to do about day_of_week table. We could be looking at deleting it and replacing that with an emumeration type field here.

@Neecolaa Neecolaa added the dependency Issue has dependencies label Sep 22, 2023
@Neecolaa
Copy link
Member

The data fields have been updated for this table. However, we're making this table dependent on the creation of the event table. The event table is higher priority, and figuring out how we're dealing with then days of the week in events will show us how we'll deal with them in this table.

@shmonks shmonks moved this to Ice Box in P: PD: Project Board Jun 7, 2024
@ExperimentsInHonesty ExperimentsInHonesty added the needs FK text see issue #150 for explanation, temporary label delete when done label Feb 10, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
complexity: missing dependency Issue has dependencies feature: table creation needs FK text see issue #150 for explanation, temporary label delete when done p-feature: user PII: TRUE Table or function has or uses Personally Identifiable Information (PII) role: db architect s: CTJ stakeholder: Civic Tech Jobs size: 2pt Can be done in 7-12 hours
Projects
Status: 🧊Ice Box
Development

No branches or pull requests

4 participants