package com.njcn.gather.user.user.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.njcn.gather.user.user.pojo.param.SysRoleParam;
import com.njcn.gather.user.user.pojo.po.SysRole;

import java.util.List;

/**
 * @author caozehui
 * @date 2024-11-11
 */
public interface ISysRoleService extends IService<SysRole> {

    /**
     * 分页查询角色列表
     *
     * @param queryParam 查询参数
     */
    Page<SysRole> listRole(SysRoleParam.QueryParam queryParam);

    /**
     * 新增角色
     *
     * @param sysRoleParam 角色参数
     * @return 是否成功
     */
    boolean addRole(SysRoleParam sysRoleParam);

    /**
     * 更新角色
     *
     * @param updateParam 更新参数
     * @return 是否成功
     */
    boolean updateRole(SysRoleParam.UpdateParam updateParam);

    /**
     * 删除角色
     *
     * @param ids 角色id列表
     * @return 是否成功
     */
    boolean deleteRole(List<String> ids);

    /**
     * 查询所有角色作为下拉框
     *
     * @return 角色列表
     */
    List<SysRole> simpleList();
}
