SysOpRoleDao.java 3.58 KB
package com.zteits.sys.dao;

import java.util.List;

/**
 * Copyright: Copyright (c) 2017  zteits
 *
 * @ClassName: com.zteits.sys.dao
 * @Description: 操作人与角色相关的数据库操作
 * @version: v1.0.0
 * @author: atao
 * @date: 2017/4/26   下午6:34
 * Modification History:
 * Date         Author          Version      Description
 * ---------------------------------------------------------*
 * 2017/4/26      atao          v1.0.0          创建
 */
public interface SysOpRoleDao {

    /**
     * 根据ID批量删除操作人与角色的关系
     *
     * @param ids     操作人与角色关系主键ID链表 必填
     * @param sysCode 系统编码 必填
     * @return 影响数据库记录的数量
     */
    int deleteBatchOpRoleByIds(List<Long> ids, String sysCode) ;

    /**
     * 根据ID删除操作人与角色的关系
     *
     * @param id      操作人与角色关系主键ID 必填
     * @param sysCode 系统编码 必填
     * @return 影响数据库记录的数量
     */
    int deleteOpRoleById(long id, String sysCode) ;

    /**
     * 根据操作人ID  批量删除 操作人与角色关系
     *
     * @param opId    操作人ID 必填
     * @param roleIds 角色ID集合 可选,如果为空,默认删除此操作人与所有角色之间的关系
     * @param sysCode 系统编码 必填
     * @return 影响数据库记录的数量
     */

    int deleteBatchOpRoleByOpId(long opId, List<Long> roleIds, String sysCode) ;

    /**
     * 根据角色ID 批量删除 操作人与角色关系
     *
     * @param roleId  角色ID 必填
     * @param opIds   操作人ID集合 可选,如果为空,默认删除所有操作人与该角色之间的关系
     * @param sysCode 系统编码 必填
     * @return 影响数据库记录的数量
     */
    int deleBatchOpRoleByRoleId(long roleId, List<Long> opIds, String sysCode) ;

    /**
     * 根据操作人ID批量保存 操作人与角色关系
     *
     * @param opId        操作人ID 必填
     * @param roleIds     角色ID集合 必填
     * @param dataState   数据状态 必填
     * @param currentOpId 当前系统操作人ID 可选
     * @param sysCode     系统编码 必填
     * @return 影响数据库记录的数量
     */
    int saveBatchOpRoleByOpId(long opId, List<Long> roleIds, int dataState, Long currentOpId, String sysCode)
        ;

    /**
     * 根据角色ID 批量保存 操作人与角色关系
     *
     * @param roleId      角色ID 必填
     * @param opIds       操作人ID 集合 必填
     * @param dataState   数据状态 必填
     * @param currentOpId 当前系统操作人ID 可选
     * @param sysCode     系统编码 必填
     * @return 影响数据库记录的数量
     */
    int saveBatchOpRoleByRoleId(long roleId, List<Long> opIds, int dataState, Long currentOpId, String sysCode)
        ;

    /**
     * 根据操作人ID集合 查询所有操作人对应的角色
     *
     * @param opIds     操作人ID 必填
     * @param dataState 数据状态 可选,如果为null 则查询所有状态数据
     * @param sysCode   系统编码 必填
     * @return 角色ID集合
     */
    List<Long> queryRoleIdsByOpId(List<Long> opIds, Integer dataState, String sysCode) ;

    /**
     * 根据角色ID 查询所有角色对应了哪些操作人
     *
     * @param roleIds   角色ID 必填
     * @param dataState 数据状态 可选,如果为null 则查询所有状态数据R
     * @param sysCode   系统编码 必填
     * @return 操作人ID集合
     */
    List<Long> queryOpIdsByRoleId(List<Long> roleIds, Integer dataState, String sysCode) ;
}