package com.red.circle.game.fruit.application.endpoint;

import com.red.circle.game.fruit.inner.model.cmd.GameCodeManageCmd;
import com.red.circle.game.fruit.inner.model.cmd.GameFruitPrizeCmd;
import com.red.circle.game.fruit.inner.model.cmd.GameFruitRuleCmd;
import com.red.circle.game.fruit.inner.model.dto.GameCodeManageDTO;
import com.red.circle.game.fruit.inner.model.dto.GameFruitPrizeDTO;
import com.red.circle.game.fruit.inner.model.dto.GameFruitRuleDTO;
import java.util.List;
import java.util.Map;
import java.util.Set;

/**
 * 摩天轮游戏配置相关
 *
 * @author lisizhe on 2023/12/13
 */
public interface GameFruitConfigClientService {

  void updateRule(GameFruitRuleCmd cmd);

  GameFruitRuleDTO getRule(String sysOrigin);

  void addPrize(GameFruitPrizeCmd cmd);

  void updatePrize(GameFruitPrizeCmd cmd);

  List<GameFruitPrizeDTO> listPrize(String sysOrigin);

  Map<Long, GameCodeManageDTO> mapGameCodeManage(Set<Long> gameIds);

  void addGameCode(GameCodeManageCmd gameCodeManage);

  void delGameCode(Long gameId);
}
