Register type=dept on main app and oa-fc-host, with PC tree-select and
narrow drawer pickers storing {id,name} path snapshots; format dept values
in print and related-summary flatten.
Co-authored-by: Cursor <cursoragent@cursor.com>
Persist payment before samples to avoid consuming sample codes on validation failure, soft-delete samples on create rollback, and surface DJ due-amount mismatch as a hint only.
Co-authored-by: Cursor <cursoragent@cursor.com>
Close the current assignee's task as transferred and create a same-node pending task for the target user; include transferred in done lists.
Co-authored-by: Cursor <cursoragent@cursor.com>
Screen jump and print recursion need the instance id list alongside the
「已关联 M 条」summary text without changing form_data shape.
Co-authored-by: Cursor <cursoragent@cursor.com>
Align with DingTalk: returned/rejected/cancelled are terminal; progress
shows return on the approver task only; done list includes returned;
deprecate same-instance resubmit and source-instance linking.
Co-authored-by: Cursor <cursoragent@cursor.com>
Align with DingTalk semantics: reject ends the instance, return keeps it for initiator edits, and revoke-and-resubmit creates a linked new instance. Progress timeline projects rounds via oa_instance_event.
Co-authored-by: Cursor <cursoragent@cursor.com>