⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 departmentmanager.java

📁 基于java的组号查询模块
💻 JAVA
字号:
package com.lily.dap.service.organize;

import java.util.List;

import com.lily.dap.model.organize.Department;
import com.lily.dap.service.Manager;
import com.lily.dap.service.core.exception.DataHaveIncludeException;
import com.lily.dap.service.core.exception.DataNotExistException;
import com.lily.dap.service.core.exception.DataNotIncludeException;

/**
 * DepartmentManager.java
 * 
 * <br>作者: 刘鹏
 *
 * <br>日期: 2006-3-7
 *
 * <br>版权所有:淄博百合软件
 */
public interface DepartmentManager extends Manager {
	/**
     * <p>清除系统组织机构信息,初始化建立总公司信息
     * <p>前置条件: 
     * <p>	1-总公司代码、名称不允许为空 
     * <p>后置条件:
     * <p>	1-移除人员对应的岗位信息(包括人员相关用户信息、用户关联角色信息)
     * <p>	2-删除岗位信息(包括岗位相关人员信息、关联角色信息)
     * <p>	3-删除部门及分公司、总公司信息
     * <p>	4-添加总公司信息
     * <p>	5-返回添加的的总公司信息
     * 
     * @param name 要添加的总公司名称
     * @param code 要添加的总公司代码
     * @param type 公司的类型
     * @param des 要添加的总公司说明
     * @return 返回添加的总公司信息
     */
	public Department initOrganize(String code, String name, String des);
	
	/**
     * 检索根部门信息
     * 
     * @return 返回检索到的部门信息
     * @throws DataNotExistException 检索数据不存在异常
     */
    public Department getRootDepartment() throws DataNotExistException;
	
	/**
	 * 根据部门类型获取部门信息列表
	 * @param type 部门类型
	 * @return List{Department}
	 */
	public List getDepartments(int type);
    
	/**
	 * 获取部门(id)的下级部门信息,只包含第一层下级部门
	 * <br>前置条件:
	 * <br>1、部门必须存在;
	 * <br>2、部门按照code升序排列
	 * @param id 部门id
	 * @return List{Department}
	 */
	public List getChildDepartments(long depart_id);
	
	/**
	 * 获取父部门(包括父部门)下面的所有部门(级联子部门)
	 * 
	 * @param parent_id
	 * @return
	 */
	public List getAllChildDepartments(long parent_id);
	
	/**
	 * 获取部门下所有岗位(不包括子部门的岗位)信息,以岗位代码排序
	 * 
	 * @param depart_id 部门id
	 * @return List{Post}
	 */
	public List getPosts(long depart_id);
	
	/**
	 * 获取人员对应的岗位信息列表
	 * 
	 * @param person_id 人员id
	 * @return List{Post}
	 */
	public List getPostsByPerson(long person_id);
	
	/**
	 * 给岗位赋人
	 * 前置条件:
	 * 1、岗位必须存在;
	 * 2、人员必须存在;
	 * 3、人员不在这个岗位中存在,如果已经存在了,抛出DataHaveIncludeException异常
	 * @param post_id 岗位id
	 * @param person_id 人员id
	 */
	public void addPostPerson(long post_id, long person_id) throws DataNotExistException, DataHaveIncludeException;
	
	/**
	 * 移除岗位中的人员
	 * <br>前置条件:
	 * <br>1、岗位必须存在;
	 * <br>2、人员必须存在;
	 * <br>后置条件:
	 * <br>1、移除人员继承的岗位权限;
	 * <br>2、移除岗位人员的关系
	 * @param post_id 岗位id
	 * @param person_id 人员id
	 * @throws DataNotExistException
	 * @throws DataNotIncludeException 岗位包含此人员,如果不包含,抛出DataNotIncludeException异常
	 */
	public void removePostPerson(long post_id, long person_id) throws DataNotExistException, DataNotIncludeException;
	
	/**
	 * 指定姓名、指定部门(查询部门下所有人员,包括其下级部门)、
	 * <br>指定岗位(查询岗位下所有人员)
	 * 
	 * @param depart_id 部门id
	 * @param post_id 岗位id
	 * @param person_name 人员姓名
	 * @return List{Person}
	 */
	public List getPersons(long depart_id, long post_id, String person_name);
	
	/**
	 * 获取岗位下人员数量
	 * 前置条件:
	 * 1、department_id必须存在
	 * @param depart_id
	 * @param post_id
	 * @return int
	 */
	public long getPostPersonNum(long post_id);
	
	/**
	 * 获取部门以及下级部门的人员总数
	 * @param depart_id 部门id
	 * @return int
	 */
	public long getDepartPersonNum(long depart_id);
	
	/**
	 * 根据部门name获取部门对象
	 * 
	 * @param name
	 * @return
	 */
    public Department getDepartment(String name);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -