SpringBoot+Flowable 流程任务操作全景:通过拒绝转办委派加签退回抄送异同,与 operation-button 封装落地
SpringBootFlowable 流程任务操作全景通过拒绝转办委派加签退回抄送异同与 operation-button 封装落地演示地址http://ruoyioffice.com | 源码1·GitHubruoyi-office | 源码2·GitCoderuoyi-office | 源码3·Giteeruoyi-office | 微信17156169080备注「RuoYi Office」产品说「加个撤回」业务说「先转给财务再委派给外包」研发在详情页堆了十个按钮——然后发现财务节点不该有拒绝发起人节点文案必须是「提交」。任务操作不是按钮列表而是「设计时开关 运行时语义 端上组件」三层契约。本文按 RuoYi OfficeSpring Boot Flowable Vben UniApp把七类操作画清异同并拆开operation-button封装如何落地。▲ 全景七类操作对比卡 buttonsSetting 管道设计器 → BPMN 扩展 → 详情聚合 → 端上组件引言先分清「改结果」和「改责任」类别操作一句话改结果通过 / 拒绝推进或终止本节点乃至整单改责任转办 / 委派 / 加签 / 减签换谁办、临时插人、去掉加签人改路径退回跳到上游节点重办改知情抄送知会不挡待办上一篇《审批任务协作》深挖了加签方向、转办/委派 owner、退回moveActivity本文补齐全景对比 按钮组件封装——解决「模型里关了拒绝前端为什么还显示」这类工程问题。一、七类操作对比图产品 / 测试可用枚举与设计器一致OperationButtonType/BpmTaskOperationButtonTypeEnumAPPROVE1// 通过REJECT2// 拒绝TRANSFER3// 转办DELEGATE4// 委派ADD_SIGN5// 加签RETURN6// 退回COPY7// 抄送操作引擎侧核心动作责任链是否需要选人/节点典型误用通过approveTask完成当前 UserTask当前办理人完成本节点意见可配签名/下一审批人自选和「办理人节点」文案混用拒绝rejectTask按拒绝策略结束或驳回节点常导致实例 REJECT意见必填常见想「退回改单」却点了拒绝转办setAssignee换处理人彻底交给对方选用户想「代批后还要自己看」却用了转办委派delegateTask保留 owner代办完回到原人选用户和转办口头混称加签前后插子任务BEFORE/AFTER临时扩大审批圈选人 方向用加签代替模型会签退回moveActivityIdsToSingleActivityId回到指定历史节点选可退回节点 意见退到不可达节点 / 子流程乱跳抄送写抄送台账通常无 UserTask 完成知会不审批选被抄送人把抄送配成审批人卡流程另外还有运行时衍生能力不在七键枚举里但详情页常出现减签有加签子任务时可删未完成的子任务发起人取消 / 撤回 / 已办取回 / 重提属于实例级「反悔」态见《审批反悔三态》文┌──────── 改结果 ────────┐ │ 通过 ──► 下一节点/结束 │ │ 拒绝 ──► 结束或驳回策略 │ └────────────────────────┘ 当前任务 ──► ┌──────── 改责任 ────────┐ │ 转办assignee 换人 │ │ 委派代办后回 owner │ │ 加签插子任务再汇合 │ └────────────────────────┘ ┌──────── 改路径/知情 ───┐ │ 退回跳上游节点 │ │ 抄送台账知会 │ └────────────────────────┘▲ 待办是所有操作的统一入口点「办理」进详情后底栏按钮由节点 buttonsSetting 决定而不是写死「永远有七个键」二、设计时三种默认按钮包简单流程设计器里不是每个节点同一套开关// 审批人节点默认通过/拒绝/转办/委派/加签/退回 全开抄送可另配DEFAULT_BUTTON_SETTING// 办理人节点通过文案改「办理」拒绝/转办等默认关TRANSACTOR_DEFAULT_BUTTON_SETTING// 发起人节点通过文案改「提交」其它协作键关死START_USER_BUTTON_SETTING产品含义发起人节点点的是「提交/重新提交」不是「审批通过」。办理人节点偏事务闭环填还车里程、确认到货常不需要拒绝/加签。每个审批节点仍可改displayName如「同意付款」与enable。配置写入模型后编译进 FlowableUserTask扩展元素buttonsSettingid / displayName / enable。三、运行时parseButtonsSetting → todoTask// BpmTaskServiceImpl#getTodoTaskBpmnModelbpmnModel...;MapInteger,OperationButtonSettingbuttonsSettingBpmnModelUtils.parseButtonsSetting(bpmnModel,todoTask.getTaskDefinitionKey());returnbuildTodoTask(...).setButtonsSetting(buttonsSetting).setSignEnable(...).setReasonRequire(...);get-approval-detail聚合详情时带上todoTask前端只认这一份开关——PC 与 App 同源避免两端各写一套 if。写入侧SIMPLE 编译addButtonsSetting(node.getButtonsSetting(),userTask);// → UserTask extensionElements.buttonsSetting没有扩展元素时前端isShowButton默认true兼容旧定义有配置则以enable为准。四、PC 封装operation-button.vue做了什么路径apps/web-antd/src/views/bpm/processInstance/detail/modules/operation-button.vue职责可以概括成四件事4.1 显示门禁functionisShowButton(btnType:BpmTaskOperationButtonTypeEnum):boolean{if(runningTask?.buttonsSetting?.[btnType]){returnrunningTask.buttonsSetting[btnType].enable;}returntrue;}functiongetButtonDisplayName(btnType){returnrunningTask?.buttonsSetting?.[btnType]?.displayName??OPERATION_BUTTON_NAME.get(btnType);}4.2 交互容器统一用 Popover通过 / 拒绝 / 转办 / 委派 / 加签 / 退回 / 抄送 / 取消 / 减签每个键打开独立气泡表单意见、选人、选退回节点、签名板避免详情主区被 Modal 堆满。4.3 审批前钩子beforeApproval注入业务表单校验CUSTOM 单据先存再批通过后才调TaskApi.approveTask等接口。4.4 衍生能力签名signEnable意见必填reasonRequire下一节点自选审批人getNextApprovalNodes减签runningTask.children.length 0时出现▲ PC 待办进入详情后底栏即 operation-button主操作 协作操作均受节点配置约束五、移动端封装同一契约不同布局UniApppages-bpm/processInstance/detail/components/operation-button.vue维度PCUniApp布局底栏横向 Button Popover左图标最多 2 右主按钮 「更多」ActionSheet复杂表单气泡内完成拆到独立操作页意见/选人/退回节点开关来源buttonsSetting同源与反悔态详情壳另处理撤回/重提viewType门禁互斥渲染移动端右侧通常固定「拒绝 通过」槽位其余进左侧/更多——小屏优先主路径协作操作降级入口但不丢能力。六、落地清单新增一种操作按钮要改哪若业务要加第八种键示例仅财务节点「挂起」推荐按现有管道扩展而不是详情页写死前后端枚举各加一个 idOPERATION_BUTTON_NAME/ 设计器DEFAULT_BUTTON_SETTINGaddButtonsSetting/parseButtonsSetting已泛化 Map一般不用改结构BpmTaskService增加引擎语义实现 ControllerPCoperation-button增加 Popover APIUniApp 增加图标映射 操作页评论类型 / 消息模板补审计文案禁止只在某一个 Vue 里v-ifnodeName财务——换流程 key 就失效且 App 不同步。七、选型与配置建议给实施节点类型建议开启建议关闭普通审批通过、拒绝、退回按需转办全员加签易变成会签旁路财务付款通过改名、退回签名随意转办到外包账号办理/确认「办理」必要时退回拒绝、加签知会领导用抄送节点或办理中抄送配成审批人法务会审模型会签/或签运行时连环加签代替模型测试矩阵至少覆盖关拒绝后两端都不显示改 displayName 两端一致委派完成后待办回 owner退回后上游可编辑字段权限正确。八、端到端体验打开流程模型 SIMPLE 设计器点开某审批节点「操作按钮」面板关掉拒绝并改通过文案。发布定义发起一单用审批人进待办详情确认底栏变化。分别点转办与委派看时间线评论与后续待办归属差异。手机端同一账号打开确认「更多」里能力与 PC 对齐。在线演示http://ruoyioffice.com源码仓库GitHub | GitCode | Gitee常见问题FAQ转办和委派到底选哪个出差「这单以后你负责」→ 转办。请假「你先代看回来我还要确认」→ 委派。看责任要不要回到自己。为什么设计器关了加签详情还有减签减签依赖「当前是否已有加签子任务」不是buttonsSetting七键之一有子任务才露避免误操作。buttonsSetting 为空时按钮全开安全吗兼容旧流程。新项目建议节点显式落默认包并在关键流程关掉不需要的协作键。拒绝和退回可以合成一个按钮吗不建议。拒绝常走结束/驳回策略退回是路径回跳。合成后审计与业务状态机都会糊。和《任务协作》《反悔三态》《移动审批》怎么分工协作文讲引擎细节反悔文讲撤回/取回/重提移动文讲 viewType 壳本文讲操作全景 按钮组件管道。结语流程任务操作的工程正解不是在详情页堆按钮而是设计器声明 → BPMN 扩展沉淀 → 待办聚合下发 → PC/App 组件按契约渲染与调 API。RuoYi Office 用同一套buttonsSetting把七类操作和端上operation-button拴在一起实施才能按节点裁剪能力研发才能按管道扩展第八键。你们现在是「全公司统一七键」还是已经按财务/法务节点裁过按钮欢迎评论区交流。想要体验 RuoYi Office 的强大功能在线演示http://ruoyioffice.com/web/账号 admin / admin123源码仓库GitHub | GitCode | Gitee技术咨询添加微信17156169080备注「RuoYi Office」⭐如果觉得不错请给个 Star 支持一下

