package com.hotent.uc.manager;

import com.hotent.base.manager.BaseManager;
import com.hotent.base.query.PageList;
import com.hotent.base.query.QueryFilter;
import com.hotent.uc.model.UcGroupUser;
import com.hotent.uc.vo.UcGroupUserVo;

import java.util.Map;

/**
 * 群组和用户关系表 服务类
 *
 * @author 超级管理员
 * @company 广州宏天软件股份有限公司
 * @since 2021-01-15
 */
public interface UcGroupUserManager extends BaseManager<UcGroupUser> {

    void saveJson(Map<String, Object> map);

    /**
     * 切换分组中两个用户的排序
     * @param s1 分组用户1
     * @param s2 分组用户2
     */
    void swap(String s1, String s2);

    /**
     * 用户选择器获取用户的接口
     *
     * @param groupIds    分组id，多个用逗号隔开，不传时获取所有分组
     * @param demId       维度ID 不传时获取默认维度 如果在该维度下，分组的用户没有组织岗位，
     *                    即使此用户在其它维度下有组织和岗位，也不显示
     * @param queryFilter 查询条件
     * @return 分组用户
     */
    PageList<Map<String, Object>> loadUserByGroupId(String groupIds, String demId, QueryFilter queryFilter) throws Exception;
}
