package com.yonge.cooleshow.biz.dal.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.yonge.cooleshow.biz.dal.enums.InOrOutEnum;
import com.yonge.cooleshow.biz.dal.vo.LiveBroadcastRoomMemberVo;
import com.yonge.cooleshow.biz.dal.dto.search.LiveBroadcastRoomMemberSearch;
import com.yonge.cooleshow.biz.dal.entity.LiveBroadcastRoomMember;
import com.yonge.cooleshow.common.enums.YesOrNoEnum;

import java.util.Date;

/**
 * 直播进出记录 服务类
 * @author liweifan
 * @date 2022-08-31
 */
public interface LiveBroadcastRoomMemberService extends IService<LiveBroadcastRoomMember>  {

	/**
     * 查询详情
     * @author liweifan
 	 * @date 2022-08-31
     */
	LiveBroadcastRoomMemberVo detail(Long id);

    /**
     * 分页查询
     * @author liweifan
 	 * @date 2022-08-31
     */
    IPage<LiveBroadcastRoomMemberVo> selectPage(IPage<LiveBroadcastRoomMemberVo> page, LiveBroadcastRoomMemberSearch query);

	/**
	 * 直播进出记录
	 *
	 * @param roomUid 直播房间号
	 * @param userId 用户id
	 * @param inOrOut 进出类型
	 * @param speaker 是否主讲人
	 */
	void saveRecord(String roomUid, Long userId, InOrOutEnum inOrOut, YesOrNoEnum speaker);
}