A project serving Community Education Partnerships - https://www.cep.ngo/ . This Rails application presents an admin interface for CEP to manage their volunteers and students. And provides a GraphQL backend for https://github.com/rubyforgood/inkind-volunteer .
As an admin, I need to assign volunteers to my admins ("Staff" members in the UI).
Things to Consider
This will have fancier mocks/autocomplete functionality later. But we have to get the basic functionality up first. So for now, a dropdown of AVAILABLE volunteer names will suffice.
One admin/staff member has_many volunteers that report to them.
Admin = Staff.
At any given time, a volunteer be assigned to only ONE staff member. But, they might have a volunteer for 1-2 years, then another for one for 7 years, etc. We likely need a new join table with effective dates. Perhaps managed_users with a manager_id (User), volunteer_id (User), start_date (date), end_date (date). Just a suggestion...
Possible visual representation (NOT A FINAL MOCKUP). This one is volunteer to student:
This story is about admin to volunteer though:
^ Again - do not labor over styles, because this is not how this will ultimately look. Think about functionality and data first :).
Criteria for Completion
On the Admin Edit page:
[ ] An admin can choose a volunteer from a drop down to assign them to that staff member.
[ ] Only available volunteers show up in the dropdown (volunteers that are NOT already assigned on the current date).
[ ] Saving on the Admin Edit page creates/updates join records that associate staff to volunteers.
Summary
As an admin, I need to assign volunteers to my admins ("Staff" members in the UI).
Things to Consider
This will have fancier mocks/autocomplete functionality later. But we have to get the basic functionality up first. So for now, a dropdown of AVAILABLE volunteer names will suffice.
One admin/staff member has_many volunteers that report to them. Admin = Staff. At any given time, a volunteer be assigned to only ONE staff member. But, they might have a volunteer for 1-2 years, then another for one for 7 years, etc. We likely need a new join table with effective dates. Perhaps
managed_users
with amanager_id
(User),volunteer_id
(User),start_date
(date),end_date
(date). Just a suggestion...Possible visual representation (NOT A FINAL MOCKUP). This one is volunteer to student:
This story is about admin to volunteer though:
^ Again - do not labor over styles, because this is not how this will ultimately look. Think about functionality and data first :).
Criteria for Completion
On the Admin Edit page: