package jnpf.permission.service; import jnpf.base.entity.SystemEntity; import jnpf.base.model.portalManage.PortalModel; import jnpf.base.model.portalManage.SavePortalAuthModel; import jnpf.base.service.SuperService; import jnpf.database.model.superQuery.SuperJsonModel; import jnpf.model.login.UserSystemVO; import jnpf.permission.entity.AuthorizeEntity; import jnpf.permission.model.authorize.AuthorizeDataUpForm; import jnpf.permission.model.authorize.AuthorizeVO; import java.util.List; /** * 操作权限 * * @author JNPF开发平台组 * @version V3.1.0 * @copyright 引迈信息技术有限公司 * @date 2019年9月26日 上午9:18 */ public interface AuthorizeService extends SuperService { /** * 获取当前系统权限列表 * * @param singletonOrg 是否启用 * @param currentSystemCode 当前系统编码 * @param isBackend 是否后台(当前用户信息用) * @return */ AuthorizeVO getAuthorize(boolean singletonOrg, String currentSystemCode, Integer isBackend); /** * 全部系统权限 * * @param singletonOrg * @return */ AuthorizeVO getAuthorizeByUser(boolean singletonOrg); /** * 获取全部系统的权限 * * @param singletonOrg 是否启用 * @param currentSystemCode 当前系统编码 * @param isBackend 是否后台(当前用户信息用) * @return */ AuthorizeVO getAuthorize(boolean singletonOrg, String currentSystemCode, Integer isBackend, Boolean allSystem); /** * 创建 * * @param authorizeList 实体对象 */ String save(AuthorizeDataUpForm authorizeList); /** * 根据用户id获取列表 * * @param isAdmin 是否管理员 * @param userId 用户主键 * @param standingfilter 是否根据身份过滤(个人权限部分不需要过滤) * @return */ List getListByUserId(boolean isAdmin, String userId, boolean standingfilter); /** * 根据岗位或者角色获取全部权限 * * @param objectId 岗位/角色id * @param objectType 类型:岗位-position/角色-role * @return */ List getListByPosOrRoleId(String objectId, String objectType); /** * 根据对象Id获取列表 * * @param objectId 对象主键 * @return */ List getListByObjectId(List objectId); /** * 判断当前角色是否有权限 * * @param roleId * @param systemId * @return */ Boolean existAuthorize(String roleId, String systemId); /** * 判断当前角色是否有权限 * * @param roleId * @return */ List getListByRoleId(String roleId); /** * 根据对象Id获取列表 * * @param objectId 对象主键 * @param itemType 对象主键 * @return */ List getListByObjectId(String objectId, String itemType); /** * 根据对象Id获取列表 * * @param objectType 对象主键 * @return */ List getListByObjectAndItem(String itemId, String objectType); /** * 根据对象Id获取列表 * * @param itemId 对象主键 * @param itemType 对象类型 * @return */ List getListByObjectAndItemIdAndType(String itemId, String itemType); void getPortal(List systemList, List portalList, Long dateTime, List collect); void saveItemAuth(SavePortalAuthModel portalAuthModel); void saveObjectAuth(SavePortalAuthModel portalAuthModel); List getConditionSql(String moduleId, String systemCode); /** * 通过Item获取权限列表 * * @param itemType * @param itemId * @return */ List getAuthorizeByItem(String itemType, String itemId); List getListByRoleIdsAndItemType(List roleIds, String itemType); List getUserStanding(boolean isLogin, String userId); List getUserStanding(boolean isLogin, String userId, String loginDevice); void removeAuthByUserOrMenu(List userIds, List menuIds); /** * 获取用户当前身份 * * @param userId 用户id * @param standType 身份类型:1-超级管理员,2-管理员,3普通用户 * @return */ boolean getUserCurrentStanding(String userId, Integer standType); }