package com.sunda.spmsuser.service;

import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.sunda.spmscommon.ResponseResult;
import com.sunda.spmsuser.entity.SpmsRole;

import java.util.List;
import java.util.Map;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author Wayne
 * @since 2021-01-25
 */
public interface ISpmsRoleService extends IService<SpmsRole> {

    /** 根据用户工号查询角色信息 */
    List<Map<String, Object>> getRoleById(String userId);

    /** 获取系统全部角色信息 */
    List<Map<String, Object>> getRoleList();

    /** 新增/更新角色信息，roleId 为主键，存在则更新，不存在则新建 */
    ResponseResult createRole(JSONObject doc);

    /** 更新/新增 角色权限关系表 */
    ResponseResult createRolePerms(JSONObject doc);
    
    /**
     * 分页获取角色信息
     * @param jsonObject
     * @return
     */
	IPage getRoleListByParam(JSONObject jsonObject);
	
	/**
	 * 创建、更新角色菜单关系表
	 * @param jsonObject
	 * @return
	 */
	ResponseResult createRoleMenus(JSONObject doc);

}
