- refactored SurveyController.cs - added ProducesResponseType to every endpoint in every controller - remade mappers
40 lines
No EOL
1.3 KiB
C#
40 lines
No EOL
1.3 KiB
C#
using Microsoft.AspNetCore.Authorization;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using SurveyBackend.DTOs;
|
|
using SurveyBackend.Mappers;
|
|
using IAuthorizationService = SurveyBackend.Core.Services.IAuthorizationService;
|
|
|
|
namespace SurveyBackend.Controllers;
|
|
|
|
[ApiController]
|
|
[Route("auth")]
|
|
public class AuthController : ControllerBase
|
|
{
|
|
private readonly IAuthorizationService _authorizationService;
|
|
|
|
public AuthController(IAuthorizationService authorizationService)
|
|
{
|
|
_authorizationService = authorizationService;
|
|
}
|
|
|
|
[AllowAnonymous]
|
|
[HttpPost("login")]
|
|
[ProducesResponseType(StatusCodes.Status401Unauthorized)]
|
|
[ProducesResponseType(StatusCodes.Status200OK)]
|
|
public async Task<IActionResult> LogIn([FromBody] UserLoginDto loginData)
|
|
{
|
|
var token = await _authorizationService.LogInUser(loginData.Email, loginData.Password);
|
|
return Ok(new { token = token });
|
|
}
|
|
|
|
[AllowAnonymous]
|
|
[HttpPost("register")]
|
|
[ProducesResponseType(StatusCodes.Status401Unauthorized)]
|
|
[ProducesResponseType(StatusCodes.Status200OK)]
|
|
public async Task<IActionResult> Register([FromBody] UserRegistrationDto registerData)
|
|
{
|
|
var token = await _authorizationService.RegisterUser(
|
|
AuthMapper.UserRegistrationToModel(registerData));
|
|
return Ok(new { token = token });
|
|
}
|
|
} |