Create new report with existing committee data (add report button on overview page)
When a committee exists, we want staff to find the committee and go to the committee page and create the committee from that point so that the information is attached to an existing entity record and existing committee record. Also attaching it to the existing fund if there is already a fund for that election year.
When the user clicks the action button to create a new report for an existing committee we want to:
Pass the committee to the form. Do we trust this coming from the URL? It's staff only so it's okay.
We decided the route is:
- POST admin/committee/12345/report
Open the report form with all of the prior data about the committee (everything except the contributions) to be pre-populated with the information from the most recent report. We don't know if this might be an older report or not so it's possible that the pre-populated information is more current. Staff will just have to review for correctness.
Add the committee id to the report data or just hang on to it. Depends on the form of the POST noted above and how it will be sent.
Tasks
-
Add a button on the committee info page to add a new report for the given committee. The button routes to the new report form with the addition of the committee_id as a slug or parameter. -
Modify the report so that when it receives a committee id as a parameter, it retrieves all the committee information from the backend and fills out the report object. See nots above on where the committee id is stored. -
Modify the submission backend so that when a new report is received with an existing committee id, that committee is used rather than creating a new entity and committee. If this report was submitted after all previous reports for the same committee, update the committee info and committee contact so that this report is the source of the information.
Notes
Other than handling being sent a committee id, all the rest of the form processing about creating a fund if necessary, etc should still work. If the committee id does not exist, the submit should fail.