using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Authorization;
using Admin.Core.Attributes;
using Admin.Core.Model.Output;
using Admin.Core.Service.Admin.Auth;
using Admin.Core.Service.Admin.Auth.Input;
namespace Admin.Core.Controllers.Admin
{
///
/// 授权管理
///
public class AuthController : AreaController
{
private readonly IAuthService _authServices;
public AuthController(IAuthService authServices)
{
_authServices = authServices;
}
///
/// 获取验证码
///
/// 上次验证码键
///
[HttpGet]
[AllowAnonymous]
public async Task GetVerifyCode(string lastKey)
{
return await _authServices.GetVerifyCodeAsync(lastKey);
}
///
/// 获取密钥
///
///
[HttpGet]
[AllowAnonymous]
public async Task GetPassWordEncryptKey()
{
return await _authServices.GetPassWordEncryptKeyAsync();
}
///
/// 查询用户信息
///
///
[HttpGet]
[Login]
public async Task GetUserInfo()
{
return await _authServices.GetUserInfoAsync();
}
///
/// 用户登录
/// 根据登录信息生成Token
///
/// 登录信息
///
[HttpPost]
[AllowAnonymous]
public async Task Login(AuthLoginInput input)
{
return await _authServices.LoginAsync(input);
}
}
}