Commit Graph

1257 Commits

Author SHA1 Message Date
mike cullerton 9bd012c822 Clean up display_order numbers when reordering.
This fixes the problem where we have don't have all unique display_order numbers.
I.e., 0, 1, 1, 3, 5
2021-09-08 11:16:49 -04:00
mike cullerton ce1af73d6e Remove unused import 2021-09-07 15:44:15 -04:00
mike cullerton 21987cf1f1 Remove old root definition.
We now use the 2019 spec
2021-09-07 15:38:53 -04:00
mike cullerton a690535c2d Removed script used in development 2021-09-07 15:36:50 -04:00
mike cullerton e630aeb94e Add DMNDI section.
Without it, the configurator could not parse the XML
2021-09-07 14:27:15 -04:00
mike cullerton 6e7b549136 Change root element to use 2019 spec 2021-09-07 12:11:27 -04:00
mike cullerton a3b3df1bbb Use flask send_file to return DMN file 2021-09-07 12:09:30 -04:00
Dan Funk 1e97f0ac31
Merge pull request #368 from sartography/feature/114_read_only_expression
#114 We just needed to allow read_only_expression
2021-09-03 14:32:56 -04:00
Dan Funk 86c017a6a6
Merge pull request #367 from sartography/value-error-expression-428
Value error expression #428
2021-09-03 14:32:46 -04:00
Dan Funk 1a008499c4
Merge pull request #366 from sartography/file-id-error-info-449
Added file_id to some error messages in api.file #449
2021-09-03 14:32:14 -04:00
mike cullerton 93e8015ddd Read the spreadsheet data sent from the front end. This allows pandas to see it as a file type object.
Fixed bug where column_count wouldn't get set if there isn't an Annotation column
2021-09-03 10:37:06 -04:00
mike cullerton e2b70da6b7 Not returning json. Returning stream of XML 2021-09-03 10:33:12 -04:00
mike cullerton 8677d0368b Grab the file data from the request, not as a parameter 2021-09-03 10:32:32 -04:00
Dan 5c0d30becb We just needed to allow read_only_expression 2021-09-03 09:48:16 -04:00
mike cullerton 1545226e06 We no longer save the DMN file, so we don't need the workflow_spec_id
(We will open the DMN in the editor. It will be saved there.)
2021-09-02 09:58:22 -04:00
mike cullerton 5f3968b582 Changed script to work with a file_id
This will all be deprecated, and we won't run this from a script
2021-09-02 09:55:31 -04:00
mike cullerton b5082b8fd3 Call FileService 2021-09-02 09:53:17 -04:00
mike cullerton 4fa68bd4c0 Move business logic to FileService 2021-09-02 09:52:58 -04:00
mike cullerton 0c31b091ee Merge branch 'dev' into dmn-from-spreadsheet-395 2021-09-01 09:38:03 -04:00
mike cullerton b88daef4fa Added task name to the error message, for configurators 2021-08-31 16:17:52 -04:00
mike cullerton 5db5c7ca43 Added file_id to some error messages in api.file 2021-08-31 15:28:21 -04:00
mike cullerton ed57993f8d Workflow spec cleanup needs a category_id 2021-08-31 12:17:25 -04:00
Dan 1140b21414 Adding a test that assures we pick up libraries on the remote system when syncing. 2021-08-31 12:07:41 -04:00
mike cullerton b92676ea75 Make sure we have good display_orders before adding specs and categories 2021-08-31 11:16:27 -04:00
mike cullerton 994ce4008f Don't let updates to workflow-spec and workflow-spec-category metadata change the display_order
Force display_order changes to use the new reorder API endpoints
2021-08-31 10:36:22 -04:00
mike cullerton f6816a2e42 Move display_order cleanup to their own methods 2021-08-31 10:07:38 -04:00
Dan d17a2c39ed A little cleanup to assure that when we sync we correctly pick up and associate librarires with a workflow when we sync. 2021-08-30 15:46:16 -04:00
mike cullerton b76f45368b Explicitly commit the changes 2021-08-30 15:29:49 -04:00
mike cullerton 7bbb64cf27 Reorder remaining categories after delete 2021-08-30 15:20:45 -04:00
mike cullerton c275c01526 Reorder remaining workflow specs upon deletion 2021-08-30 14:56:26 -04:00
mike cullerton eb6b73fde5 Fixed typo where I returned an ApiError, instead of raising it. 2021-08-30 13:55:21 -04:00
mike cullerton a99818b177 Make sure we don't try to move past the top or bottom of the list. 2021-08-30 11:42:44 -04:00
mike cullerton 070a9c9350 Code for reordering Workflow Spec Categories
Still need to work on edge cases where you try to move past top or bottom of list
Still need to work on tests
2021-08-30 11:27:07 -04:00
mike cullerton f2201a3cef Move business logic to WorkflowService
Return ordered list of specs
2021-08-30 10:41:08 -04:00
mike cullerton 41414e39c8 First pass at reorder spec code.
Still need to return list of specs
Still need to work on spec categories
2021-08-27 13:02:49 -04:00
mike cullerton f639e101b7 Commit the skeleton API endpoints, so we can use them while developing the BPMN side of things. 2021-08-27 11:40:38 -04:00
Dan 083abd1b58 Just being consistent in the names as we named it delete_task_data in the class, but not elsewhere, and since I'm here, using the name I prefer. 2021-08-26 14:22:12 -04:00
mike cullerton da914be3fa Add task_spec to data_store 2021-08-26 10:41:09 -04:00
mike cullerton 506157d58a Add task_spec_name to FileService.add_workflow_file, and script that calls it. 2021-08-26 10:40:47 -04:00
mike cullerton 4c41011299 Add task_spec_name to `add_file` API call 2021-08-26 10:37:05 -04:00
mike cullerton 3d7dadc319 Model changes and revision file for task_spec column to file and data_store models 2021-08-26 10:36:10 -04:00
mike cullerton ea08643bcd Script to delete files and task_events associated with a task 2021-08-26 10:34:21 -04:00
mike cullerton d990a5636f Grabbed the latest irb_documents spreadsheet, because of the new `zip` columns and updated categories 2021-08-26 08:43:11 -04:00
mike cullerton fb5b7f72d8 New script to created a zipped file of irb_documents for use as an email attachment.
The script accepts a list of file_ids, and generates a list of documents from these ids.
The documents are stored in a directory structure generated from the categories in the irb_documents spreadsheet
2021-08-26 08:31:01 -04:00
Mike Cullerton 961925e03e
Merge pull request #361 from sartography/430-email-enhancements
#430 email enhancements
2021-08-25 15:02:14 -04:00
Mike Cullerton fcbbeb4735
Merge pull request #360 from sartography/423-LibraryAppearingInDashboard
Fixes #423
2021-08-25 15:01:18 -04:00
Dan 4b9c5bd3e8 Fixing a stupid mistake. 2021-08-24 12:10:59 -04:00
Dan 0bd1c282a3 Merge branch 'dev' of github.com:sartography/cr-connect-workflow into dev 2021-08-20 13:46:08 -04:00
mike cullerton 32c72c5a40 Modified email script and email_service to accommodate new bcc, reply_to, and attachments arguments
Modified the email script description to add the new arguments
Cleaned up some import statements
2021-08-19 17:34:55 -04:00
mike cullerton ef9fd9514d This caused a key error if we had a repeating field that was unused 2021-08-19 17:32:24 -04:00
Kelly McDonald 76f8f5984e Fixes #413
Fixes #423 where a library was showing up in a study workflow

