前言
一开始在设计单据状态的时候,是考虑了将所有单据状态的字典项全部规划好啦,但是实际使用,可能不同的业务其单据的字典项内容不同,例如客户要求的到货单单据状态五种状态分为:待收货、待复核、已复核、已入库、拒收,每个状态对应不同的业务处理流程,在我原始设计中单据状态有九种分为:待收货,待复核,已复核,待检验,检验中,已检验,免检,已入库,拒收;在这里到货单的单据状态就相对于没有检验的过程。
那么如何很好地处理这个问题呢?
这就不得不提到拷贝数据字典啦,好处就是只需要改变字典代码就可以用原来的一套处理方式,变动是最小的。
逻辑
利用字典主键获取所有的字典项,并将字典项挂到一个全新的字典代码里面,将原有的字典代码替换成全新的字典代码就可以啦,顺便提一下,为了保证数据不出错,使用了事务回滚。
前端
这里逻辑和【数据字典自动生成枚举】 这篇文章基本一致。
在【菜单管理】模块里面查看【数据字典】的组件路径并为其添加上【复制】的事件和