java mysql 权限状态、流程问题

最近组里的小伙伴对一条数据进行流程审批,不同角色看到同一条数据状态不同,并且要记下审批流程,结果发现小伙伴在设计数据库的时候在一条数据中加了状态字段status,用1标记到10,分别代表不同状态,最后前端判断不过来,懵逼啦~~~~

在这里我总结下,列如:业务部门business(提交),质检部门quality(审核),审核组audit(终审)

第一种方案:

在创建业务表的时候,添加3个字段,分别代表business、quality、audit状态,例如:

business状态可以分为:0-待提交 1-审核中 2-审批通过 3-审批驳回

quality状态可以分为:0-待审核 1-通过 2- 驳回

audit状态可以分为:0-待审核 1-通过 2- 驳回

但是这样不好扩展,中间要是加一级,表和业务代码都要重新编写

第二种方案:

在创建业务表的时候,在创建一个状态表,其中一个字段记录业务表id,一个字段记录角色,当生成一条业务数据后,自动插入一条business角色状态数据,当business角色提交数据后,自动插入一条quality角色状态数据,依次类推就行。这种方式便于以后业务扩展。

针对流程记录,也要新建一个流程表,单独记载每个角色操作的状态,然后根据时间排序,自然可以取出审批流程记录。

个人偏向第二种设计,工作中使用比较方便,而且不会乱,根据不同角色直接把数据返给前端,。如果其他小伙伴有更好的方案,也可以一起交流下~~~~

相关推荐
怣502 小时前
MySQL排序分组限制:零基础速成语法(零基础入门版)
数据库·mysql
CDA数据分析师干货分享2 小时前
【干货】CDA一级知识点拆解1:《CDA一级商业数据分析》第1章 数据分析思维
数据库·人工智能·数据分析·cda证书·cda数据分析师
数据知道2 小时前
PostgreSQL 核心原理:如何从日志中定位死锁根源(死锁检测与预防)
数据库·postgresql
物联网软硬件开发-轨物科技2 小时前
【轨物方案】告别“盲维”时代:如何不动一根电线,帮老旧电站找回消失的 5% 收益?
服务器·网络·数据库
司沐_Simuoss3 小时前
Text to SQL系统的千层套路~
数据库·人工智能·sql·语言模型·系统架构
ptc学习者3 小时前
验证mysql RR隔离水平,并未完全实现防止幻读的实验
数据库
小天源3 小时前
银河麒麟 V10(x86_64)离线安装 MySQL 8.0
android·mysql·adb·麒麟v10
qq_12498707533 小时前
基于协同过滤算法的运动场馆服务平台设计与实现(源码+论文+部署+安装)
java·大数据·数据库·人工智能·spring boot·毕业设计·计算机毕业设计
数据知道4 小时前
PostgreSQL 核心原理:读已提交与可重复读的底层实现差异(事务隔离级别)
数据库·postgresql