稽核规则引擎重构:从大量分支到可扩展规则

记录采购协同平台稽核规则引擎的重构思路,以及策略、工厂和模板方法在项目中的使用。

采购协同平台需要适配不同医院的个性化稽核需求。如果所有规则都直接写在主流程里,新增规则和调整已有规则都会影响很多代码。

为什么要重构

规则数量增加后,常见问题包括:

  • 主流程里出现大量条件分支;
  • 不同规则之间相互影响;
  • 新增规则需要修改旧代码;
  • 测试范围越来越难控制。

项目中采用的方式

项目中使用策略模式、工厂模式和模板方法对稽核规则引擎进行重构:

  • 策略模式负责封装不同稽核规则;
  • 工厂模式负责根据配置选择规则;
  • 模板方法统一规则执行的公共流程。

重构后支持追溯码稽核、退库单稽核等多维度能力,降低新医院适配难度,显著缩短改造周期。规则配置和实现保持相对独立,便于扩展不同医院的个性化要求。

重构之后关注什么

规则引擎不只是代码结构调整,还要保证规则结果可解释、异常能定位、旧规则行为不被无意改变。对于这类核心模块,测试和灰度验证同样重要。