相关新闻

为什么懂行的人,一定要穿 PATRONI 启航者 SF2540BLK 安全鞋?

为什么懂行的人,一定要穿 PATRONI 启航者 SF2540BLK 安全鞋?

内行挑选安全鞋,从来不只看能不能防砸,而是结合工况需求、安全性、舒适度与售后保障综合考量,电工、厂区安检、电子加工厂、仓储运维从业者偏爱 PATRONI 启航者 SF2540BLK,正是因为它精准拿捏多行业作业痛点,做到安全实…

2026/8/11 11:10:04 阅读更多 →
Claude Code:轻量级AI编程工具的高效配置指南

Claude Code:轻量级AI编程工具的高效配置指南

1. 插件泛滥时代的开发困境最近在技术社区看到一个很有意思的现象:不少开发者都在疯狂收集各种VS Code插件,仿佛插件数量成了衡量开发效率的标尺。我的一个同事甚至炫耀他的插件列表超过了200个,结果每次启动编辑器都要等上半分钟。这让我开始…

2026/8/11 11:09:04 阅读更多 →
员工风险评估治理指南:风险维度与事实指标

员工风险评估治理指南:风险维度与事实指标

员工风险评估中的风险维度与事实指标,不能停留在风险清单或一次性会议纪要,而应形成包含责任、指标、阈值、抽检、分级、整改、验证和复盘的持续管理闭环。直接答案员工风险评估中的“风险维度与事实指标”应转化为可持续运行的管理闭环:明确…

