hackforla / hackforla/peopledepot

Tables to add for VRMS

Open
#25 2 comments 0 reactions 0 assignees View on GitHub
complexity: small dependency p-feature: API private endpoint PII: FALSE role: product s: VRMS size: 1pt
Dominant language
Python
Stars
14
Forks
37
Avg merge
9d 15h
Merged PRs (30d)
5

Description

### Dependency
- [ ] We are waiting for VRMS to give us a list based on their current features. Had meeting with them on 2024-08-15, check back in with them on 2024-08-29. See #417 and #377 for updates.

### Overview
As contributors helping build to out the backend, we need a list of tables from which to create new issue for and then to add those tables to the project. In this issue, we decide on the list of tables that VRMS needs to have to function.

#### Update
Since we're now using the spreadsheet directly to create all the issues, we don't need to use this for that purpose. We can still **use this to prioritize what tables we should work on**.

### Action Items

- [ ] Reference VRMS v3 models and pick out relevant ERD models to implement
- [ ] Reference VRMS v4 models and pick out relevant ERD models to implement
- [ ] Pick out what's required immediately for functionality and what can wait for a later Phase 2 (strikeout tables that are not immediate needs
- [ ] [Create issues](https://github.com/hackforla/peopledepot/wiki/Create-Table-issues-data-gathering-workflow) and link to the items (**do not** click items to create issues, create the issues using the [Create Table form](https://github.com/hackforla/peopledepot/issues/new?assignees=&labels=feature%3A+table+creation%2Crole%3A+back+end%2Csize%3A+2pt&template=create-table-issue-form.yml&title=Create+Table%3A+%5Bname+of+table%5D) and then add the issue # after the item text)
- [ ] Add the issue links to the [spreadsheet](https://docs.google.com/spreadsheets/d/1x_zZ8JLS2hO-zG0jUocOJmX16jh-DF5dccrd_OEGNZ0/edit#gid=1228509670) under the "Has Issue" column
- [ ] Implement the tables and check off the boxes

### Tables we need

italicized items are tables with initial data

- [x] user #15
- [x] **role** #38
- [x] _user_status_type_ #35
- [x] practice_area #63
- [x] user_availability
- [x] day_of_week #60
- [x] user_check - replaces term of use consent
- [x] _check_type_ #59
- [x] referrer
- [x] referrer_type #69
- [x] project #16
- [x] _leadership_type_ #42
- [x] **technology** #39
- [x] project_technology_xref #40
- [x] **project_url** #41
- [x] **location** #44
- [x] _program_area_ #43
- [x] project_program_area_xref #45
- [x] project_program_area_status #46
- [x] recurring-event #14
- [x] _event_type_ #50
- [x] brigade #56
- [x] _frequency_ #53
- [x] _day_of_week_ #60
- [x] **event** #47
- [x] event_history #49 - for old events, rather than delete
- [x] **permission** #22
- [x] _permission_type_ #24
- [x] **role** #38
- [ ] permission_history - for old permisisons, rather than delete #37
- [ ] **check_in** #58
- [ ] **event** #47

### Visual list

#### Mindmap

click to expand

![mindmap](https://tinyurl.com/2s5ntcvr)

#### Source to generate mindmap on [live server](https://tinyurl.com/mwtfdmrk)

click to expand

```
@startmindmap

title Tables for VRMS

header
Referencing Tables for VRMS from https://github.com/hackforla/VRMS/tree/development/backend/models
and https://github.com/hackforla/VRMS/tree/development/backend-mvp-04/models
endheader

legend left
|= |= Type |
| | Implemented |
| | Predefined data |
| | Required |

|= |= Type |
| Borderless | Phase 3? |
| Dotted border | Phase 2 |
endlegend

node {
LineStyle 3.0;3.0
}
mindmapDiagram {
.done {
BackgroundColor lightgreen
LineStyle 1;0
}
.req {
BackgroundColor orange
LineStyle 1;0
}
.predefined {
BackgroundColor lightblue
LineStyle 1;0
}
}
rootNode {
HorizontalAlignment center
MaximumWidth 200
LineStyle 10;0
}

* Tables for VRMS
** user <>
*** role <>
*** user_status_type <>
***_ practice_area
***_ user_availability
****_ day_of_week
*** user_check - replaces term of use consent <>
**** check_type <>
***_ referrer
****_ referrer_category <>
** project <>
*** leadership_type <>
*** technology <>
**** project_technology_xref <>
*** project_url <>
*** location <>
*** program_area <>
**** project_program_area_xref
**** project_program_area_status
** recurring-event <>
*** event_type <>
*** brigade
*** frequency <>
*** event <>
****_ event_history - for old events, rather than delete
** permission <>
*** permission_type <>
*** role <>
***_ permission_history - for old permisisons, rather than delete
** check_in <>
*** event <>
```

### Resources/Instructions
- [VRMS v4 data models](https://github.com/hackforla/VRMS/tree/development/backend-mvp-04/models)
- [VRMS v3 data models](https://github.com/hackforla/VRMS/tree/development/backend-mvp-04/models)
- [PeopleDepot ERD](https://lucid.app/lucidchart/ac2f3e81-00d2-4257-b1fc-266d7f0a4cbe/view?page=0_0#)
- [Guide to create new table issues](https://github.com/hackforla/peopledepot/wiki/Create-Table-issues-data-gathering-workflow)
- ["Create Table" Issue Form](https://github.com/hackforla/peopledepot/issues/new?assignees=&labels=feature%3A+table+creation%2Crole%3A+back+end%2Csize%3A+2pt&template=create-table-issue-form.yml&title=Create+Table%3A+%5Bname+of+table%5D)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.