前段时间,和客户交流的时候聊到一个需求,对方希望业务逻辑能可视化操作配置化实现,并且还可以复用,避免每次从头开始。
在这个需求变化快的数字化时代,其实这是很多企业想要实现的需求。希望不用写代码也能处理复杂业务,逻辑清晰,好维护,可以像工具箱一样随时调用。
其实早在我们做项目的时候也是想有一套这样的系统,于是我们自己研发了JVS-Logic。
逻辑引擎架构图
逻辑引擎的定位
- 核心功能:提供界面化、易于基础能力扩展的,实时配置、调试、发布的程序设计与运行执行的环境。
- 使用人群:具备一定技术认知的实施人员(懂一些技术的产品经理、需求经理,懂业务的技术人员等)
- 基础价值:业务功能实现的低成本、高质量、高效率,降低对技术人员的依赖度。
JVS逻辑引擎是一套零代码、界面化、配置式的服务编排平台,通过拖拽连接企业系统/API/数据库/数据等各种基础设施,自助式编排业务自动化执行流程,降低对代码、部署等技术依赖度,敏捷响应业务变化。
传统开发中,业务逻辑一般是写代码去实现,不管是修改还是构建,都得由程序员来完成。而JVS逻辑引擎通过流程编排 + 拖拽式开发的方式,将条件判断、循环执行、分支选择等逻辑结构直观的呈现。例如,一个“审批是否需要上级审核”的判断逻辑,在JVS中只需拖拽几个节点即可完成,业务人员也能轻松调整规则。
逻辑编排的意义在于跳出底层的代码细节,以数据流转的方式思考业务逻辑。通过这种方式,可以将业务逻辑抽象为可复用的组件,每个组件对数据进行相应处理或者根据数据执行相应动作,从而达到复用业务逻辑的目的。
通过“逻辑应用扩展接口”组件,一个逻辑可以嵌套调用另一个逻辑的结果,实现层级化复用。
再强大的可视化编排也无法覆盖所有场景,特别是复杂计算或动态数据处理。但在JVS逻辑引擎中,提供了Groovy脚本节点,允许在流程中嵌入代码:
- 动态字段组合:通过脚本拼接JSON数据,满足个性化接口需求。
- 复杂计算:如阶乘计算、数据脱敏等,脚本可直接操作流程变量。
- 调试支持:脚本节点支持实时调试,输入输出数据一目了然。
系统内还提供了类Excel函数公式,支持数据动态加工
- 公式示例:SUM(A1:A10)计算数组和,IF(A>0, "正数", "负数")实现条件判断。
JVS逻辑引擎可以被多种场景触发,比如:
- 表单事件:提交、失焦、自定义按钮点击;
- 流程审批:同意/拒绝操作时触发附加逻辑;
- 定时任务:每日数据汇总、接口巡检;
- 外部API:其他系统通过接口调用JVS逻辑。
JVS逻辑引擎不仅能配置化搭出页面,还能逻辑编排,实现从简单表单到复杂业务流的全链路覆盖。
在线demo:logic.bctools.cn
基础框架开源地址:gitee.com/software-mi…