Commit Graph

1132 Commits

Author SHA1 Message Date
mike cullerton b3fd72de8b Remove hsr_number from Study Schema 2021-08-16 12:51:48 -04:00
mike cullerton 1f82143aea Remove HSR Number from models 2021-08-16 12:50:09 -04:00
mike cullerton 46d7b13326 Start to remove HSR Number 2021-08-16 12:09:02 -04:00
nilez 0a232dace6 assertEquals -> assertEqual 2021-08-16 10:25:41 -04:00
nilez f8dd4c3eb9 Check Study Associates Endpoint 2021-08-16 09:32:02 -04:00
mike cullerton bd4a9cced3 We no longer use HSRNUMBER to automatically set Study Status to `Open for Enrollment` 2021-08-13 12:06:27 -04:00
nilez 4a2581e938 get studies raises and error when invalid studies are the only studies associated with the user 2021-08-12 14:03:44 -04:00
nilez 7027392a1b Merge remote-tracking branch 'origin/bug/missing_pi_name_246' into bug/missing_pi_name_246
# Conflicts:
#	crc/services/workflow_service.py
#	tests/study/test_study_associate_script.py
2021-08-12 13:01:41 -04:00
nilez e32c1db4c8 Merge remote-tracking branch 'origin/dev' into bug/missing_pi_name_246
# Conflicts:
#	crc/models/study.py
#	crc/services/study_service.py
#	crc/services/workflow_service.py
#	tests/study/test_study_associate_script.py
2021-08-12 12:59:15 -04:00
Dan 000de03733 Just a quick hot fix so that when can still report errors back to the UI even when the task_data can't be serialized, which can happen when functions are defined. 2021-08-12 12:49:19 -04:00
nilez 41e27cb454 Merge remote-tracking branch 'origin/dev' into bug/missing_pi_name_246
# Conflicts:
#	crc/models/study.py
#	crc/services/study_service.py
#	crc/services/workflow_service.py
#	tests/study/test_study_associate_script.py
2021-08-12 12:39:04 -04:00
nilez d20b68e483 Fixed Deprecation Warnings in Test Files 2021-08-12 12:33:27 -04:00
nilez 2732071585 Merge branch 'dev' into bug/missing_pi_name_246 2021-08-12 12:07:25 -04:00
Dan 40727c7ce6 avoid erroring out when unable to calculate a value expression as a part of finding a default value. 2021-08-12 11:35:05 -04:00
Dan Funk adb1b74822
Merge pull request #352 from sartography/post-process-empty-field-408
Post process empty field #408
2021-08-12 10:53:26 -04:00
mike cullerton d07bac27ca Fix for hidden file data field.
We were processing a field that didn't have a value.
Ticket 408
2021-08-11 16:43:50 -04:00
Dan 318cd34f81 bouncing to fix a bug in SpiffWorkflow that was holding outo outdated data deed within the python_script_engine.
This caused validation to fail for valid repeat sections, so including a fix to allow that validation to continue.
2021-08-11 14:21:23 -04:00
Dan 848c2e622f Always use a schema to define what is being returned, it enforces consistency of the API and internally we can depend on well defined objects. 2021-08-10 16:16:08 -04:00
Dan 913c12c02d Merge branch 'dev' into bug/pi_name_missing_246 2021-08-10 15:06:52 -04:00
Kelly McDonald 960d302c03 Finish #367 - Make sure that we only use a primary_id if it is in the workflow that we are currently working on - otherwise it is a library and might have its own primary id. 2021-08-10 09:15:38 -04:00
Kelly McDonald 6e1fedb704 Add tests for libraries, remove an API endpoint that didn't make sense after recent changes and remove some commented out sections that were not needed after some decisions about the api endpoints were made 2021-08-03 10:02:22 -04:00
Kelly McDonald 41ad7935f8 Merge branch 'dev' into 367-Call-Activity
# Conflicts:
#	Pipfile.lock
2021-07-29 09:28:21 -04:00
Kelly McDonald 217e61eed3 next_task returns the next available task, except when the task is completed when it returns the EndEvent -
The problem was that it was returning the first EndEvent it found, not the last one. This caused a problem when we had a CallActivity which has its own EndEvent.

