审批流程可以用到什么模式?

大家好
最近在做审批相关的内容。目前拿到了一个以前的审批模块,是可用的,但是审批本身跟被审批的产品掺杂在了一块。
比如在提交审批时,一是要操作审批相关的表,一是要操作被审批产品的状态等。这两个操作现在写在了一起,这样拿到我这里时是不适用了。
该用什么模式把审批本身和被审批产品分开呢?建造者?模板?监听器?
希望指点,谢谢

在考虑通用性的时候首先考虑接口,审核过程是接口,被审核的内容也是接口。