8.3.3 部门管理

8.3.3 部门管理

1.部门树形展示

根据部门的主键id和部门的parent_id(父级部门主键id),使用My Batis的递归查询sys_dept表的所有记录,映射到List〈SysDept〉集合中,通过Controller层提供接口/dept/list,将List〈SysDept〉集合序列化为json数据,再返回给前端调用,前端获取json数据并渲染到页面上。部门查询页面如图8-19所示。

图8-19 部门查询页面

2.部门添加

前端提交表单后,服务端接收到添加后的部门对象,由Controller层传到Mapper层并执行SQL命令,再将命令添加到数据库。添加部门页面如图8-20所示。添加部门成功后的页面如图8-21所示。

图8-20 添加部门页面

图8-21 部门添加成功后的页面

3.部门编辑

前端对部门进行编辑并提交后,服务端接收到编辑后的部门对象,由Controller层传到Mapper层并运行SQL语句,根据部门的主键id修改数据库。编辑部门页面如图8-22所示。编辑部门成功后的页面如图8-23所示。

图8-22 编辑部门页面

图8-23 编辑部门成功后的页面

4.部门删除

前端提交要删除角色的主键id,服务端接收到要删除的角色对象,首先要判断删除的部门下是否有所属员工,如果有所属员工,则不允许删除,否则可以删除,由Controller层传到Mapper层并运行SQL语句,根据部门的主键id删除数据库。部门是否删除提示信息如图8-24所示。部门删除成功后的页面如图8-25所示。

图8-24 部门是否删除提示信息

图8-25 部门删除成功后的页面