数据库设计问题(业务审批流程)

数据库设计问题(业务审批流程),第1张

1、用户

用户ID

用户角色(1:业务员,2:经理,3:总经理,4:总裁。。。)

用户姓名

2、客户表

客户ID

客户名称

3、业务员客户表

用户ID(其实就是用户表里的用户角色为业务员的用户)

客户ID

4、业务员移交客户申请表

申请人用户ID

申请移交的客户ID

审批状态(0:审批中,1:已审批。。。。)

移交后用户ID

5、请假表

用户ID

请假开始时间

请假结束时间

请假类别(1:事假、2:病假、3:婚假。。。。。)

审批状态(0:审批中,1:已审批。。。。)

6、周报表

用户ID

周报月份

审批状态(0:临时保存,1:已提交,2:经理已审批,3:总经理已审批。。。。)

其实具体控制,你要在程序里进行流程控制,并没有你说的那种自动控制,不过这样的表结构设计是可以满足你后期不用再动数据库,只用修改业务流程即可

从设计上:数据库设计过程中,我们需要一个流程定义表,用于存储我们业务规定的流程。还需要申请表,用于存储员工的申请单(在请假模块中,称之为“请假单”)。审批表,用于存储对申请单审批的意见以及结果数据。还要一个审批流转表。判断审批过程 ,张三不同意怎么解觉等问题。。。。

i. 需要根据业务规定,填写流程定义。(单表的增加 *** 作)

ii. 数据流转:首先,后台管理员登录流程管理模块,点击流程管理,选择“添加流程定义”,填写相关的流程定义的表单,选择流程定义的类型,(比如:请假申请、资产申请、报销申请等。)当前请假模块中,我们默认只有请假申请。添加审批人,最后提交该表单,交给后台的action。Action首先校验所有的审批人是否合法(例如,审批人是否具备当前功能模块的权限),action再依赖Service完成先关的业务处理,service中,可以直接调用DAO,完成数据的持久,即:将数据,添加到流程定义表中。

b) 取得待审任务

i. 用户登录系统,会发起一个请求,查看是否有待审任务。或者,用户自行去点击“待审任务”按钮。此时,后台接收到当前请求,从session中获得当前用户的id,到任务表中查询相关的请假单的id。将所有的id,通过持久层取出来,展示到相关页面上。

c)审批请假单

i. 首先取得待审任务,选择一条申请单,点击“审批”按钮,填写审批意见,并且选择同意或者拒绝,提交表单到action中,调用service将当前审批意见保存到数据库。

ii. 接着:查询流程定义中,是否有下一个审批人。如果有,则修改申请表中的状态为待“下个人”审批。如果没有下一个人审批,则修改状态为结束。

iii. 然后:如果还有下个审批人,将先关的任务修改当前审批人字段,修改成下一个审批人。如果没有,则删除相关的任务数据。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/6424821.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-03-22
下一篇2023-03-22

发表评论

登录后才能评论

评论列表(0条)

    保存