You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

61 lines
1.6 KiB

using Microsoft.AspNetCore.Mvc;
using Service.Mgr;
using System.ComponentModel.DataAnnotations;
using Entity.Dto.Req;
using Entity.Dto.Resp;
using Service.System;
namespace WebStarter.Controllers.System
{
[Produces("application/json")]
[ApiController]
public class LoginController : ControllerBase
{
private readonly LoginService _loginService;
private readonly SysLoginMgr _sysLoginMgr;
/// <summary>
///
/// </summary>
/// <param name="loginService"></param>
public LoginController(LoginService loginService, SysLoginMgr sysLoginMgr)
{
_loginService = loginService;
_sysLoginMgr = sysLoginMgr;
}
/// <summary>
/// 登录
/// </summary>
/// <param name="obj"></param>
/// <returns></returns>
//[EnableCors("_myAllowSpecificOrigins")]
[HttpPost]
[Route("/api/login")]
public object Login([FromBody][Required] LoginReq loginInputReq)
{
return _loginService.Login(loginInputReq.Account, loginInputReq.Password);
}
[HttpGet]
[Route("/api/sysAuth/userInfo")]
public async Task<LoginUserResp?> UserInfo()
{
return await _loginService.GetUserInfo();
}
[HttpGet]
[Route("/api/sysConst/list")]
public async Task<List<ConstResp>> GetList()
{
return await _loginService.GetList();
}
[HttpPost]
[Route("/api/sysAuth/logout")]
public void LogOut()
{
_sysLoginMgr.Logout();
}
}
}