package com.ym.service;

import com.ym.common.ApiException;
import io.rong.models.Result;
import io.rong.models.chatroom.ChatroomModel;
import io.rong.models.group.GroupModel;
import io.rong.models.response.TokenResult;
import io.rong.models.user.BatchTagModel;
import io.rong.models.user.GetTagModel;
import io.rong.models.user.TagModel;
import io.rong.models.user.UserModel;

/**
 * Created by weiqinxiao on 2019/2/25.
 */
public interface UserService {

//    public String refreshToken(String userId, String name) throws ApiException, Exception;

    //用户
    TokenResult register(UserModel userModel) throws Exception;

    Result update(UserModel userModel) throws Exception;


    //黑名单
    Result blackListAdd(UserModel userModel) throws Exception;

    Result blackListRemove(UserModel userModel) throws Exception;

    Result blackListGetList(UserModel userModel) throws Exception;


    //用户封禁
    Result blockAdd(UserModel userModel) throws Exception;

    Result blockRemove(String userId) throws Exception;

    Result blockGetList() throws Exception;


    //用户标签
    Result tagSet(TagModel tagModel) throws Exception;

    Result tagBatchSet(BatchTagModel batchTagModel) throws Exception;

    Result tagGet(GetTagModel getTagModel) throws Exception;


    //全局群主禁言
    Result muteGroupsAdd(GroupModel groupModel) throws Exception;

    Result muteGroupsRemove(GroupModel groupModel) throws Exception;

    Result muteGroupsGetList() throws Exception;


    //全局聊天室禁言
    Result muteChatroomsAdd(ChatroomModel chatroomModel) throws Exception;

    Result muteChatroomsRemove(ChatroomModel chatroomModel) throws Exception;

    Result muteChatroomsGetList() throws Exception;
}
