package com.njcn.mapper.user;

import com.njcn.pojo.user.Depts;
import org.apache.ibatis.annotations.Param;
import tk.mybatis.mapper.common.Mapper;

import java.util.List;

public interface DeptsMapper extends Mapper<Depts> {
	//查询Id
	Depts selectName(@Param(value = "parentNodeId") String parentNodeId);

	//查除去自己的父节点
	List<Depts> selparentnode(@Param(value = "deptsIndex") String deptsIndex);

	List<Depts> selectDeptAll();

	List<Depts> selectDeptAlls();

	//查询除此之外的名称
	List<Depts> selName(@Param(value = "deptsIndex") String deptsIndex);

	int updateDepts(Depts depts);

	//根据区域名模糊查询部门
	Depts queryDeptsByLikeAreaName(@Param("area") String area);

	//根据选中的部门进行查询
	List<Depts> getId(@Param(value = "deptsIndex") String deptsIndex);

	//获取行政名称
	List<String> getAreaName();

	Depts selByName(@Param(value = "detpsName") String detpsName);

	//判断desc是否缺失
	int getDeficDesc(@Param(value = "parentNodeId") String parentNodeId);

	/**
	 * 判断是否有子节点
	 */
	List<Depts> getNodeLength(@Param(value = "parentNodeId") String parentNodeId);

	String getParentArea(@Param("area") String area);

	/**
	 * 根据父节点获取直接下属部门
	 */
	List<Depts> getDirectDeptsByNode(String node);


	List<Depts> getNoDirectDeptsByNode(String node);
	/**
	 * 根据父节点获取其下子子孙孙部门
	 */
	List<Depts> getDeptsByNode(String node);

	/**
	 * 根据部门索引获取部门详细信息
	 */
	Depts selectDeptsByDeptsIndex(String deptsIndex);

	//根据省份ID查询子部门
    List<Depts> getDeptsByNodeUp(String deptsIndex);
    

	
	List<Depts> getAllDeptByPro(@Param("proIndex")Long proIndex);
}