2026/8/11 11:09:04 阅读更多 →

最新新闻

储能行业出海战略与技术创新解析

储能行业出海战略与技术创新解析

1. 储能行业出海战略解析 上能电气2025年财报中,储能业务海外市场表现尤为亮眼。作为国内最早布局海外储能市场的企业之一,公司通过"产品服务本地化"三位一体策略,在欧洲、北美和亚太三大区域市场实现了突破性增长。 1.1 海外市场…

2026/8/11 11:49:22 阅读更多 →
Python-for-Android:用Python代码构建原生Android应用的革命性工具

Python-for-Android:用Python代码构建原生Android应用的革命性工具

Python-for-Android:用Python代码构建原生Android应用的革命性工具 【免费下载链接】python-for-android Turn your Python application into an Android APK 项目地址: https://gitcode.com/gh_mirrors/py/python-for-android 想象一下,你是一名…

2026/8/11 11:49:22 阅读更多 →
构建自改进RLM智能体:突破AI编程从单次应答到持续自治的瓶颈

构建自改进RLM智能体:突破AI编程从单次应答到持续自治的瓶颈

如果你是一位开发者,最近可能已经感受到了AI编程助手带来的效率提升。从简单的代码补全到复杂的函数生成,工具确实帮我们节省了不少时间。但你是否遇到过这样的困境:面对一个需要多步骤、长时间运行的复杂开发任务,比如重构一个模…

