using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using Aurora.Core.IService; using Aurora.Core.IService.Dto; using Aurora.Infrastructure.Response; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.SignalR; using Microsoft.Extensions.Logging; namespace Aurora.Core.Api.Controllers { [ApiController] [Route("[controller]/[action]")] public class TranslateController : ControllerBase { private readonly ILogger _logger; private readonly IRocketService _rocketService; private readonly IHubContext _hubContext; public TranslateController(ILogger logger, IRocketService rocketService, IHubContext hubContext) { _logger = logger; _rocketService = rocketService; _hubContext = hubContext; } [HttpGet] /// /// get words list /// /// public async Task GetList() { var res = await _rocketService.GetList(); return Ok(res); } [HttpPost] /// /// biu word /// /// public async Task> Rocket(RocketDto model) { var res = await _rocketService.Rocket(model); await _hubContext.Clients.All.SendAsync("rocketWord", model); return res; } [HttpGet] /// /// biu word /// /// public async Task> Test() { await _hubContext.Clients.All.SendAsync("rocketWord", "model"); return new ResponseModel(new RocketDto()); } } }