Fixes #399
2021-07-27 09:19:08 -04:00
Kelly McDonald b857fddbad commit in intermediate changes to work on a bug 2021-07-26 13:00:11 -04:00
Dan Funk 25e00823a7
Merge pull request #342 from sartography/enum-file-data-375
Enum file data #375
2021-07-23 13:47:57 -04:00
mike cullerton 4c8a86f9bf Fixed bug where processing file data only worked for enums. 2021-07-23 11:24:17 -04:00
Dan 7f5c7417d8 Print out some additional debugging information in the email script so we can tell what is happening and where. 2021-07-22 16:02:08 -04:00
NWalker4483 38b8c7fcdf Fixed email_cc test 2021-07-22 15:08:28 -04:00
NWalker4483 b94d49076d Fixed Associate API Endpoint description 2021-07-22 14:36:00 -04:00
NWalker4483 90425ebbb3 Merge branch 'bug/missing_pi_name_246' of https://github.com/sartography/cr-connect-workflow into bug/missing_pi_name_246 2021-07-22 14:09:34 -04:00
NWalker4483 a73d1794eb Fixed Associate API Endpoint description 2021-07-22 14:09:24 -04:00
Dan Funk 61504664d4
Merge pull request #346 from sartography/bug/346_timer_fails_to_send_email
fixes #346, allow emails to fire in scheduled events
2021-07-22 13:40:12 -04:00
Dan 2009a794ea We were depending on an active http request existing in order to fire emails, using that request to determine the front end url. We have the frontend url in our config file, and we don't have a request object when running scheduled tasks, so I just use our configuration setting instead. 2021-07-22 13:25:06 -04:00
NWalker4483 1cfb7f96fa Missing uid declaration in study service corrected 2021-07-22 11:28:11 -04:00
mike cullerton 8df1145471 Modify the LDAP service to only use lowercase UIDs.
UVA always returns the UID as lowercase.
This caused a postgres unique value problem for us.
2021-07-22 10:46:09 -04:00
mike cullerton 428802b9d0 Modify LDAP script so that it doesn't raise an error when we don't get a record back from LDAP.
We now return an empty dictionary
2021-07-22 10:44:41 -04:00
Kelly McDonald 48516e4009 Parent side working 2021-07-22 10:23:05 -04:00
Kelly McDonald 2455495457 got library side working - still need to have parent working 2021-07-22 10:20:34 -04:00
NWalker4483 3906580604 Merges getStudyAssociates() endpoint 2021-07-20 14:25:01 -04:00
NWalker4483 a263447806 Merges getStudyAssociates() endpoint 2021-07-20 13:57:32 -04:00
NWalker4483 4632c6374f Merge branch 'dev' into bug/missing_pi_name_246
# Conflicts:
#	crc/api.yml
#	crc/services/study_service.py
2021-07-20 11:44:11 -04:00
mike cullerton 354e20c34b Use the data_store_service to set the data_store, rather than access DB directly.
Pass the label explicitly (as the value)
2021-07-15 13:09:40 -04:00
Dan dd67a5e650 Never set the date to datetime.utcnow() on DateTime fields. We want this to fall back on the func.now() method and allow the database to set the time on insert. 2021-07-12 15:58:32 -04:00
Mike Cullerton 522ca9d164
Merge pull request #340 from sartography/bug/better_errors_on_scheduled_tasks
Assure we log reasonably clear errors when executing scheduled tasks …
2021-07-12 10:13:02 -04:00
Mike Cullerton d1bf370a39
Merge pull request #339 from sartography/restrict-loaded-studies-374
Restrict loaded studies #374
2021-07-12 10:11:34 -04:00
Mike Cullerton 7070761089
Merge pull request #338 from sartography/document-spreadsheet-name-380
Document spreadsheet name #380
2021-07-12 10:11:16 -04:00
Dan f982745d32 fixing a failing test, don't assume the study and workflow ids will always be 1. 2021-07-12 10:00:39 -04:00
Dan 1916c4ff54 Assure we log reasonably clear errors when executing scheduled tasks in the background, so that sentry can pick them up and they can be addressed effectively. 2021-07-12 09:43:12 -04:00
mike cullerton 690c059335 get_studies_for_user is no longer a static method 2021-07-09 10:37:57 -04:00
mike cullerton dad2de9f0c get_user_studies now checks study_details['REVIEW_TYPE'] before displaying a study.
This corresponds to REVIEWTYPENAME being `Full Committee`, `Expedited`, `Non-UVA IRB Full Board`, or `Non-UVA IRB Expedited`
2021-07-09 10:37:25 -04:00
Kelly McDonald 79c69037dd Filter out Library categories from the list returned 2021-07-08 08:57:40 -04:00
mike cullerton d6f9b013f7 Change `irb_documents` to `documents` 2021-07-07 12:54:03 -04:00
mike cullerton 23180908c8 Undo change. Wrong branch 2021-07-07 12:43:51 -04:00
mike cullerton c39e08972d Change irb_documents to documents 2021-07-07 12:42:01 -04:00
Dan Funk 3c52453c26
Merge branch 'dev' into add-name-error-hint-8 2021-07-07 11:35:24 -04:00
Dan Funk 2ed436327f
Merge pull request #333 from sartography/check-study-script-273
Check study script #273
2021-07-07 11:28:32 -04:00
Dan Funk db9b228735
Merge pull request #334 from sartography/WaitingEventsHotPatch
Make a change so that anything that has a waiting event is labeled in…
2021-07-07 11:27:10 -04:00
Dan 2a45f2fcda Merge branch 'dev' into add-name-error-hint-8 2021-07-07 11:24:00 -04:00
mike cullerton b0cf74fa3d Merge branch 'dev' into add-by-user-61
# Conflicts:
#	tests/files/test_files_api.py
2021-07-07 10:46:50 -04:00
mike cullerton c11b5cfb29 Add user_uid to api output 2021-07-07 08:18:02 -04:00
Dan fb54edac1c Adding additional details to error messages, and cleaning up the cruft around these messages to keep them clear and succinct.
Most noteable is the addition of the line on which the error occurs for script tasks.  It will report the line number and pass back the content of
the line that failed.
The validator only returns the first error it encounters, as it's clear that all we ever get right now is two of the same error.
Did a lot of work between this and spiffworkflow to remove all the places where we obfuscate or drop details as we converted between workflowExceptions and APIExceptions.
Dropped the python levenshtein dependency, in favor of just rolling a simple one ourselves in Spiffworkflow.
2021-07-07 00:53:49 -04:00
mike cullerton 894377a607 Add user_uid to FileDataModel calls 2021-07-06 17:09:00 -04:00
mike cullerton 23be257db0 Add user_uid column to file_data table 2021-07-06 17:07:47 -04:00
Dan a9805ad40c Adding some documentation for clarity. 2021-07-06 14:40:20 -04:00
Dan cafdc4d100 Removing an unneeded modification to the database structure for lookup tables. 2021-07-06 14:02:07 -04:00
Dan 04842aa66b Undo change to 1 minute. 2021-07-06 13:13:07 -04:00
Dan 7aa4b0833c Merge remote-tracking branch 'origin/dev' into feature/documents_xls_refactor 2021-07-06 13:11:08 -04:00
Dan 1b1a994360 Refactoring Reference files to use the lookup table, rather than parsing the results directly out of the spreadsheet, or attempting to cache them.
Adding a DocumentService to clean up the FileService, and get Documents well seperated, as it seems likely be pulled out or seperated in the future, there is now a Documents api file as well, for the same reason.
Some other minor changes are just fixing white space to assure our code is linting correctly.
I removed _create_study_workflow_approvals from the base test, as we don't use approvals like this anymore.
2021-07-06 13:10:20 -04:00
Kelly McDonald 9803a04d6d Make a change so that anything that has a waiting event is labeled in the database as waiting, even if it is sitting around waiting on a user input task that is ready 2021-07-06 11:46:47 -04:00
Kelly McDonald dce1d86e93 commit changes before looking at something else 2021-07-06 10:34:57 -04:00
mike cullerton f647390e1c Added description and validate_only 2021-07-02 15:51:24 -04:00
mike cullerton 9690c69b6c added check_study method to protocol_builder service for new endpoint 2021-07-02 15:25:33 -04:00
mike cullerton cd26654b3a Script to call new pb mock api endpoint `check_study` 2021-07-02 15:21:35 -04:00
mike cullerton db44882733 When we encounter a name error running a script, look in the task data and see if there is a variable with a similar name.
If a variable with a similar name exists, add it to the ApiError as a hint
2021-07-01 15:38:45 -04:00
Mike Cullerton 98d641f54d
Merge branch 'dev' into partial_testing 2021-06-30 16:13:31 -04:00
NWalker4483 508ef1ff2b Readded exit_at to workflow param 2021-06-30 11:15:48 -04:00
Dan 9a32fadc2f Merge branch 'dev' into 346-waiting-task-schedule
# Conflicts:
#	Pipfile.lock
#	crc/services/workflow_service.py
2021-06-30 10:14:37 -04:00
Dan a79ba22410 fixes to get the tests passing. We were missing a dependency in the Pipfile and the data_store had some invalid imports. 2021-06-30 10:06:57 -04:00
NWalker4483 2ba52a7095 Merge remote-tracking branch 'origin/HEAD' into partial_testing 2021-06-29 11:21:49 -04:00
Dan 187221537b fixing a corner case around file_data attributes. 2021-06-25 16:18:28 -04:00
Dan 628a587d97 We weren't committing to the database in the correct spot, so the delete wasn't sticking, and we were ending up with test workflows showing up in the main interface. 2021-06-23 16:39:58 -04:00
Dan Funk 48bf721b23
Merge pull request #331 from sartography/bug/356_duplicate_workflow
Bug/356 duplicate workflow
2021-06-22 17:42:24 -04:00
Dan 92ca506c8e Calls to eval no longer return the data, rather it will accept and return a key, allowing the front end to cache similar queries and not re-execute them. 2021-06-22 17:23:18 -04:00
Dan 61ad371680 Clean up the file api so we don't have a bunch of extra stuff in there. Just include the raw data from the document spraedsheet if it is available. 2021-06-22 15:08:08 -04:00
Dan 1f3febe2df Fix the panda warnings, which means we only support xlsx files now.
Include the document details when reutnring a file from the file model.
Improve the validation of file form elements.
2021-06-22 14:58:52 -04:00
NWalker4483 369b518384 Removed WorkflowService.delete_test_data() 2021-06-22 11:29:00 -04:00
Dan 07eb3f9ca8 Moving metrics into SpiffWorkflow so we can run the performance metrics deeply across both systems simultaniously.
Upgrading libraries.
Fixing deprication issue with Pandas and numpy.
We can only process xlsx files now, plain oldschool xls is fully removed.
2021-06-18 16:41:55 -04:00
NWalker4483 4ca94b39ce Merge branch 'dev' of https://github.com/sartography/cr-connect-workflow into partial_testing 2021-06-17 15:12:28 -04:00
Dan Funk 19d63e2aa2
Merge pull request #328 from sartography/restart-workflow-programmatically-347
Restart workflow programmatically #347
2021-06-17 10:36:46 -04:00
Dan a4caae8d64 when validating, we need to take every step to remove the workflows we create during the validation. 2021-06-16 14:40:20 -04:00
Dan acae6030f5 The API for evaluating python expressions should not raise an error, it can simply return a result of false, and provide an error to explain the problem. In this way the front end doesn't error out when it's running the script tasks but doesn't have enough information to get a valid response back.
The validation should take into account that repeating sections must be evaluated in the context of the data within the repeating section, not outside of it.
2021-06-15 16:17:15 -04:00
mike cullerton 02949dc6e2 WorkflowProcessor handles this error 2021-06-15 11:12:50 -04:00
NWalker4483 5c5b966bc4 Merge branch 'dev' of https://github.com/sartography/cr-connect-workflow into partial_testing 2021-06-15 09:11:18 -04:00
mike cullerton c8f8888c17 Script to reset workflow. Requires workflow spec name. 2021-06-14 14:51:16 -04:00
Dan 738a984dcd Merge branch 'dev' of github.com:sartography/cr-connect-workflow into dev 2021-06-11 17:21:47 -04:00
Dan 879d6e1df3 missed a critical change on the backend with the recent file updates, this assures that we properly handle repeating sections during the post process,
and we update the file doc code in those repeating sections.
2021-06-11 17:20:25 -04:00
Dan 7282419174 modified the tools api to return the expression and data with the result, making it easier to cash results on the front end, This should help drastically reduce the calls to the python_eval from the front end.
The post processors for form submissions needs to take repeating sections into account, or it won't find the files it is looking for.
2021-06-11 08:27:50 -04:00
Kelly McDonald 394906d840 Add refresh_waiting_tasks to the processor do_engine_steps so that if we have a waiting task that has met its condition prior to the scheduler running, it will go ahead and proceed 2021-06-10 08:33:24 -04:00
NWalker4483 e1a4a79b03 Added Partial Workflow spec 2021-06-09 15:21:21 -04:00
NWalker4483 2364c240b2 Error Text Changed 2021-06-09 14:54:43 -04:00