Commit Graph

85 Commits

Author SHA1 Message Date
Dan 2249965ade Paginator arguments changed slightly in latest releases of SQLAlchemy
Spiffworkflow 1.2:  Top Level Imports moved to appropriate modules
   - replace 'from SpiffWorkflow import WorkflowException' to 'from SpiffWorkflow.exceptions import WorkflowException'
   - replace 'from SpiffWorkflow import TaskState' to 'from SpiffWorkflow.task import TaskState'
   - replace 'from SpiffWorkflow import Task' to 'from SpiffWorkflow.task import Task'

SpiffWorkflow 1.2: Navigation code removed completely.  Proved to be of little use to folks, was super complex and difficult to maintain.

SpiffWorkflow 1.2: When inserting custom functions into the PythonExecutionEngine - be aware that the task data will act as the full context for execution, and will contain global functions and methods during the exec call.

SpiffWorkflow 1.2: All Task Specs now have a spec_type attribute, containing a descriptive string of the type, such as "User Task", "Script Task", "Start Event" etc...
2022-10-07 14:58:08 -04:00
Dan cc915ac25a refactoring the study service. 2022-02-09 08:50:00 -05:00
mike cullerton dfaf145bd1 category back to category_id 2022-02-08 16:39:54 -05:00
Dan 082ba18c2d got one more test to work. 2022-02-08 11:34:07 -05:00
Dan 4b8d193fb9 a few more tests passing 2022-02-07 14:58:25 -05:00
Dan 4ba122fff3 WIP - completely broken. 2022-02-07 09:12:11 -05:00
Dan e103845218 fixing failing tests around default primary processes
Removing a ton of ununsed code from example_data.
2022-02-02 13:30:54 -05:00
Dan 4ec6e403f5 1. Created a UserFileService, so it's clear what we use when for File Services, UserFiles, SpecFiles, and ReferenceFiles each function differently.
2. Reference Files and Spec Files are written to disk, they do not exist in the database at all.
2022-02-02 12:59:56 -05:00
Dan 4c00a5762f partial commit - new spec_file_service, and new spec_file_api endpoints that use spec and file name, not file id.
removed worklow_sync
cleaned up file and workflow models
most of the test are broken.
2022-01-28 06:42:37 -05:00
mike cullerton b99ed73951 Remove unused imports 2022-01-12 15:00:26 -05:00
mike cullerton cfa9f00bf3 *** WIP ***
Moved reference files to their own service
2022-01-12 14:37:33 -05:00
mike cullerton 4df2ed6ce4 *** WIP ***
Failing tests, and missing functionality.
Committing to get stuff on Github.
2022-01-11 15:30:22 -05:00
mike cullerton dc27f795c8 *** WIP ***
Committing because it is Friday afternoon, and my computer is acting flaky
2022-01-07 15:34:51 -05:00
mike cullerton fb660182aa Testing setup changes 2021-10-05 13:36:53 -04:00
alicia pritchett d5d4496cd0 Admin flag on category + migration + updated test 2021-09-29 16:53:59 -04:00
Dan 19104303de Refactor of the way we store and return details about users - All the details about a user, or individual associated with a study is returned within in an Ldap model. I've removed duplication between these models. This required some cleanup of the tests, and a migration that will drop the user details. 2021-09-22 13:16:25 -04:00
mike cullerton 543fc1fb4a Start of tests for new reorder API endpoint
Modified example_data to include a display_order for example spec
2021-08-27 13:04:11 -04:00
mike cullerton 70f391d612 Make sure tables exist before we try to delete them 2021-08-06 09:50:57 -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
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
mike cullerton e836242f10 Added standalone argument when adding a workflow_spec 2021-04-26 08:52:12 -04:00
Dan Funk 4268d0f482
Merge pull request #208 from sartography/152-workflow-spec-pull
152 workflow spec pull
2020-12-14 11:35:06 -05:00
Kelly McDonald a8203ed01d save changes before refactor 2020-12-10 10:06:21 -05:00
Dan aca1fb366b Fixing a failing test and updating the personnel. 2020-12-01 15:47:27 -05:00
Dan 75124a8dba add enough example data that we don't fail when disconnected from the vpn and ldap doing basic development tasks 2020-12-01 11:47:59 -05:00
Dan afc0cbf83e fix a stupid mistake. 2020-12-01 11:20:32 -05:00
Dan e0c28cbc7d Make it easer to start things up. 2020-12-01 11:17:07 -05:00
Dan Funk b2aede2b8d Glob on windows seems to return directories where in linux it does not, so now assuring we don't try to add files from the sub-directory. 2020-10-05 17:35:35 -04:00
Dan Funk 1a713bd140 updating bpmn files from the staging server. 2020-08-27 13:55:27 -04:00
Dan Funk 3d9eeab502 Add a few more details to the workflow metadata model. 2020-07-21 15:18:08 -04:00
Aaron Louie e82532aad8 Updates IND workflow spec. Fixes validation process to return lookups for enum values. 2020-07-17 11:51:21 -04:00
Aaron Louie dedec02d48 Updates RRT workflow spec files 2020-05-28 10:43:03 -04:00
Dan Funk a14168362a Merge branch 'feature/support_ui_dashboard' into dev 2020-05-25 21:31:16 -04:00
Dan Funk d80a6af754 Disabling the Protocol Builder, and getting the rrt data correct. 2020-05-25 12:53:56 -04:00
Dan Funk 6cd4ef64d1 Fixing add_study api endpoint, so you can actually add a new "Study" with just some basic information.
Using the LDAP service for checking user details in development mode - even if you are using the back door.
Added a new Flask fucntion load-example-rrt-data that loads the rrt workflow, and not the CRC wrokflows.
Modified the "load-example-data" in the tests to use some test data, rather than loading up all the workflows[
in CRC each time, with a parameter to load crc data if that is required - which is enabled for just a handful of tests.
(Tests run in 1/4 the time now)
2020-05-25 12:29:05 -04:00
Aaron Louie 20bf01a888 Adds cascade to study relationship so data loader doesn't freak out. 2020-05-22 22:04:11 -04:00
Dan Funk b63ee8159e We now only return the ready user tasks, not all tasks, and even then the ready user tasks don't come back with the forms and details, just the bare minimum. Speeds things up considerably, and most of this information wasn't used anyway. 2020-05-14 17:13:47 -04:00
Dan Funk da7cae51b8 Adding a new reference file that provides greater details about the investigators related to a study.
Improving the study_info script documentation to provide detailed examples of values returned based on arguments.
Making the tests a little more targetted and less subject to breaking through better mocks.
Allow all tests to pass even when ther protocol builder mock isn't running locally.
Removing the duplication of reference files in tests and static, as this seems silly to me at the moment.
2020-05-07 13:57:24 -04:00
Aaron Louie 4ecb0cb3a3 Updates BPMN files 2020-05-05 16:15:38 -04:00
Aaron Louie 496e5b7719 Updates all workflow specs to match staging 2020-04-27 22:54:05 -04:00
Aaron Louie d91f690388 Adds documents_status StudyInfo script. Adds Documents & Approvals workflow spec. 2020-04-23 19:25:01 -04:00
Aaron Louie faf4c0df97 Updates BPMN and DMN files 2020-04-15 10:58:13 -04:00
Aaron Louie f6a5fde124 Adds display order to specs 2020-04-10 11:13:43 -04:00
Aaron Louie 419d619efa Updates BPMN & DMN files with latest from staging 2020-04-06 13:12:34 -04:00
Dan Funk 4a916c1ee3 Created a "StudyService" and moved all complex logic around study manipulation out of the study api, and this service, as things were getting complicated. The Workflow Processor no longer creates the WorkflowModel, the study object handles that, and only passes the model into the workflow processor when it is ready to start the workflow.
Created a Study object (seperate from the StudyModel) that can cronstructed on request, and contains a different data structure than we store in the DB. This allows us to return underlying Categories and Workflows in a clean way.

Added a new status to workflows called "not_started", meaning we have not yet instantiated a processor or created a BPMN, they have no version yet and no stored data, just the possiblity of being started.

The Top Level Workflow or "Master" workflow is now a part of the sample data, and loaded at all times.

Removed the ability to "add a workflow to a study" and "remove a workflow from a study", a study contains all possible workflows by definition.

Example data no longer creates users or studies, it just creates the specs.
2020-03-30 08:00:16 -04:00
Aaron Louie 6ebd4dce42 WIP: Adds default workflow spec categories 2020-03-27 15:32:07 -04:00
Dan Funk b61a35f956 Merge remote-tracking branch 'origin/master' into feature/status_refactor
Fixing adding a study so all workflows are again added, will add status on those workflows based on output from the master bpmn diagram, which is coming shortly.
2020-03-27 11:55:36 -04:00
Dan Funk 6c832829b0 Merge remote-tracking branch 'origin' into feature/status_refactor 2020-03-26 20:47:37 -04:00
Dan Funk e2c408b70d Removed all self-referential calls in the study_api. One api endpoint should never call another api endpoint. Moved the logic for updating a study to the study Model, rather than checking and setting dictionary values which will become very hard to maintain.
The protocol builder service now returns real models, not dictionaries, forcing proper validation and fail-fast behavior.
Changed the name of the "status" spec, to "top_level_workflow" and removing any connection a workflow or study has with this specification.  It is only unused to determine status in real time, and is not reused or tracked.
Modified the required documents script to return a dictionary and not an array, making it easier to speak to specific values in the BPMN and DMN.
Working on new ways to test the top_level_workflow in the context of updates, this is still a work in progress.
Making use of several modifications to the Spiff library that enables more complex expressions in DMN models. This is evident in the new DMN models for the top_level_workflow
2020-03-26 12:51:53 -04:00
Aaron Louie 8752a81042 Disables broken spec 2020-03-26 08:52:53 -04:00