Commit Graph

80 Commits

Author SHA1 Message Date
jasquat 87bacbdaaf added some timestamp fields to bpmn process tables w/ burnettk 2023-03-07 10:41:54 -05:00
jasquat 96ef81af34 merged in main and resolved conflicts w/ burnettk 2023-03-06 11:15:16 -05:00
jasquat e55485bd4a removed process instance data and serialized bpmn definition models w/ burnettk 2023-03-06 11:13:53 -05:00
jasquat 2cdacfa03b some stuff is passing but still needs the process_instance_data w/ burnettk 2023-03-03 16:51:24 -05:00
burnettk 14e12645c4 get longblob on mysql, reset migrations since we are going to do that anyway in hours 2023-03-03 14:04:02 -05:00
jasquat 4eef585136 recreated migration from new one in main 2023-03-03 13:08:30 -05:00
jasquat 40a3515d4e Merge remote-tracking branch 'origin/main' into feature/split_up_bpmn_json 2023-03-03 13:04:26 -05:00
jbirddog b4546e86e6 Special case file data during user form submission (#164) 2023-03-03 12:24:18 -05:00
jasquat f7c46cd945 recreated branch migration w/ burnettk 2023-03-03 12:08:36 -05:00
jasquat 8c60080663 set the collation on the db directly and not in the models w/ burnettk 2023-03-03 12:05:12 -05:00
jasquat 276e6d5f37 recreate migrations to set case sensitive columns for mysql w/ burnettk 2023-03-03 11:41:34 -05:00
jasquat d7f4c8ba95 clean up bpmn process definition save code a bit w/ burnettk 2023-03-03 11:24:28 -05:00
jasquat 0c6e9a63ba unit tests are passing with the new spec tables 2023-03-03 10:08:14 -05:00
jasquat 8d67e8cc87 we can save the top level spec to the database with its tasks w/ burnettk 2023-03-02 17:28:31 -05:00
jasquat 716986a483 prefer the bpmn process name over the identifier on the logs list page w/ burnettk 2023-03-01 16:28:42 -05:00
jasquat 6521998a54 fixed the downgrade in new migration w/ burnettk 2023-03-01 15:54:50 -05:00
jasquat 59c5ed296d removed old branch migrations and created single one for this branch w/ burnettk 2023-03-01 15:40:17 -05:00
jasquat e2891425fc store the process instance data id on the process instance and not the other way around w/ burnettk 2023-03-01 11:39:03 -05:00
jasquat f74ce0f568 some logic to attempt to use the new bpmn json tables w/ burnettk 2023-02-28 17:46:14 -05:00
jasquat d5acd5a16d added new table and some notes on how to get a delta w/ burnettk jbirddog 2023-02-28 16:30:52 -05:00
burnettk a5c6d262b8 slam migrations file one last-ish time, increase task_name column length 2023-02-27 22:03:42 -05:00
jasquat 45feb38168 recreated all migrations to resolve postgres migration failures w/ burnettk 2023-02-27 17:27:53 -05:00
jasquat 7c12709fdd fixed conflict with db migrations w/ burnettk 2023-02-27 14:33:55 -05:00
jasquat dfac872606 Merge remote-tracking branch 'origin/main' into feature/script_get_last_user_completing_task 2023-02-27 14:28:23 -05:00
jasquat 9f84564457 script to get last user completing a task is working w/ burnettk 2023-02-27 12:08:07 -05:00
burnettk e9b3ababc1 wip for get_last_user_completing_task script task 2023-02-25 23:31:23 -05:00
Dan 0dc2bc3316 # SpiffWorkflow:
1) Type Safe checking on correlation properties (no more str())
2) A running workflows Correlations are once again at the key level.

# Backend
1) Both send and receive messages can have correlation_keys - and we compare these to each other to quickly assure a match (if they both exist - otherwise we fall back to comparing the properties on the receive to the sending messages payload)
2) Cleaned up the migrations to just one file
2023-02-24 14:53:22 -05:00
Dan 5a3b4b8792 BPMN Parser was returning all retrieval expressions, rather than the ones specific to a correlation property, as was intended.
Adding a correlation cache - so we have a reference of all the messages and properties (though still lacking a description of keys)
Adding yet another migration, maybe should squash em.
2023-02-23 16:36:32 -05:00
Dan 8466d823c2 Adding Migration. 2023-02-23 14:42:00 -05:00
Dan 0030a46938 run_pyl 2023-02-23 14:17:22 -05:00
Dan 5f6a61c93f * SpiffWorkflow event_definitions wanted to return a message event's correlation properties mested within correlation keys. But messages are directly related to properties, not to keys - and it forced a number of conversions that made for tricky code. So Messages now contain a dictionary of correlation properties only.
* SpiffWorkflow did not serialize correlations - so they were lost between save and retrieve.

