java - 多状态审核业务如何抽象进行开发?是否有一般的处理模型?
大家讲道理
大家讲道理 2017-04-17 18:00:45
0
3
463

现有一个审核业务,需要逐层流转审批;当前的做法是用一张表存储需要审核的业务数据,用一个字断枚举当前的审核状态,现在枚举状态达到40个,逻辑处理变得复杂并且难以扩展;这种纵向累加式做法是不可取的,请问有经验的前辈该如何处理此问题?

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

répondre à tous(3)
大家讲道理

Utilisez bpm pour le résoudre

伊谢尔伦

Si vous ne prévoyez pas d'utiliser un moteur de workflow mature, je pense que vous pouvez y penser de cette façon : pour séparer les nœuds de processus du statut, vous pouvez créer une table de processus et définir les étapes clés du processus sous forme d'enregistrements, y compris les parties supérieure et inférieure du processus. Une étape, le statut, l'étape suivante. Utilisez ce tableau pour identifier le flux de ce flux de travail. Cela aura également une meilleure évolutivité.

大家讲道理

Ce que l'interrogateur a dit est difficile à étendre, cela signifie-t-il qu'il y a trop d'états et que la transition entre les états est semblable à un réseau, ce qui amène le code à modifier l'état à répartir dans tout le programme, donc le résultat direct c'est : en fin de compte, personne ne peut Clarifier la relation entre les transitions entre les états et modifier la logique d'un état entraînera des changements dans l'ensemble du programme, entraînant des risques élevés.
Je pense donc que si la transition entre les états est très compliquée, elle peut être résolue via une machine à états. La relation de transition entre les états peut être résolue par la configuration, et la relation de transition entre les états peut être intégrée dans le modèle de machine à états. .
Pour plus de détails, vous pouvez vous référer à un modèle de machine à états que j'ai résumé auparavant : State Machine

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal