The purpose of this app is to help centralize the gathering of student information as well as expedite the payroll process associated with the student's earings from attending school and getting good grades.
In order to run this from Github, you will need to:
- Create a database named
legacy_children_foundation
- Use the queries in the
database-v2.0.sql
anddatabase_functions.sql
files to set up all the necessary tables and populate the needed data to allow the application to run correctly. The project is built on Postgres, so you will need to make sure to have that installed. (Postico recommended) - Clone/fork the repository
- Open up your editor of choice and run an
npm install
- Run
npm run server
in your terminal - Run
npm run client
in your terminal - The
npm run client
command should open up a new browser tab for you.
2. Once the student is successfully created (will appear in Student List on Homepage), an email will automatically be sent out to the student with their login information which is:
*email used upon LCF signup
*temporary password created by Admin when creating new student account
OR this can presented to the student in person.
Students should be reminded to check their spam folder for this email as it may be marked as spam initially.
3. Once the student logs into their account, they will be able to change their password by clicking the "Reset Password" tab and entering a new password.
(Make sure the student double checks that their new password works).
4. The Admin can change a student's information at any time by clicking the{" "} {" "} button found in the row of the student on the Admin Homepage.
5. The Admin can also change a student's status from "active" to "inactive" and vice versa via the Change Status column found on the Admin Homepage.
Students who are inactive in the database can still log into their account but will not be able to make entries.
They will be met with a form for them to fill out cataloging their activity the past two weeks.
NOTE: Students should only make an entry once they have completed the two weeks of school within that pay period.
Filling out an entry early will result in the{" "} student not being able to make another entry for that pay period.
The Admin will be able to review entries and see if students submit BEFORE they should (i.e. before they have finished school for that pay period).
If they find something wrong with an entry, the Admin can click the{" "} {" "} button in the row that needs changing.
8. If all entries look good, the Admin can click the{" "} Run Report button at the top of the page to run the calculations behind the scenes.
This will bring the Admin to a new page.
9. Here the Admin can review the calculations made by the built-in logic and figure out how much each student is getting paid.
If the numbers look wrong or an error is spotted, the Admin can click the Cancel {" "} button on the bottom to move back to the entry list and correct it.
10.Otherwise, if the final calculated number for each student looks good, the Admin can click{" "} Confirm Report to push everything to the Past Reports Page.
NOTE: Once entries are pushed to Past Reports they{" "} CANNOT be removed. This discourages tampering of past data.
If an error is indeed made and is not caught before the check is sent out, the Admin will have to reconcile the amount manually.
If students have questions on their past entries or their past paychecks, they should contact an Admin to discuss.
This will prompt the Admin to fill out a form detailing things like:
*Which student is being charged
*The name and description of the charge
*The charge amount ($)
Once these are all filled in, the Admin simply presses the{" "} Create New Charge button to add that charge to the student's account.
A record of such charges made can be found via the "Past Deductions" tab in the navbar.
Please note that these charges are automatically taken out of the student's paycheck for the next pay period.
An outstanding balance will remain if the amount of funds going to student does not fully cover the charge amount.
Otherwise they will contact an Admin. The Admin will confirm the student's credentials (name, LCF ID) and reset their password manually.
This new password can then be given to the student so that they can login and change their password to a password they will better remember.
Admins also have the ability to reset their own password if they so choose via the Reset Password tab in the navbar.
GPA | Bonus Amount ($) |
---|---|
< 2.0 | NO PAYCHECK |
2.0 - 2.4 | 0 |
2.5 - 2.9 | 20.00 |
3.0 - 3.4 | 40.00 |
3.5 - 3.9 | 60.00 |
4.0 | 80.00 |
School Year? | Amount ($) |
---|---|
- React - Javascript framework
- Node - Javascript runtime environment
- Express - Web application framework for Node.js
- Passport - Authentication middleware
- Material UI - React design framework
- Moment.js - Time formatting Javascript library
- (Postgre)SQL - Relational database management system
- Heroku - Cloud platform
- Redux + Sagas - Javascript library for managing application state
- SweetAlerts2 - Javascript library for alerts/confirmations
- SendGrid - platform for generating/sending emails
Christopher Neisen cneisen234 Clever Mukori clevereda Dalton Meyer Dalton-Meyer Kyle Hagler KyleHagler-bit
Copyright (c)
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Thank you Mary Dehne and Legacy Children's foundation for this opportunity to create a custom application. Thank you Emerging Digital Academy for equipping us with the knowledge to make this application a reality.
If you have suggestions or issues, please email us at: [email protected]