* When comparing Correlation Property values - we are storing these values as strings in the database and can't convert them back to integers later, so I'm changing everying everywhere to compare after conversion to a string.  Don't feel great about this one.
* By using an SQL Alchemy join table, there is a lot of db queries we don't need to write.
* A few handy fucntions on db models to make it easier to work with correlations.
* Updated tests because I changed some of the BPMN models we were testing against.
* Database migration to use the new constraint names with the alternate form of the join table between correlation mesages to instance messages.
2023-02-20 11:50:35 -05:00
Dan 8e257600af work in progress -
* Link between message instance and correlations is now a link table and many-to-many relationships as recommended by SQLAlchemy
* Use the correlation keys, not the process id when accepting api messages.
2023-02-17 10:45:01 -05:00
jasquat 012d2bd367 tasks and subprocesses can are setting the task states properly now when getting task data w/ burnettk jbirddog 2023-02-09 15:29:45 -05:00
jasquat df5451685f updated controller to use spiff step details to find correct task data to show w/ burnettk 2023-02-08 17:31:20 -05:00
jasquat 1d4a7a9b94 added additional columns to spiff_step_details w/ burnettk jbirddog 2023-02-08 12:43:30 -05:00
burnettk 67667828c2 if there are tenant specific fields in the config, transfer them from openid token to db 2023-02-04 00:03:32 -05:00
jasquat 4e0ddc7ea5 removed uniqueness constraint from human task so we can loopback to a previous task with a gateway w/ burnettk 2023-01-24 11:03:55 -05:00
jasquat 102413326a added locking system for process instances so hopefully background jobs will not take instances currently being run by the user w/ burnettk 2023-01-23 16:45:07 -05:00
jasquat 809c4b055a added uniqueness constraint to spiff step details w/ burnettk 2023-01-23 11:03:17 -05:00
jasquat b62d9f8867 delete human tasks when process instance is deleted w/ burnettk 2022-12-28 14:02:39 -05:00
burnettk 5a73ba20c1 lint and regen schema 2022-12-22 21:15:10 -05:00
jasquat 5a6e181a99 merged in main and resolved conflicts w/ burnettk 2022-12-20 15:06:34 -05:00
jasquat 96e14817fa some initial changes to refactor report filters w/ burnettk 2022-12-20 11:16:06 -05:00
jasquat 2a73e23b3c renamed active task to human task since we are no longer deleting them w/ burnettk 2022-12-19 16:23:02 -05:00
jasquat 389c919d99 merged in main and resolved conflicts w/ burnettk 2022-12-19 14:51:54 -05:00
jasquat bb5a4add1f added updated and created at columns on user w/ burnettk 2022-12-19 11:25:21 -05:00
jasquat 66c5272766 added completed column to active task w/ burnettk 2022-12-16 16:51:49 -05:00
Dan de6558fea0 Updated migrations. 2022-12-15 14:43:09 -05:00
Dan 160e19bb8c When loading permissions and the user does not exist, add records to the UserGroupAssignmentWaiting table that can be picked up later.
Request "profile" scope over OpenID so we can get a few more bits of information when avilable.
Add a "clear_perissions" script
Add an "add_permissions" script
Add an "add_permissions" script
When logging in for the first time, check for any awaiting permissions and assign them.
Add "enumerate" as a whitelisted function to React Schema
Add a "display_name" to the user table

Add a test for adding a new permission
Add a test for adding a user to group
Adding a test for deleting all permissions.
Adding a display name for the user table
2022-12-15 14:40:31 -05:00
Dan 4a8b07e98d Removing two fields from user table that were not used (uid, name)
Request email from open id clients, as this would provide a handy way to uniquely reference users when assigning to groups.
During Login do a lookup on email if possible -- so that permissions assignments based on email can be connected when sigining in through openid.
Don't use "open_id" for the service name on user accounts, use the iss string provided through open id,  this will allow us to support more than one open id platform.
Update the KeyCloak configuration so it is able to return email addresses for users -- which will make permission assignment easier in the future.
Removed several unused commands in the user_service class.
2022-12-12 15:43:19 -05:00