一个部门必须存在员工,并且还有部门领导,而且一个部门可能不止一个领导,还有多级领导。
那么问题来了。要实现通过部门id找到一个部门内部的最高领导和最低级领导的员工。请问部门内的员工和领导存储在数据库中,都用一个数据表存呢,还是用多个数据表存了。
如果是用一个数据表存部门员工以及员工领导,最少需要哪些字段?怎么标识员工是不是部门领导,怎么确定领导员工的领导级别?
如果是分开存,需要哪些数据表类型,每个数据表最少需要哪些字段?怎么确定领导员工的领导级别?
举个例子,
例子1:审批问题,某个员工申请了请假单,请假单需要该员工的部门内部领导审批,而且至少是多级领导审批,审批通过了,请假就批准,现在问题来了,怎么找员工所在部门的最低级领导员工呢?
例子2:我不是A部门的员工,我要怎么找A部门里的最低级的领导员工?
我们公司人少,经常出现一个人从属多个部门,担任多个部门领导的情况,所以我们是这样的:
一个表存所有员工,包括领导的基本信息,姓名年龄入职年份等。
一个表存部门信息,部门名称,职能等。
一个表存员工与部门的从属关系,担任职位。
我们行政管理关系和工作组织关系是分开的,所以行政上的上下级管理关系是另一个表。