29 Commits

Author SHA1 Message Date
Carlos Lopez
dd10e56d1a Adding forgotten variables to returned dict 2020-06-22 14:56:24 -06:00
Carlos Lopez
dc5ffd29d0 Refactoring shared code 2020-06-22 14:07:57 -06:00
Carlos Lopez
e5541e4950 Enable CSV download 2020-06-22 09:24:58 -06:00
Carlos Lopez
b8d60ca944 Spreadsheet generation 2020-06-22 07:14:00 -06:00
Dan Funk
e370148380
Merge pull request #112 from sartography/rrt/dev
Rrt/dev
2020-06-08 13:18:41 -04:00
Carlos Lopez
f91fbf76b9 Capturing explicit errors from mails 2020-06-08 09:16:26 -06:00
Aaron Louie
af1c848f65 Merge branch 'rrt/dev' into rrt/testing 2020-06-07 19:57:09 -04:00
Dan Funk
213d3f3501 Merge branch 'feature/better_approval_status' into rrt/dev 2020-06-05 19:11:16 -04:00
Dan Funk
6861991d8f Allow setting the type of approvals you want back, by status.
Some very minor performance enhancements, that will add up on the Approvers page.
2020-06-05 17:49:55 -04:00
Aaron Louie
f0904e75a6 Sets main approval status after related approvals have been populated 2020-06-05 15:54:53 -04:00
Carlos Lopez
57a7c7fa54 Approve/deny fixes 2020-06-05 13:39:52 -06:00
Dan Funk
1f32a99efe Some approval statuses coming back as null., fixed 2020-06-05 14:55:49 -04:00
Carlos Lopez
16ca4fa2c0 Merge branch 'rrt/dev' into feature/mail-system 2020-06-05 12:35:05 -06:00
Dan Funk
f0db5b70fc Adding some additional logic to the approval endpoint so that we take related approvals into account when setting the status. In addtion to prevous status options, there is a new status of "AWAITING" which means there are pending approvals before this approval that still need to be approved or canceled. 2020-06-05 14:33:00 -04:00
Carlos Lopez
4fc1b51cbc Approve/denied emails 2020-06-05 12:08:31 -06:00
Carlos Lopez
4727d87adb Hooking up emails into process - start 2020-06-04 20:37:28 -06:00
Dan Funk
fed6e86f92 Trying to fix LDAP issues on production. Changing LDAP to static only methods, caching the connection and calling bind before all connection requests.
Also assuring we don't load the documents.xls file over and over again.
2020-06-04 14:59:36 -04:00
Carlos Lopez
8c36d9f367 Email calls outline 2020-06-04 11:43:10 -06:00
Dan Funk
50d2acac9c Made a very stupid mistake with LDAP connections, pushing up quickly to production. 2020-06-04 11:57:00 -04:00
Dan Funk
1324533865 Some additional cleanup - when a file is "archived" it is no longer returned for any endpoints about files, but it
is directly accessible via id, in the event some request is made for it at a later date.
2020-06-04 09:49:42 -04:00
Dan Funk
217ecfc911 When you can't delete a file, mark it as archived. Don't include archived files in new approval requests. 2020-06-03 17:34:27 -04:00
Dan Funk
c179c7781b Do not process or return cancelled approvals via the API. 2020-06-03 16:50:47 -04:00
Dan Funk
299ad4fc8b Adding more details to the csv output, and assuring we don't miss people with outstanding approvals that were cancelled. 2020-06-03 07:58:48 -04:00
Dan Funk
c7484267e1 For the main approval endpoints - we now group the approvals by study. So you get one record back for each study, but it may have other approvals along with it as "related_approvals".
We now cache the LDAP records - so we look in our own database for the record before calling out to ldap for the details when given a straight up computing id like dhf8r.

Added "date_approved" to the approval model.

And moved the approver and primary investigator into real associated models to make it easier to dump.

Fixed a problem with the validation that was causing it to throw incorrect errors on valid workflows. Getting it to behave a little more like the front end behaves, and respecting the read-only fields.  But it was mainly to do with always returning all the data with each form submission.
2020-06-02 18:17:00 -04:00
Aaron Louie
f0bd8d4f9e Adds approvals to study schema. Adds approvals endpoint 2020-05-31 22:46:32 -04:00
Carlos Lopez
26809d1470 Waiting status renaming 2020-05-31 13:35:42 -06:00
Dan Funk
dba41f4759 Ludicrously stupid launch in a refactor of the way all files work in the system at a time where I crave sleep and peace above all other things.
Added a File class, that we wrap around the FileModel so the api endpoints don't change, but File no longer holds refences to versions or dates of the file_data model, we
figure this out based on a clean database structure.

The ApprovalFile is directly related to the file_data_model - so no chance that a reviewer would review the incorrect version of a file.py

Noticed that our FileType enum called "bpmn" "bpmm", hope this doesn't screw someone up.

Workflows are directly related to the data_models that create the workflow spec it needs.  So the files should always be there.  There are no more hashes, and thus no more hash errors where it can't find the files to rebuild the workflow.py

Not much to report here, other than I broke every single test in the system at one point.  So I'm super concerned about this, and will be testing it a lot before creating the pull request.
2020-05-28 20:03:50 -04:00
Dan Funk
971d9a58e9 As we now have an approval_service.py, I moved all the business logic into this service and out of the request_approval.py script. And moved all tests for these features into a test file for the service. Will make it easier to cross reference what is happening, as everything all happens in one file.
As many of the scripts need to know the workflow, and it's down in a weird parameter, moved this so it is passed in each time.
2020-05-24 16:13:15 -04:00
Carlos Lopez
49eb4b3f98 Making working endpoints for approvals 2020-05-23 23:53:48 -06:00