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

import com.red.circle.framework.dto.ResultResponse;
import com.red.circle.other.inner.model.dto.activity.LotteryPrizeDTO;
import java.util.List;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;

/**
 * 奖品配置Client API.
 *
 * @author system
 * @since 2025-10-18
 */
public interface LotteryPrizeClientApi {

  String API_PREFIX = "/lottery-prize/client";

  /**
   * 根据活动ID获取奖品列表.
   */
  @GetMapping("/listByActivityId")
  ResultResponse<List<LotteryPrizeDTO>> listByActivityId(@RequestParam("activityId") Long activityId);

  /**
   * 根据奖品ID获取奖品信息.
   */
  @GetMapping("/getById")
  ResultResponse<LotteryPrizeDTO> getById(@RequestParam("id") Long id);

  /**
   * 扣减奖品库存.
   */
  @GetMapping("/deductStock")
  ResultResponse<Boolean> deductStock(@RequestParam("id") Long id, @RequestParam("count") Integer count);

}
