using Common;
using CommonDomain;
using CommonDomain.BaseModel;
using CommonInfrastructure;
using Microsoft.AspNetCore.Mvc;
using UserService.GameConfigs;
namespace UserApi.GameConfigs
{
[ApiController, Route("api/[controller]")]
public class ActivityConfigController : BaseController
{
private readonly IActivityConfigService _activityConfigService;
private readonly IGameConfigService _gameConfigService;
public ActivityConfigController(IActivityConfigService activityConfigService, IGameConfigService gameConfigService)
{
_activityConfigService = activityConfigService;
_gameConfigService = gameConfigService;
}
///
/// 获取活动配置 - 一次性返回全部活动配置(含战令、抽奖的商品信息补全)
///
[HttpGet]
public async Task> Get()
{
var config = await _activityConfigService.Get();
if (config?.BattleOrderConfig != null)
BattleOrderGiftProductHelper.Enrich(config.BattleOrderConfig, await _gameConfigService.Get());
if (config?.LotteryActivityConfig != null)
LotteryPrizeProductHelper.Enrich(config.LotteryActivityConfig, await _gameConfigService.Get());
return this.ToResult(config ?? new ActivityConfig());
}
///
/// 钻石商城列表
///
[HttpGet("diamondShopList")]
public async Task> GetDiamondShopList()
{
var config = await _activityConfigService.Get();
return this.ToListResult(config?.DiamondShopConfigs ?? new List());
}
///
/// 金币商城列表
///
[HttpGet("goldShopList")]
public async Task> GetGoldShopList()
{
var config = await _activityConfigService.Get();
return this.ToListResult(config?.GoldShopConfigs ?? new List());
}
///
/// 签到配置
///
[HttpGet("signConfig")]
public async Task> GetSignConfig()
{
var config = await _activityConfigService.Get();
return this.ToResult(config?.SignActivityConfig ?? new SignActivityConfig());
}
///
/// 救济金配置
///
[HttpGet("reliefConfig")]
public async Task> GetReliefConfig()
{
var config = await _activityConfigService.Get();
if (config?.ReliefConfig != null)
return this.ToResult(config.ReliefConfig);
else
return this.ToFailResult("配置不存在");
}
///
/// 注册配置
///
[HttpGet("registerConfig")]
public async Task> GetRegisterConfig()
{
var config = await _activityConfigService.Get();
if (config?.RegisterConfig != null)
return this.ToResult(config.RegisterConfig);
else
return this.ToFailResult("配置不存在");
}
///
/// 捕鱼返金币活动配置
///
[HttpGet("fishingReturnConfig")]
public async Task> GetFishingReturnConfig()
{
var config = await _activityConfigService.Get();
if (config?.FishingReturnConfig != null)
return this.ToResult(config.FishingReturnConfig);
else
return this.ToFailResult("配置不存在");
}
///
/// 战令配置
///
[HttpGet("battleOrderConfig")]
public async Task> GetBattleOrderConfig()
{
var config = await _activityConfigService.Get();
if (config?.BattleOrderConfig != null)
{
BattleOrderGiftProductHelper.Enrich(config.BattleOrderConfig, await _gameConfigService.Get());
return this.ToResult(config.BattleOrderConfig);
}
else
return this.ToFailResult("配置不存在");
}
///
/// 奖池抽奖活动配置
///
[HttpGet("lotteryConfig")]
public async Task> GetLotteryConfig()
{
var config = await _activityConfigService.Get();
if (config?.LotteryActivityConfig != null)
{
LotteryPrizeProductHelper.Enrich(config.LotteryActivityConfig, await _gameConfigService.Get());
return this.ToResult(config.LotteryActivityConfig);
}
else
return this.ToFailResult("配置不存在");
}
///
/// 排行榜奖励配置
///
[HttpGet("rankingRewardConfig")]
public async Task> GetRankingRewardConfig()
{
var config = await _activityConfigService.Get();
if (config?.RankingRewardConfig != null)
return this.ToResult(config.RankingRewardConfig);
else
return this.ToFailResult("配置不存在");
}
}
}