package com.red.circle.other.app.service.game;


import com.red.circle.common.business.dto.cmd.AppExtCommand;
import com.red.circle.common.business.dto.cmd.app.AppRoomIdCmd;
import com.red.circle.other.app.dto.clientobject.game.GameUserCO;
import com.red.circle.other.app.dto.clientobject.game.RoomTurntableGameCO;
import com.red.circle.other.app.dto.cmd.game.GameTurntableCreateCmd;
import com.red.circle.other.app.dto.cmd.game.GameTurntableGameIdCmd;
import com.red.circle.other.app.dto.cmd.game.GameTurntableProcessingStatusCmd;
import com.red.circle.wallet.inner.model.dto.WalletReceiptDTO;
import java.util.List;

/**
 * 游戏相关接口.
 *
 * @author houyong on 2021/2/1
 */
public interface GameTurntableService {

  RoomTurntableGameCO create(GameTurntableCreateCmd cmd);

  WalletReceiptDTO join(GameTurntableGameIdCmd cmd);

  RoomTurntableGameCO start(GameTurntableGameIdCmd cmd);

  RoomTurntableGameCO getProcessingGame(AppRoomIdCmd cmd);

  void processingStatus(GameTurntableProcessingStatusCmd cmd);

  List<GameUserCO> listTop(AppExtCommand cmd);

}
