package org.jeecg.modules.system.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.jeecg.modules.basedata.entity.FdPersonnel;
import org.jeecg.modules.system.entity.SysDepart;
import org.jeecg.modules.system.model.SysDepartTreeModel;
import org.jeecg.modules.system.model.TreeModel;
import org.springframework.data.repository.query.Param;

import java.util.List;

/**
 * <p>
 * 部门 Mapper 接口
 * <p>
 * 
 * @author： Steve
 * @Since：   2019-01-22
 */
public interface SysDepartMapper extends BaseMapper<SysDepart> {

	/**
	 * @Author gurui
	 * @Description //TODO
	 * @Date 下午5:40 16/9/2019
	 * @Param
	 * @return
	 **/
	List<SysDepart> findAll();

	/**
	 * 根据用户ID查询部门集合
	 */
	public List<SysDepart> queryUserDeparts(@Param("userId") String userId);

	/**
	 * 查询全部部门集合
	 */
	public List<SysDepart> getAllDepart();

	/**
	 * 新增
	 */
	public int addDepart(SysDepart sysDepart);

	/**
	 * 修改
	 */
	public int updateDepart(SysDepart sysDepart);

	/**
	 * 根据type查询部门或者公司
	 */
	public List<SysDepart> getByType(@Param("id")String id);

	List<SysDepart> getByOrgId(String parent);

	/***
	 * @Title:
	        * @Description:TODO 根据人员查询所偶公司部门
	        * @param [list]
	        * @return java.util.List<org.jeecg.modules.system.entity.SysDepart>
	        * @exception
	        * @author 陈创
	        * @date 2020/4/22 16:51
	        * @updatehistory:
	 *   2020/4/22 16:51 新增
	        */
	List<SysDepart> getBatchByPerId(@Param("list")List<FdPersonnel> list);

	/***
	 * @Title:
	        * @Description:TODO 根据人员id查询上海公司的部门
	        * @param [list]
	        * @return java.util.List<org.jeecg.modules.system.entity.SysDepart>
	        * @exception
	        * @author 陈创
	        * @date 2020/4/22 16:51
	        * @updatehistory:
	 *   2020/4/22 16:51 新增
	        */
	List<SysDepart> getBatchByPerIdAndOrgId(@Param("list")List<FdPersonnel> list);

	/***
	 * @Title:
	        * @Description:TODO 根据人员id查询苏州公司部门
	        * @param [list]
	        * @return java.util.List<org.jeecg.modules.system.entity.SysDepart>
	        * @exception
	        * @author 陈创
	        * @date 2020/4/22 16:51
	        * @updatehistory:
	 *   2020/4/22 16:51 新增
	        */
	List<SysDepart> getBatchByPerIdSuZhou(@Param("list")List<FdPersonnel> list);

	/***
	 * @Title:
	        * @Description:TODO 根据人员id查询上海公司的临床部门
	        * @param [list]
	        * @return java.util.List<org.jeecg.modules.system.entity.SysDepart>
	        * @exception
	        * @author 陈创
	        * @date 2020/4/22 16:52
	        * @updatehistory:
	 *   2020/4/22 16:52 新增
	        */
	List<SysDepart> getBatchByPerIdZhengZhou(@Param("list")List<FdPersonnel> list);
}
