package com.red.circle.other.inner.endpoint.tmp.api;

import com.red.circle.framework.dto.ResultResponse;
import com.red.circle.other.inner.tmp.CommonOtherRestApiCmd;
import com.red.circle.other.inner.tmp.RoomMikeNumResApiCmd;
import com.red.circle.other.inner.tmp.RoomMikeNumTmpCO;
import com.red.circle.other.inner.tmp.RoomMikeTypeRestApiCmd;
import com.red.circle.other.inner.tmp.RoomMikeTypeTmpCO;
import java.math.BigDecimal;
import java.util.List;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;

/**
 * 房间麦克风.
 *
 * @author pengliang on 2024/1/8
 */
public interface RoomMikeClientRestApi {

  String API_PREFIX = "/room-mike/client/restapi";

  /**
   * 金币购买房间麦数量.
   */
  @PostMapping("/purchasingRoomMikeNum")
  ResultResponse<BigDecimal> purchasingRoomMikeNum(
      @RequestBody @Validated RoomMikeNumResApiCmd cmd);

  /**
   * 查询已购买的房间麦数量数据.
   */
  @PostMapping("/listRoomMikeNum")
  ResultResponse<List<RoomMikeNumTmpCO>> listRoomMikeNum(
      @RequestBody @Validated CommonOtherRestApiCmd cmd);

  /**
   * 购买活动房间麦类型.
   */
  @PostMapping("/purchasingRoomMikeType")
  ResultResponse<BigDecimal> purchasingRoomMikeType(
      @RequestBody @Validated RoomMikeTypeRestApiCmd cmd);

  /**
   * 查询已购买的活动房间麦类型数据.
   */
  @PostMapping("/listRoomMikeType")
  ResultResponse<List<RoomMikeTypeTmpCO>> listRoomMikeType(
      @RequestBody @Validated CommonOtherRestApiCmd cmd);


}
