Family Promise helps local communities coordinate their compassion to address the root causes of family homelessness. They tap existing local resources to empower families towards economic stability. Families come to them in crisis; they help them rebuild their lives with new skills and ongoing support. They address the issue holistically, providing prevention services before families reach a crisis, shelter and case management when they become homeless, and stabilization programs once they have secured housing to ensure they remain independent.
Case Managers for Family Promise do not have a standard process to manage families. Cases are managed manually through spreadsheets and other documentation.
Family Promise needs a case management system for case managers to access data in the case database across FP products. This system will help them access Create a case management system that is private to Family Promise. The case management system must allow the case manager to view the following attributes within the object:
Phase 1 Attributes:
- Easy-to-use interface
- Household Information (Family Data = immediate family members)
- Head of Household (main point of contact)
- Store Documentation
- Applications
- Identification
- Any other required documentation noted via the stakeholder
- Capture & Save Notes
- Postgres - DB
- Springboot - API
- Review the Existing Schema & Design
- Creation and Migration of the Database
- Case Creation
- Input from the intake form
- Create a Table and Crud Workflow
- S3 Documentation
- Separate each section into end points
- Implement Auth0
- Export of case notes
- Export of intake information into form
- FCMS Enrollment
- Program Selection
- Time Reporting
- Time Tracking
- Notes Export
- Export for timestamps and total time
- In Export, we will want the the program that they are enrolled in
- Export for timestamps and total time
- Calendar Integrations - Google Calendar Integration - 10K hits Something to review and discuss with Chris
awsaccesskey
- key to access aws instance local/deployedawssecretkey
- authorization token for aws instance (eg. SUPERSECRET)dynamodburl
- connection string for dynamo
See application-dev.properties for example values
To add pagination to your service and controller, follow these steps:
- Add a method named getAllExamplesPaginated that takes in two arguments: offset and limit.
- Implement the logic for fetching a paginated list of Example objects from your data source (e.g. database).
Example:
/**
* @param offset page index to return results from.
* @param limit number of results to include per page.
* @return returns a paginated list of Example objects.
*/
public Page<Example> getAllExamplesPaginated(int offset, int limit) {
return exampleRepository.findAll(PageRequest.of(offset, limit));
}
- Add a method named getAllExamplesPaginated that takes in two @PathVariable arguments: offset and limit.
- Call the getAllExamplesPaginated method from your service class, passing in the offset and limit arguments.
- Return the paginated results as a JSON response to the client.
Example:
/**
* @param offset page index to return results from.
* @param limit number of results to include per page.
* @return returns a paginated list of Example objects.
*/
@GetMapping("{offset}/{limit}")
public ResponseEntity<Page<Example>> getAllExamplePaginated(@PathVariable int offset, @PathVariable int limit) {
return ResponseEntity.ok(exampleService.getAllExamplesPaginated(offset, limit));
}