TranslateController.cs 1.9 KB
Newer Older
lwplvx's avatar
lwplvx 已提交
1 2 3 4 5 6 7 8
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;
lwplvx's avatar
lwplvx 已提交
9
using Microsoft.AspNetCore.SignalR;
lwplvx's avatar
lwplvx 已提交
10 11 12 13 14 15 16 17 18 19
using Microsoft.Extensions.Logging;

namespace Aurora.Core.Api.Controllers
{
    [ApiController]
    [Route("[controller]/[action]")]
    public class TranslateController : ControllerBase
    {
        private readonly ILogger<TranslateController> _logger;
        private readonly IRocketService _rocketService;
lwplvx's avatar
lwplvx 已提交
20
        private readonly IHubContext<TranslateRocketHub> _hubContext;
lwplvx's avatar
lwplvx 已提交
21 22

        public TranslateController(ILogger<TranslateController> logger,
lwplvx's avatar
lwplvx 已提交
23 24
        IRocketService rocketService,
         IHubContext<TranslateRocketHub> hubContext)
lwplvx's avatar
lwplvx 已提交
25 26 27
        {
            _logger = logger;
            _rocketService = rocketService;
lwplvx's avatar
lwplvx 已提交
28
            _hubContext = hubContext;
lwplvx's avatar
lwplvx 已提交
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
        }

        [HttpGet]
        /// <summary>
        /// get words list
        /// </summary>
        /// <returns></returns>
        public async Task<IActionResult> GetList()
        {
            var res = await _rocketService.GetList();
            return Ok(res);
        }

        [HttpPost]
        /// <summary>
        /// biu word
        /// </summary>
        /// <returns></returns>
        public async Task<ResponseModel<RocketDto>> Rocket(RocketDto model)
        {
lwplvx's avatar
lwplvx 已提交
49 50 51
            var res = await _rocketService.Rocket(model);

            await _hubContext.Clients.All.SendAsync("rocketWord", model);
lwplvx's avatar
lwplvx 已提交
52 53
            return res;
        }
lwplvx's avatar
lwplvx 已提交
54 55 56 57 58 59 60 61 62 63 64

        [HttpGet]
        /// <summary>
        /// biu word
        /// </summary>
        /// <returns></returns>
        public async Task<ResponseModel<RocketDto>> Test()
        {
            await _hubContext.Clients.All.SendAsync("rocketWord", "model");
            return new ResponseModel<RocketDto>(new RocketDto());
        }
lwplvx's avatar
lwplvx 已提交
65 66
    }
}