using Mapster; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; using Volo.Abp.Application.Services; using Volo.Abp.Users; using Yi.Framework.DigitalCollectibles.Application.Contracts.Dtos.MiningPool; using Yi.Framework.DigitalCollectibles.Domain.Managers; namespace Yi.Framework.DigitalCollectibles.Application.Services; /// /// 矿池应用服务 /// public class MiningPoolService : ApplicationService { private readonly MiningPoolManager _manager; public MiningPoolService(MiningPoolManager manager) { _manager = manager; } /// /// 内测-白嫖-获取自动挖矿卡 /// [HttpPost("mining-pool/on-hook")] [Authorize] public async Task GetOnHookAsync() { await _manager.GetOnHookAsync(CurrentUser.GetId()); } /// /// 获取矿池状态 /// /// [HttpGet("mining-pool")] public async Task GetMiningPoolContentAsync() { var content = await _manager.GetMiningPoolContentAsync(); var output = content.Adapt(); return output; } /// /// 用户手动挖矿 /// /// [HttpPost("mining-pool/mining")] [Authorize] public async Task MiningAsync() { var userId = CurrentUser.GetId(); var result = await _manager.MiningAsync(userId); var output = result.Adapt(); return output; } }