1933 Commits

Author SHA1 Message Date
mike cullerton
acaf3c2fd2 Simple script that returns the current study_id
Includes test and bpmn
2023-02-24 11:05:27 -05:00
Dan
cc00b545dc use the correct name for the script task. 2023-01-18 13:45:13 -05:00
mike cullerton
acde03806c Returns the list of studies for a user, from protocol builder 2023-01-12 13:04:55 -05:00
mike cullerton
f900279a02 include workflow.user_id in the WorkflowApi Model 2022-12-01 12:24:08 -05:00
Dan Funk
49f7cd92a6
Merge pull request #573 from sartography/bug/rename-file-issue
Rename file issue #768
2022-11-17 11:45:34 -05:00
mike cullerton
00c1c80356 Backend changes for renaming a bpmn file. 2022-11-17 10:47:35 -05:00
Dan
513d5664c1 Getting all tests passing with latest SpiffWorkflow. 2022-11-16 12:29:18 -05:00
mike cullerton
2b0d106be5 Bug fix for modify_template.
We were not checking whether the file was archived
2022-11-03 11:44:25 -04:00
jpitts-uva
e7e4e6afc7 Merge branch 'dev' into pb-sync-date 2022-10-19 14:21:41 -04:00
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
5c76c90d04 send_file's arguments changed in a 2.2 of Flask.
Spiffworkflow 1.2:  remove all references of timeit (no longer in SpiffWorkflow)
Spiffworkflow 1.2:  pythonScriptEngine._evaluate no longer accepts a task argument.
Spiffworkflow 1.2:  CancelEventDefinition was removed - please use SignalEventDefinition instead
 EX: replace bpmn_workflow.signal('cancel')  # generate a cancel signal.
              bpmn_workflow.catch(CancelEventDefinition())
 WITH: bpmn_workflow.catch(SignalEventDefinition('cancel'))
Spiffworkflow 1.2:  Task States are JUST integers and TaskSpecNames is now a public dictionary, and can be used to covert a state to human readable string
    EX:  REPLACE:  user_task.state.name
         WITH:     TaskStateNames[user_task.state]