2026/8/11 11:49:22 阅读更多 →
ZXP安装器终极指南:3分钟搞定Adobe插件安装的免费神器

ZXP安装器终极指南:3分钟搞定Adobe插件安装的免费神器

ZXP安装器终极指南:3分钟搞定Adobe插件安装的免费神器 【免费下载链接】ZXPInstaller Open Source ZXP Installer for Adobe Extensions 项目地址: https://gitcode.com/gh_mirrors/zx/ZXPInstaller 还在为Adobe插件的安装流程感到头痛吗?每次面对…

2026/8/11 11:49:22 阅读更多 →
题解:洛谷 P1744 采购特价商品

题解:洛谷 P1744 采购特价商品

本文分享的必刷题目是从蓝桥云课、洛谷、AcWing等知名刷题平台精心挑选而来,并结合各平台提供的算法标签和难度等级进行了系统分类。题目涵盖了从基础到进阶的多种算法和数据结构,旨在为不同阶段的编程学习者提供一条清晰、平稳的学习提升路径。 欢迎大…

2026/8/11 11:49:22 阅读更多 →
木马与蠕虫:数字世界的特洛伊木马与不死毒蛇

木马与蠕虫:数字世界的特洛伊木马与不死毒蛇

🔒 木马与蠕虫:数字世界的特洛伊木马与不死毒蛇紫禁玄科 | 2026年8月10日📌 导读:从2000年横扫全球的"ILOVEYOU"情书蠕虫,到至今仍在暗网活跃的Emotet僵尸网络,木马病毒与蠕虫病毒已造成超过数千…

2026/8/11 11:48:21 阅读更多 →

日新闻

如何用Video2X实现专业级视频画质提升:AI视频增强完整指南

如何用Video2X实现专业级视频画质提升:AI视频增强完整指南

如何用Video2X实现专业级视频画质提升:AI视频增强完整指南 【免费下载链接】video2x A machine learning-based video super resolution and frame interpolation framework. Est. Hack the Valley II, 2018. 项目地址: https://gitcode.com/GitHub_Trending/vi/v…

2026/8/11 0:00:02 阅读更多 →
前后端分离项目中控制台与接口工具数据差异排查指南

前后端分离项目中控制台与接口工具数据差异排查指南

1. 问题现象解析:控制台与Apifox的数据差异 最近在调试一个前后端分离项目时,遇到了一个典型问题:后端服务在本地开发环境控制台能正常输出查询数据,但通过Apifox测试时却返回空结果。这种"控制台有数据,接口工具…

2026/8/11 0:00:03 阅读更多 →
AI编程实战:从Claude Code踩坑到游戏开发入门

AI编程实战:从Claude Code踩坑到游戏开发入门

1. 从“AI能帮我做游戏”到“AI让我重新学编程”最近身边不少朋友,尤其是一些非技术背景、但对游戏开发有浓厚兴趣的朋友,都在问我同一个问题:“听说现在用Claude Code这种AI编程工具,小白也能做游戏了,是真的吗&#…

2026/8/11 0:00:03 阅读更多 →

周新闻

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁 【免费下载链接】baidupankey 在线查询网盘提取码(维护中 rm repo) 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 你是否曾经在深夜寻找一份重要资料&#x…

2026/8/11 1:08:05 阅读更多 →
如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南 【免费下载链接】chinese_license_plate_generator 中国车牌生成器 项目地址: https://gitcode.com/gh_mirrors/ch/chinese_license_plate_generator 中国车牌生成器是一个基于Python的开源项目&#xff0c…

2026/8/11 1:08:05 阅读更多 →
收藏!小白程序员轻松入门大模型,从Harness工程开始实践

收藏!小白程序员轻松入门大模型,从Harness工程开始实践

文章强调学习大模型不应只关注模型本身,而应重视模型外的系统搭建,即Harness。提出AgentModelHarness的实用公式,详细介绍Harness的四个层次:持久化层、执行层、控制层和观察与验证层。文章还探讨了上下文工程、工具设计、AGENTS.…

2026/8/11 1:08:05 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/10 17:07:33 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/11 1:08:06 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/10 17:07:33 阅读更多 →