3分钟零代码配置带审批流的报销单:JVS三引擎可视化串联实战
技术视角:为什么报销单是低代码能力验证的关键场景
报销业务具备高频、多角色、规则明确、状态可追溯四大特征,是检验低代码平台真实交付能力的理想入口。其典型链路包含员工提交→部门初审→财务复核→领导终审,各环节对数据完整性、路由准确性、状态可见性与操作可审计性均有刚性要求。传统Excel+微信方式导致附件分散、状态黑盒、校验缺失——这些问题并非人力不足所致,而是缺乏可配置的数据采集层、可声明的流程控制层与可编排的自动化执行层。
JVS三引擎架构:分层解耦的技术实现原理
JVS采用清晰分层设计,三大引擎职责分离但事件驱动互通:
- 表单引擎(JVS-form):提供可视化组件库与数据约束能力。支持金额输入框(含数值范围校验)、下拉选择(费用类型)、多文件上传(附件数量限制)、必填标记等,所有配置生成标准JSON Schema,作为后续流程与逻辑的结构化输入源。
- 流程引擎(JVS-flow):基于表单提交事件触发,以节点+连线+条件表达式构建有向无环图(DAG)。支持动态分支(如
amount > 5000)、节点退回、抄送配置、手写签名强制校验等,输出标准化流程实例ID与节点执行日志。
- 逻辑引擎(JVS-logic):接收表单或流程事件作为输入,通过拖拽式节点编排实现后置自动化。核心能力包括:
- 公式计算节点:调用内置函数(如CONCAT('BX', FORMAT_DATE('yyyyMMdd'), AUTO_INCREMENT(5)))生成流水号;
- 更新模型节点:将计算结果回填至表单指定字段(如报销单号);
- 通知节点:调用Webhook(钉钉/企业微信)或发送站内信,传入上下文变量(如{{applicantName}}、{{flowStatus}})。
三者通过统一事件总线(如form.submit.success)松耦合通信,所有配置变更实时生效,无需编译部署。

实操步骤:三步完成可运行报销应用(含关键配置点)
整个过程在浏览器中完成,不依赖本地开发环境,所有操作均可截图复现、版本可回溯。

第一步:配置结构化报销表单
- 拖入组件:金额输入框(设置type: number, min: 0)、事由多行文本、费用类型下拉框(预设值:差旅/招待/办公)、发票附件上传(设置minFiles: 1, accept: .pdf,.jpg,.png);
- 开启提交前校验:勾选‘启用客户端校验’与‘服务端强制校验’双保险;
- 数据设置:开启‘自动保存草稿’与‘提交后清空缓存’。
第二步:绑定条件驱动审批流程
- 在表单设计器点击‘关联流程’,进入流程画布;
- 添加4个用户节点:发起人(自动填充提交人)、部门负责人(按组织架构自动匹配)、财务专员(固定角色)、分管领导(角色+条件触发);
- 在部门负责人节点后添加条件分支:
- 条件表达式:{{form.amount}} > 5000;
- 真分支:连接至‘分管领导’;
- 假分支:直连‘财务专员’;
- 为财务节点配置‘抄送’动作,目标角色:财务主管。
第三步:注入自动化逻辑(关键后置处理)
- 进入表单‘数据设置’→‘提交后逻辑’,跳转至逻辑引擎画布;
- 添加节点序列:
- 公式计算节点:表达式为CONCAT('BX', FORMAT_DATE('yyyyMMdd'), LPAD(AUTO_INCREMENT(5), 5, '0'));
- 更新模型节点:目标模型=当前表单,字段=报销单号,值={{calculation.result}};
- 发送站内信节点:接收人={{form.creator}},标题=【报销已提交】单号:{{form.报销单号}},内容=审批流程已启动,请留意后续通知。

发布与演进:轻应用打包与可持续维护机制
完成配置后,使用JVS-AppM模块将表单、流程、逻辑三者打包为独立轻应用(.appm包),生成唯一AppID。发布时可选择:
- 全员工作台首页快捷入口;
- 按组织架构定向推送至指定部门;
- 生成H5链接嵌入OA门户或企业微信菜单。
所有后续迭代均在原配置界面完成:
- 修改金额阈值?直接编辑流程分支条件表达式;
- 新增附件类型?在表单上传组件中扩展accept属性;
- 补充审批节点?拖入新角色节点并重连路径;
- 调整通知模板?编辑站内信节点内容区,支持变量插值。
所有变更实时生效,无重启、无灰度、无版本冲突,台账数据自动沉淀至统一模型,支持SQL查询与BI对接。
更多推荐


所有评论(0)