camunda-community-hub / zeebe-simple-tasklist

Zeebe worker to manage manual/user tasks
Apache License 2.0
74 stars 18 forks source link

Support Zeebe's user task forms #88

Open saig0 opened 3 years ago

saig0 commented 3 years ago

Since Zeebe 1.0.0, user tasks and task forms are supported: https://docs.camunda.io/docs/reference/bpmn-processes/user-tasks/user-tasks#user-task-forms

The task forms are a new part of the Camunda stack and can be modeled directly in the modeler: https://docs.camunda.io/docs/product-manuals/tasklist/userguide/camunda-forms

Replace the previous task forms and form fields with the official Camunda forms. The form viewer can be integrated as described here: https://github.com/bpmn-io/form-js/tree/master/packages/form-js-viewer

tbfly commented 2 years ago

@saig0 Hi, will you please guide me, where to get "userTaskForm"? Now I can get "userTaskForm_id" from "customHeaders" by "io.camunda.zeebe:formKey". But where to get "userTaskForm" content json string by "userTaskForm_id"? Do I need to add "addProcessListener“ to get the all "process" xml content? Because the userTaskFrom content lay on: <process ... >

...

xml node.

While in orig serverTask path, the "taskform" or "formFields" 's key and value are all lay on "customHeaders", and can handle one time by read job meta info.

tbfly commented 2 years ago

"But it order to read the form, we need to import the process record. The form is stored in the process extension zeebe:userTaskForm."

I will check this path, thx. @saig0

LingXin0 commented 2 years ago

Custom form logic can be associated with the userTaskForm_id, and the corresponding permissions can be verified, but can not be stored in the userTaskForm

saig0 commented 1 year ago

A similar feature was implemented in the Zeebe-Play project. A contributor could adopt the relevant changes from the following PRs: