PermissionService.java 1.4 KB
package com.tianbo.warehouse.service;

import com.github.pagehelper.PageInfo;
import com.tianbo.warehouse.model.PERMISSION;

import java.util.List;
import java.util.Map;

public interface PermissionService {

    PageInfo<PERMISSION> findAll(int pageNum, int pageSize, String name);

    List<PERMISSION> findByRoleId(Integer roleId);

    List<PERMISSION> getPermissionList(List<PERMISSION> permissions, Integer pid);

    int insertSelective(PERMISSION record);

    /**
     * 获取登录用户可访问的权限menus列表
     * @param userId
     * @return
     */
    Map<String,Object> getUserMenus(Integer userId);


    int updateByPrimaryKeySelective(PERMISSION permission);

    int deleteByPrimaryKey(Integer companyId);

    int deleteByPrimaryKeys(List<Integer> companyId);

    /**
     * 登录验证成功后获取用户权限列表非树形结构
     * @param userId
     * @return
     */
    List<PERMISSION> findByUserIdWithLogin(Integer userId);

    /**
     * 清理跟permission相关的所有缓存
     */
    void flushCache();

    /**
     * 用户菜单树形
     * @param userId
     * @return
     */
    List<PERMISSION> getUserMenuTreeByUserId(Integer userId);

    /**
     * 查询用户是否有对应访问权限
     * @param token
     * @param url
     * @return 有为true 没有为false
     */
    Boolean getPermission(String token,String url,String name);
}