package doumeemes.service.ext; 
 | 
  
 | 
import doumeemes.core.model.PageData; 
 | 
import doumeemes.core.model.PageWrap; 
 | 
import doumeemes.dao.business.model.Company; 
 | 
import doumeemes.dao.business.model.Department; 
 | 
import doumeemes.dao.ext.dto.QueryDepartmentExtDTO; 
 | 
import doumeemes.dao.ext.vo.CompanyExtListVO; 
 | 
import doumeemes.dao.ext.vo.DepartmentExtListVO; 
 | 
  
 | 
import java.util.List; 
 | 
  
 | 
/** 
 | 
 * 组织信息Service定义 
 | 
 * @author 江蹄蹄 
 | 
 * @date 2022/04/20 10:59 
 | 
 */ 
 | 
public interface DepartmentExtService { 
 | 
  
 | 
    /** 
 | 
     * 分页查询 
 | 
     * @author 江蹄蹄 
 | 
     * @date 2022/04/20 10:59 
 | 
     */ 
 | 
    PageData<DepartmentExtListVO> findPage(PageWrap<QueryDepartmentExtDTO> pageWrap); 
 | 
    /** 
 | 
     * 创建 
 | 
     * @author Eva.Caesar Liu 
 | 
     * @date 2022/04/18 18:12 
 | 
     */ 
 | 
    Integer create(Department DepartmentExt); 
 | 
  
 | 
    /** 
 | 
     * 主键删除 
 | 
     * @author Eva.Caesar Liu 
 | 
     * @date 2022/04/18 18:12 
 | 
     */ 
 | 
    void deleteById(Integer id); 
 | 
  
 | 
    /** 
 | 
     * 批量主键删除 
 | 
     * @author Eva.Caesar Liu 
 | 
     * @date 2022/04/18 18:12 
 | 
     */ 
 | 
    void deleteByIdInBatch(List<Integer> ids); 
 | 
  
 | 
    /** 
 | 
     * 主键更新 
 | 
     * @author Eva.Caesar Liu 
 | 
     * @date 2022/04/18 18:12 
 | 
     */ 
 | 
    void updateById(Department DepartmentExt); 
 | 
  
 | 
    /** 
 | 
     * 批量主键更新 
 | 
     * @author Eva.Caesar Liu 
 | 
     * @date 2022/04/18 18:12 
 | 
     */ 
 | 
    void updateByIdInBatch(List<Department> DepartmentExts); 
 | 
  
 | 
    /** 
 | 
     * 主键查询 
 | 
     * @author Eva.Caesar Liu 
 | 
     * @date 2022/04/18 18:12 
 | 
     */ 
 | 
    Department findById(Integer id); 
 | 
  
 | 
    /** 
 | 
     * 根据ID集查询 
 | 
     * @author Eva.Caesar Liu 
 | 
     * @date 2022/04/18 18:12 
 | 
     */ 
 | 
    List<Department> findByIds(List<Integer> ids); 
 | 
  
 | 
    /** 
 | 
     * 条件查询单条记录 
 | 
     * @author Eva.Caesar Liu 
 | 
     * @date 2022/04/18 18:12 
 | 
     */ 
 | 
    Department findOne(Department DepartmentExt); 
 | 
  
 | 
    /** 
 | 
     * 条件查询 
 | 
     * @author Eva.Caesar Liu 
 | 
     * @date 2022/04/18 18:12 
 | 
     */ 
 | 
    List<DepartmentExtListVO> findList(QueryDepartmentExtDTO dto); 
 | 
  
 | 
    /** 
 | 
     * 条件统计 
 | 
     * @author Eva.Caesar Liu 
 | 
     * @date 2022/04/18 18:12 
 | 
     */ 
 | 
    long count(Department DepartmentExt); 
 | 
  
 | 
    /** 
 | 
     * 获取子孙部门ID集 
 | 
     * @author Eva.Caesar Liu 
 | 
     * @date 2022/04/18 18:12 
 | 
     */ 
 | 
    List<Integer> findChildren(Integer departmentId); 
 | 
  
 | 
    List<Integer> userDataPermissonList(DepartmentExtListVO depart ,boolean isleaf); 
 | 
  
 | 
    void loadAllDepart(); 
 | 
    void loadComDepart(CompanyExtListVO com); 
 | 
  
 | 
    DepartmentExtListVO getModelById(Integer comId,Integer rootDepartId); 
 | 
    Integer getComDepartId(DepartmentExtListVO depart,List<DepartmentExtListVO> allDepartList); 
 | 
    DepartmentExtListVO getModelById(Integer comId,Integer id, List<DepartmentExtListVO>  list ); 
 | 
    DepartmentExtListVO getModelByName(Integer comId,String name); 
 | 
    DepartmentExtListVO getModelByComDepartAndName(Integer comId,Integer comdepartId,String name); 
 | 
  
 | 
    Integer getComDepartId(DepartmentExtListVO id); 
 | 
  
 | 
    DepartmentExtListVO treeComList(QueryDepartmentExtDTO pageWrap); 
 | 
  
 | 
    void changeCom(Integer id); 
 | 
  
 | 
    List<DepartmentExtListVO> getDepartmentListByConditon(QueryDepartmentExtDTO pageWrap); 
 | 
  
 | 
    void initCompnayCodes(); 
 | 
    void initCompnayCodesByCom(Company com); 
 | 
  
 | 
    void syncDingDingDepartment(); 
 | 
  
 | 
  
 | 
    Department syncDepartment(Long departmentId,Integer companyId,String optType); 
 | 
  
 | 
    void syncDelDepartment(Long departmentId); 
 | 
} 
 |