package com.qmth.paper.library.common.service;

import com.qmth.paper.library.common.bean.dto.syssetting.SimpleObject;
import com.qmth.paper.library.common.entity.SysRole;
import com.qmth.paper.library.common.entity.SysRolePrivilege;
import com.qmth.paper.library.common.entity.TBSession;

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

public interface CommonCacheService {

    /**
     * 保存session
     *
     * @param sessionId
     */
    TBSession saveTbSession(String sessionId, TBSession tbSession);

    /**
     * 查询
     *
     * @param sessionId
     * @return
     */
    TBSession getTbSession(String sessionId);

    /**
     * 删除
     *
     * @param sessionId
     * @return
     */
    String removeTbSession(String sessionId);

    /**
     * 查询系统参数数据
     *
     * @param schoolId
     * @return
     */
    Map<String, SimpleObject> getSysSetting(Long schoolId);

    /**
     * 删除系统参数数据
     *
     * @param schoolId
     * @return
     */
    String removeSysSetting(Long schoolId);

    /**
     * 查询全局系统参数数据
     *
     * @return
     */
    Map<String, String> getSysSettingGlobal();

    /**
     * 删除全局系统参数数据
     *
     * @return
     */
    String removeSysSettingGlobal();

    /**
     * 修改角色权限缓存
     *
     * @param roleId
     * @return
     */
    public List<SysRolePrivilege> updateRolePrivilegeCache(Long roleId);

    SysRole updateRoleCache(Long roleId);

}
