package com.engine.organization.mapper.job; import com.engine.organization.entity.hrmresource.po.ResourcePO; import com.engine.organization.entity.job.dto.JobListDTO; import com.engine.organization.entity.job.po.JobPO; import org.apache.ibatis.annotations.Param; import java.util.Collection; import java.util.List; import java.util.Map; /** * @description: * @author:dxfeng * @createTime: 2022/05/24 * @version: 1.0 */ public interface JobMapper { /** * 根据搜索条件查询数据 * * @return */ List listByFilter(@Param("jobPO") JobPO jobPO, @Param("orderSql") String orderSql); /** * 展示所有列表数据 * * @return */ List listNoFilter(@Param("orderSql") String orderSql); /** * 根据搜索条件查询数据 * * @param jobPO * @return */ List listPOsByFilter(@Param("jobPO") JobPO jobPO); /** * 查询所有数据 * * @return */ List listAll(); /** * 根据ID查询元素 * * @param id * @return */ JobPO getJobById(@Param("id") Long id); List getJobsByIds(@Param("ids") Collection ids); /** * 根据父ID查询元素 * * @param pid * @return */ List getJobsByPid(@Param("pid") Long pid); /** * 浏览按钮展示数据用 * * @param ids * @return */ List> listJobsByIds(@Param("ids") Collection ids); /** * 根据编号查询数据 * * @param jobNo * @return */ List listByNo(@Param("jobNo") String jobNo); /** * 根据所属部门查询数据 * * @param departmentId * @return */ List listJobsByDepartmentId(@Param("departmentId") long departmentId); /** * 添加数据 * * @param jobPO * @return */ int insertIgnoreNull(JobPO jobPO); /** * 更新主表内容 * * @param jobPO * @return */ int updateBaseJob(JobPO jobPO); /** * 更新禁用标识 * * @param id * @param forbiddenTag * @return */ int updateForbiddenTagById(@Param("id") long id, @Param("forbiddenTag") int forbiddenTag); /** * 批量删除 * * @param ids */ int deleteByIds(@Param("ids") Collection ids); /** * 获取最大排序 * * @return */ Integer getMaxShowOrder(); /** * 根据名字和上级查询岗位信息 * * @param jobName * @param parentCompany * @param parentDepartment * @param parentJob * @return */ Long getIdByNameAndPid(@Param("jobName") String jobName, @Param("parentCompany") Integer parentCompany, @Param("parentDepartment") Integer parentDepartment, @Param("parentJob") Long parentJob); int updateJobCompany(@Param("ids") Collection ids, @Param("parentCompany") Integer parentCompany, @Param("ecCompany") Integer ecCompany); int selectByConditions(@Param("resourcePO") ResourcePO resourcePO); List listUsedId(); List isAllowDelete(@Param("jobId") Long jobId); JobPO getJobByResource(@Param("resourcePO") ResourcePO resourcePO); String selectJobTitleById(@Param("id") String id); }