package jnpf.permission.service; import jnpf.base.Pagination; import jnpf.base.service.SuperService; import jnpf.permission.entity.OrganizeEntity; import jnpf.permission.entity.PositionEntity; import jnpf.permission.model.permission.PermissionModel; import jnpf.permission.model.position.PaginationPosition; import jnpf.permission.model.position.PosConModel; import jnpf.permission.model.position.PositionListVO; import jnpf.permission.model.position.PositionPagination; import jnpf.permission.model.rolerelaiton.RoleRelationPage; import java.util.List; import java.util.Map; /** * 岗位信息 * * @author JNPF开发平台组 * @version V3.1.0 * @copyright 引迈信息技术有限公司 * @date 2019年9月26日 上午9:18 */ public interface PositionService extends SuperService { /** * 查询岗位列表 * * @param pagination * @return */ List getList(PositionPagination pagination); /** * 验证名称 * * @param entity * @param isFilter 是否过滤 * @return */ boolean isExistByFullName(PositionEntity entity, boolean isFilter); /** * 验证编码 * * @param enCode * @param id * @return */ Boolean isExistByEnCode(String enCode, String id); /** * 创建 * * @param entity 实体对象 */ void create(PositionEntity entity); /** * 更新 * * @param id 主键值 * @param entity 实体对象 */ boolean update(String id, PositionEntity entity); /** * 信息 * * @param id 主键值 * @return */ PositionEntity getInfo(String id); /** * 删除 * * @param entity 实体对象 */ void delete(PositionEntity entity); /** * 通过组织删除岗位,前提是验证过岗位未绑定其他数据 * * @param orgId 实体对象 */ void deleteByOrgId(String orgId); /** * 验证岗位层级 * * @param entity * @return */ boolean checkLevel(PositionEntity entity); /** * 递归获取所有父级(层级) * * @param parentId * @return */ List getParentList(String parentId); /** * 获取下级岗位 * * @param parentId * @return */ List getByParentId(String parentId); /** * 根据组织id查询所有岗位 * * @param orgIds * @return */ List getListByOrgIds(List orgIds); /** * 根据组织id获取一级岗位 * * @param orgIds * @return */ List getListByOrgIdOneLevel(List orgIds); /** * 列表 * * @param filterEnabledMark * @return */ List getList(boolean filterEnabledMark); /** * 获取全部下级 * * @param id * @return */ List getAllChild(String id); /** * 岗位名列表(在线开发) * * @param idList * @return */ List getPosList(List idList); List getListByIds(List idList); /** * 根据id查询岗位列表 * * @param idList * @return */ List getListByIds(Pagination pagination, List idList); Map getPosMap(); Map getPosFullNameMap(); Map getPosEncodeAndName(); Map getPosEncodeAndName(boolean enabledMark); /** * 列表 * * @param paginationPosition 条件 * @return */ List getList(PaginationPosition paginationPosition); /** * 列表 * * @param userId 用户主键 * @return */ List getListByUserId(String userId); /** * 通过名称查询id * * @param fullName 名称 * @return */ PositionEntity getByFullName(String fullName); /** * 上移 * * @param id 主键值 */ boolean first(String id); /** * 下移 * * @param id 主键值 */ boolean next(String id); /** * 获取名称 * * @return */ List getPositionName(List id, boolean filterEnabledMark); /** * 获取名称 * * @return */ List getPositionName(List id, String keyword); /** * 获取岗位列表 * * @param organizeIds 组织id * @param enabledMark * @return */ List getListByOrganizeId(List organizeIds, boolean enabledMark); /** * 获取用户组织底下所有的岗位 * * @param organizeId * @param userId * @return */ List getListByOrgIdAndUserId(String organizeId, String userId); /** * 通过名称获取岗位列表 * * @param fullName 岗位名称 * @param enCode 编码 * @return */ List getListByFullName(String fullName, String enCode); /** * 根据组织列表获取 * * @param organizeIds * @return */ List getListByOrganizeIds(List organizeIds, boolean needCode, boolean enabledMark); /** * 岗位自定义范围回显 * * @return */ List selectedList(List idStrList); /** * 岗位范围下拉 * * @return */ List positionCondition(List idStrList); /** * 根据责任人查询岗位 * * @param userId 责任人id * @return 返回数据 */ List getListByDutyUser(String userId); /** * 根据父id集合查询子岗位信息 * * @param collect 父岗位id集合 * @return 返回数据 */ List getListByParentIds(List collect); /** * 联动修改岗位约束 * * @param id * @param posConModel */ void linkUpdate(String id, PosConModel posConModel); /** * ids列表字符串获取名称(当前岗位) * * @param idStr * @return */ String getNameByIdStr(String idStr); /** * 获取子孙岗位 * * @param idList * @return */ List getProgeny(List idList, Integer enabledMark); }