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

Enhancement: Add Education Section to Student Application Endpoint Response #92

Conversation

klondikemarlen
Copy link
Contributor

@klondikemarlen klondikemarlen commented Aug 11, 2023

Relates to icefoganalytics/student-financial-aid#2
Fixes icefoganalytics#24

Context

As part of the "view submitted applications and their current status" project, this task covers returning the education data.

Data Format

{
  "id": "some-application-id",
  "education": {
     "educationHistory": [{ "leftHighSchool": "2023/02", "school": 310 }]
   },
}

Testing Instructions

  1. Boot the sfa-client back-end via API_PORT=3100 db up
  2. Boot the student-financial-aid back-end via
cd src/api
npm run start
  1. Boot the student-financial-aid front-end via
cd src/web
npm run start
  1. Log in to the app at http://localhost:8080/
  2. Check for the education history in the data blob returned by http://localhost:3000/api/portal/students/250/applications/4299. It will be an empty blob.
  3. Check for education history in http://localhost:3000/api/portal/students/1/applications/2198. It will have some school and date info.
  4. TODO: add more examples

Why? It helps encourage the one model one file approach.
This gives us access tonne of values techniques, like shared param extractors and dependent object lookups.
Next I need to return the study area and program details.
It seems that mostly boolean values are required.
Why? the program table appears to basically be a constant.
A person might not have a sex or language so these need to be left joins to avoid excluding valid person data.
Why? To match the table name. Yeah its redundant, but I think simplicity is best for now.
I haven't been adding all the relationships, just the ones I've used so far.
Why? To make room for actual funding requests section.
Why? So I can generate the massive ERD that this project uses.
Why? To make use of the database schema restore in db/initializers/setup.sql.
I was originally hoping to move everything to the default dbo schema, but this seems like it will be too big a problem to solve for now.

Instead I'm opting to use a database restore, then truncate all tables for test.
Why? Its much easier to work with an manipulate this way.
This seems like something that will need to be backed by the education table at some point?
@klondikemarlen klondikemarlen force-pushed the issue-24/add-education-section-to-student-application-endpoint-response branch from 2f596f6 to 3249f4f Compare August 11, 2023 18:49
@klondikemarlen
Copy link
Contributor Author

I created this against the wrong repo, sorry!! Closing in favour of icefoganalytics#25.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add Education Section to Student Application Endpoint Response
1 participant