企业财税税表动态公式计算引擎产品系统

我要开发同款
codett2026年08月17日
2阅读

技术信息

语言技术
JavaSpringMybatisSpringCloudMySQL
系统类型
Web
行业分类
金融企业服务

作品详情

行业场景

该模块应用于企业增值税申报和财务取数场景。税表主表与多张附表之间存在大量跨表、跨栏次的联动计算关系,传统实现将计算规则硬编码在业务代码中,当税表字段、计税规则或栏次关系发生变化时,需要重新修改代码、测试和发布,维护成本较高。同时,不同公式之间存在先后依赖,财务取数前后需要分别执行部分计算,容易出现计算顺序错误、空值处理不一致和金额精度问题。为解决以上问题,将税种、税表、栏次、目标字段、表达式及计算轮次进行配置化管理,使税表计算规则能够在不修改核心业务代码的情况下进行调整。

功能介绍

系统提供税表公式配置、公式格式校验、跨表字段引用、计算轮次控制、财务取数前置计算、取数后联动计算及计算结果回写等功能。公式配置可以指定税种、税表、栏次、目标列字段、计算表达式、执行轮次和前置计算标记;支持在表达式中引用增值税主表及多张附表的指定栏次和字段。引擎内置加、减、乘、除、赋值、负数归零、两数取小值及指定精度乘法等自定义函数,使用BigDecimal处理金额精度、四舍五入、空值和除零场景。系统按照配置的计算轮次顺序加载规则,解析字段坐标,读取对应税表数据,执行表达式并将结果写回目标字段。

项目实现

本人提出配置化动态计算方案并独立完成该模块后端代码。首先设计税表公式数据模型,将税种编码、税表编码、栏次、目标字段、公式、计算轮次及前置计算标记持久化,并实现公式配置的新增、修改、删除、查询和格式校验接口。基于AviatorScript封装统一表达式执行服务,自定义实现ADD、SUB、MUL、DIV、ASSIGN、LTZAZ、N1LTN2和MULHELP等财税计算函数,统一使用BigDecimal处理金额计算、空值、除零和精度控制。设计税表字段坐标解析规则,根据税表编码、栏次和字段描述动态定位数据,将字段值组装为表达式上下文,执行后通过反射写回目标税表字段。通过Feign从主数据服务获取公式配置,按照计算轮次排序,并分别在财务取数前后执行联动计算,完成原有硬编码计算逻辑向配置驱动模式的改造,同时参与需求确认、方案设计、联调、上线及异常排查。

示例图片

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论