2022-10-05 15:31:56 -04:00
jpitts-uva
369f1e64ed Fixed conflicts 2022-09-30 14:50:52 -04:00
jpitts-uva
e2a2a691ef Filtering of studies is now by creation date instead of modified date. 2022-09-15 22:53:38 -04:00
jpitts-uva
33016005c2 Filtering of studies is now by creation date instead of modified date. 2022-09-15 15:36:17 -04:00
mike cullerton
fdf3dd497c Make sure we don't include archived files as attachments 2022-08-10 14:40:53 -04:00
Dan
4305b36b74 Removed total_tasks and completed_tasks - as they are no longer used by the front end, and were dubious as hell to begin with.
Upraded SpiffWorkflow and now use th new get_subprocess_specs
updated the calculate_stats in the workflow processor - as the serialization had changed drastically, and needed to debug some performance issues.
Added a get_navigation method that will calcuate a basic navigation list MUCH faster than using the get_flat_nav_list in Spiffworkflows Navigation object.
Modified a hellton of tests because we don't have total_task and completed_task counts, or a complex nested navigation list anymore.
2022-07-20 12:10:23 -04:00
Dan
9ab29cf1fe Upgrade spiffworkflow - the WorkflowTaskExecException was moved - so we have to update all import statements. 2022-07-14 13:37:16 -04:00
mike cullerton
cd743b4a72 Clean up data_store set
Fix workflow_service to work with data_store_service
2022-07-13 11:47:30 -04:00
mike cullerton
a1c5f0d492 Be explicit about values in data store service.
I.e., none of this adding variables to args, and counting them
2022-07-12 16:11:50 -04:00
mike cullerton
644629fbc8 Bug deleting a study 2022-07-12 15:07:19 -04:00
mike cullerton
200ace2ce5 Add data_store table to admin page 2022-07-12 14:13:34 -04:00
Dan
b15750d2e4 Cleaned up the Workflow Processor's init method
* removed all the performance metric code into a separate function.
* restructured the code so it is either creating a new workflow, or deserializing an old one.
* Added code to upgrade serialized objects from 1.0 to 1.1
* Using the new method of creating a bpmn_workflow object:
```python
                parser = self.get_spec_parser(self.spec_files, spec_info)
                top_level = parser.get_spec(spec_info.primary_process_id)
                subprocesses = parser.get_process_specs()
                self.bpmn_workflow = BpmnWorkflow(top_level, subprocesses, script_engine=self._script_engine)
```
Fixed a few minor bugs that stood out while testing
1. when updating a workflow, we should check for a valid task BEFORE calling cancel_notify, which requires a valid task.
2. get_localtime - quick fix on the date parser - for python 3.9.
3. the start_workflow script would error out in a way that made it unclear which workflow was having the problem.  Fixed the error.
2022-06-24 11:34:39 -04:00
Dan Funk
9378a2ae1f
Merge pull request #557 from sartography/chore/return-to-pi-api-759
Chore/return to pi api #759
2022-06-20 16:40:33 -04:00
Dan Funk
56d3a61f54
Merge pull request #556 from sartography/chore/email-attachment-info-758
Chore/email attachment info #758
2022-06-20 12:55:07 -04:00
mike cullerton
700c551e84 Script to retrieve Pre Reviews for a study 2022-06-20 11:26:06 -04:00
mike cullerton
7c9ccac8d2 Add new PB API endpoint for Pre Reviews. 2022-06-20 11:24:54 -04:00
mike cullerton
fd0058355b Add more examples in the description 2022-06-20 09:21:13 -04:00
mike cullerton
6b651c3da1 pass the doc_code along with the file data when appending attachments to email 2022-06-15 17:06:33 -04:00
mike cullerton
f060c60b03 save doc_codes to the DB, when we send an email 2022-06-15 17:06:01 -04:00
mike cullerton
6f393f712d Store doc_code information for email message attachments
- create table `email_doc_codes`
- create relationship with `email` table
- create schema for the new table
2022-06-15 15:15:40 -04:00
mike cullerton
4dcba38fdd Add a method to FileSystemService that moves a workflow spec to a different category. 2022-06-07 12:55:48 -04:00
Dan Funk
d3a89b6af4
Merge pull request #554 from sartography/chore/delete-file-changes-750
Chore/delete file changes #750
2022-06-03 16:22:25 -04:00
mike cullerton
3924c33af4 Make sure we only delete files for the current study 2022-06-03 16:05:10 -04:00
Dan Funk
d434602f55
Merge pull request #551 from sartography/chore/current-user-changes-755
Chore/current user changes #755  and lane permissions #737
2022-06-03 15:45:49 -04:00
Dan
a485104957 Merge branch 'chore/current-user-changes-755' of github.com:sartography/cr-connect-workflow into chore/current-user-changes-755 2022-06-03 15:28:52 -04:00
Dan
0746848d8d just a little quick cleanup 2022-06-03 15:28:04 -04:00
mike cullerton
9729f18816 Cleaned up logic around whether we have a logged in user 2022-06-03 15:07:14 -04:00
mike cullerton
963880ed9a Better wording 2022-06-03 15:06:53 -04:00
Dan Funk
3cc5013484
Merge pull request #550 from sartography/chore/unlock-admin-sandbox-739
Chore/unlock admin sandbox #739
2022-06-03 14:14:56 -04:00
mike cullerton
7c130cb840 Change delete_file script so that it defaults to deleting all files with the doc code, for the entire study.
Before this change, the script only deleted files for the current workflow.
You can now pass `study_wide=False` to only delete files for the current workflow
2022-06-03 13:24:32 -04:00
mike cullerton
d5c5fe075d We were running the config twice 2022-06-03 10:07:35 -04:00
mike cullerton
30d6c3ac36 Make sure we are in a lane 2022-06-02 15:56:45 -04:00
mike cullerton
2ac2163db3 Ran into a situation where spiff_task was None 2022-06-02 14:26:15 -04:00
mike cullerton
906e02f81a Set the LOCKED state for StartEvent
We use this in lanes
2022-06-02 14:25:28 -04:00
mike cullerton
2063ee42d8 Allow impersonations when checking user_is_admin 2022-06-02 14:24:05 -04:00
mike cullerton
fd633f6b52 master_workflow_results should be a dictionary 2022-06-01 13:36:56 -04:00
mike cullerton
e729c1e3d2 Raise an error if we don't have a logged in user 2022-06-01 13:36:20 -04:00
mike cullerton
2039631bd0 *** WIP ***
New script get_current_user
Replaces the current_user value that was removed from task data

Will also include information about the impersonating admin account if current_user is really an impersonation (view as)
2022-05-31 16:56:39 -04:00
mike cullerton
6911ab7aae Fixes for failing tests after removing current_user from task data 2022-05-31 16:53:15 -04:00
mike cullerton
f74afc3e18 Remove current_user from task data 2022-05-31 16:51:03 -04:00