Closed kstan79 closed 1 year ago
Documentation is coming soon.
after some research i notice that we can capture camunda assignee property by adding more type in moddle option. i'd add some for user task which is userful and had apply PR #117 .
Technically it seems can capture xml property in json, however I dont know how to save it into mongodb instance. Hope your side can implement it.
Modified moddle
xml pasrsed successfully in definations
if the assignee's properties can save into user task (in instance collection), then I think is enough for basic implementation of user task in production.
I'm manage to store bpmn user assignments into mongodb. Im using camunda:assignee setting, the bpmn editor obtain from vscode extension list.
the code i changed is src/engine/Item.ts
:
you can see below is the result obtain from dataStore.findItems()
we can search using below way
items = await this.bpmnServer.dataStore.findItems( { "items.assignments.assignee":'benjamin' })
Kindly advise whether above approach approve, or need another way to implement it, I will send another PR after you approve
I know there is some others requirement like below, but I wish to get greenlight from you whether column assignee can use for this purpose.
Thanks for all your help, but please consider my initial design as follows:
[
{ Authorize: {group:'public', toPerform: 'Execute', on: 'start'}},
{ Designate: {user: currentUser, as : 'Owner'} ,
at:{ element: 'start', event:'start'}},
{ Authorize: {actor:'Owner', toPerform: 'Execute', on: ['Buy','Drive'],}},
{ Assign: {group:'Cleaners', toPerform: 'Execute', on:'Clean',}},
{ Assign: {group:'Mechanics', toPerform: 'Execute', on:'Repair',}},
{ Notify: {actor:'Owner' },
at: {element: 'Drive', event:' start'}
delayed: { min: 15 , cancelOn: 'end' }
]
Authorize is evaluated on request:
- isAuthorized(user,action,object): true/false
- getAccessList(user,action): list of objects
- getAuthorizedUsers(action,object): list of users
Designate is evaluated at specified Event; creates an [Involvement]()
Assign is evaluated at Start Event; creates an [Assignment]()
Notify is evaluated at specified Event; creates a [Notification]()
Here is a sample of the above:
And in MongoDB under item:
Please give me your feedback on the above, I have mistakenly merge your changes in PR, not realizing the conflict between the two designs, I will work locally for the next few days till I becomes stable then will push.
Do you know how to incorporate the above design in the editor?
Thanks very much
Assignment can also have a dueDate which can be a javascript function and priority
Yes I aware this document but I not understand how it work and link to it previously. IMHO I feel that leverage from camunda modeller is easier approach cause building editor seems painful and redesign the wheel.
However i respect your decision, I will try understand your initial design then get back to you afterward
after some reading, I feel that using json to define rules outside bpmn flow chart seems defeat the purpose of bpmn and add difficulty to process designe and approve. I guess you intension is:
IMHO,
I fully agree with you regarding keeping everything in bpmn file and using the editor.
thanks, then shall we continue without using custom rule.json? You agree i use the assignee column for continue, and reserve authorization/notification for future, to bind with camunda modeler?
Yes I agree, I am making all the required changes.
Thanks so much for your input
See Release 1.4.0 User Assignment
I'm try to use the webUI create service task however I cant figure up the way to define target user/group and seems no documentation explain how to do that, is it require camunda modeler?