Alex said this used to work, but I don't see where I ever edited the code that needed a filter.
2021-08-19 10:47:13 -04:00
Mike Cullerton 5692f7d377
Merge pull request #359 from sartography/413-LibraryCleanup
413 library cleanup
2021-08-18 13:39:37 -04:00
Dan afaecfa21c Catching an error when variables conflict with repeating section variables. 2021-08-18 13:38:34 -04:00
Mike Cullerton feb72af32e
Update workflow.py
Just completing a comment so I understood
2021-08-18 13:27:28 -04:00
Kelly McDonald b4ecb0f97a Add backref cascade and make changes to the spot where we delete so it loads objects into memory and then uses the SQLAlchemy plumbing to make sure that the db object gets cleaned up. 2021-08-18 08:25:17 -04:00
Leashys 032aad9bc4 Fixes #383 - Timestamp on files is UTC?
also this includes the shield test thing for the boolean_type property whoopsie
2021-08-17 13:04:24 -04:00
Dan 7a8eeab820 Merge branch 'dev' into bug/missing_pi_name_246 2021-08-17 11:16:03 -04:00
Dan 6ce560cc2d Made a stupid mistake in a hot fix, causing the builds to fail. 2021-08-17 10:14:49 -04:00
Dan Funk c831ee7e4a
Merge pull request #357 from sartography/426-remove-hsr-number
remove hsr number #426
2021-08-17 09:58:56 -04:00
Dan 78f79a67b7 removing exectue flag. 2021-08-17 09:52:02 -04:00
Dan 4e0e162fd6 Removing the execution flag Nile keeps adding to files. 2021-08-17 09:50:57 -04:00
Dan 77de2a8f47 Merge branch 'dev' into bug/missing_pi_name_246 2021-08-17 09:47:09 -04:00
Dan 0a2597ae36 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-17 09:43:08 -04:00
nilez 07ffcd7c76 Dependencies In Testing are behind this avoids that issue. https://sonarcloud.io/project/issues?id=sartography_cr-connect-workflow&pullRequest=356&resolved=false&types=BUG 2021-08-16 23:46:39 -04:00
mike cullerton 2a2fd710c4 Merge branch 'dev' into dmn-from-spreadsheet-395 2021-08-16 14:22:02 -04:00
mike cullerton 3f44c202ca Merge branch '417-hsr-open-to-enrollment-bug' into 426-remove-hsr-number 2021-08-16 12:55:24 -04:00
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
mike cullerton 05e7f5e253 Worksheet for Alex 2021-08-11 10:06:12 -04:00
mike cullerton 19e0caa700 API endpoint for creating a DMN table from a spreadsheet 2021-08-11 08:55:10 -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
mike cullerton dce95189cb Merge branch 'dev' into dmn-from-spreadsheet-395 2021-08-10 09:39:42 -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
mike cullerton c153c5e344 Another test spreadsheet 2021-08-09 13:27:58 -04:00
mike cullerton deebc49a82 Removed test files - don't need under version control 2021-08-03 12:20:25 -04:00
mike cullerton 0e20480f52 Removed test files - don't need under version control 2021-08-03 12:17:54 -04:00
mike cullerton 64576ee8fd It now adds the dmn file to the DB.
Added annotations.

Still need to move it out of a script.
Maybe a new API endpoint and a new method in file_service
2021-08-03 11:55:50 -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
mike cullerton deb16740f6 First attempt at creating dmn from spreadsheet.
xml template and example spreadsheet
2021-08-02 10:04:25 -04:00
mike cullerton e1aee0f635 First attempt at creating dmn table from spreadsheet.
Starting as a script
2021-08-02 10:03:10 -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