Multi-file download endpoint (book component)
We need a new REST endpoint for downloading files associated with a book component, that
- receives the book component id & an array of file ids as input
- finds those files via the
BookComponentFile
table - returns a zip archive containing the files with those ids
- the zip archive should be named with the book component's BCMS id, book component version and timestamp e.g.
bcms12345-v1-timestamp.zip
- its files should be organized in folders that correspond to the sections these files exist (eg. "supplementary") and should include a folder for file version . e.g
/source/v1/introduction.docx
,/source/v2/introduction.docx
,/source/v3/introduction.docx
, etc.
The endpoint should have a simple unit test that we can run, as the UI for this doesn't exist (yet).
Some of the code here should be shared with #591 (closed), so read that too before you begin this one.