Skip to content

Commit

Permalink
fix: add modelState error
Browse files Browse the repository at this point in the history
  • Loading branch information
Harish-osmosys committed Mar 12, 2024
1 parent 2bb6042 commit b6efa10
Show file tree
Hide file tree
Showing 14 changed files with 347 additions and 101 deletions.
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
using System.Net;
using DotnetFoundation.Api.Helpers;
using DotnetFoundation.Application.Exceptions;
using DotnetFoundation.Application.Interfaces.Services;
using DotnetFoundation.Application.Models.Common;
Expand All @@ -13,9 +14,11 @@ namespace DotnetFoundation.Api.Controllers;
public class AuthenticationController : ControllerBase
{
private readonly IAuthenticationService _authenticationService;
public AuthenticationController(IAuthenticationService authenticationService)
private readonly ErrorResponse _errorResponse;
public AuthenticationController(IAuthenticationService authenticationService, ErrorResponse errorResponse)
{
_authenticationService = authenticationService;
_errorResponse = errorResponse;
}

/// <summary>
Expand All @@ -40,11 +43,13 @@ public async Task<ActionResult<BaseResponse<AuthenticationResponse>>> RegisterAs
{
response.Message = ex.Message;
response.Status = ResponseStatus.Error;
response.Errors = _errorResponse.GetErrorResponse();
return BadRequest(response);
}
catch (Exception ex)
{
response.Message = ex.Message;
response.Errors = _errorResponse.GetErrorResponse();
response.Status = ResponseStatus.Error;
return StatusCode(StatusCodes.Status500InternalServerError, response);
}
Expand All @@ -71,13 +76,14 @@ public async Task<ActionResult<BaseResponse<AuthenticationResponse>>> LoginAsync
catch (InvalidCredentialsException ex)
{
response.Message = ex.Message;

response.Status = ResponseStatus.Error;
response.Errors = _errorResponse.GetErrorResponse();
return BadRequest(response);
}
catch (Exception ex)
{
response.Message = ex.Message;
response.Errors = _errorResponse.GetErrorResponse();
response.Status = ResponseStatus.Error;
return StatusCode(StatusCodes.Status500InternalServerError, response);
}
Expand Down Expand Up @@ -105,17 +111,20 @@ public async Task<ActionResult<BaseResponse<int>>> ResetPasswordAsync(PasswordRe
{
response.Message = ex.Message;
response.Status = ResponseStatus.Error;
response.Errors = _errorResponse.GetErrorResponse();
return BadRequest(response);
}
catch (InvalidTokenException ex)
{
response.Message = ex.Message;
response.Status = ResponseStatus.Error;
response.Errors = _errorResponse.GetErrorResponse();
return BadRequest(response);
}
catch (Exception ex)
{
response.Message = ex.Message;
response.Errors = _errorResponse.GetErrorResponse();
response.Status = ResponseStatus.Error;
return StatusCode(StatusCodes.Status500InternalServerError, response);
}
Expand Down Expand Up @@ -143,12 +152,14 @@ public async Task<ActionResult<BaseResponse<int>>> ForgotPasswordAsync(string em
{
response.Message = ex.Message;
response.Status = ResponseStatus.Error;
response.Errors = _errorResponse.GetErrorResponse();
return BadRequest(response);
}
catch (Exception ex)
{
response.Message = ex.Message;
response.Status = ResponseStatus.Error;
response.Errors = _errorResponse.GetErrorResponse();
return StatusCode(StatusCodes.Status500InternalServerError, response);
}
}
Expand Down
155 changes: 124 additions & 31 deletions DotnetFoundation/DotnetFoundation.Api/Controllers/TaskController.cs
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
using DotnetFoundation.Api.Helpers;
using DotnetFoundation.Application.Exceptions;
using DotnetFoundation.Application.Interfaces.Services;
using DotnetFoundation.Application.Models.Common;
using DotnetFoundation.Application.Models.DTOs.TaskDetailsDTO;
Expand All @@ -12,9 +14,11 @@ namespace DotnetFoundation.Api.Controllers;
public class TaskController : ControllerBase
{
private readonly ITaskDetailsService _taskDetailsService;
public TaskController(ITaskDetailsService TaskDetailsService)
private readonly ErrorResponse _errorResponse;
public TaskController(ITaskDetailsService TaskDetailsService, ErrorResponse errorResponse)
{
_taskDetailsService = TaskDetailsService;
_errorResponse = errorResponse;
}

/// <summary>
Expand All @@ -26,11 +30,20 @@ public TaskController(ITaskDetailsService TaskDetailsService)
public async Task<ActionResult<BaseResponse<List<TaskDetailsResponse>>>> GetAllTasksAsync()
{
BaseResponse<List<TaskDetailsResponse>> response = new(ResponseStatus.Fail);

response.Data = await _taskDetailsService.GetAllTasksAsync().ConfigureAwait(false);
response.Status = ResponseStatus.Success;

return Ok(response);
try
{
response.Data = await _taskDetailsService.GetAllTasksAsync().ConfigureAwait(false);
response.Status = ResponseStatus.Success;

return Ok(response);
}
catch (Exception ex)
{
response.Message = ex.Message;
response.Errors = _errorResponse.GetErrorResponse();
response.Status = ResponseStatus.Error;
return StatusCode(StatusCodes.Status500InternalServerError, response);
}
}

/// <summary>
Expand All @@ -42,11 +55,20 @@ public async Task<ActionResult<BaseResponse<List<TaskDetailsResponse>>>> GetAllT
public async Task<ActionResult<BaseResponse<List<TaskDetailsResponse>>>> GetActiveTasksAsync()
{
BaseResponse<List<TaskDetailsResponse>> response = new(ResponseStatus.Fail);

response.Data = await _taskDetailsService.GetActiveTasksAsync().ConfigureAwait(false);
response.Status = ResponseStatus.Success;

return Ok(response);
try
{
response.Data = await _taskDetailsService.GetActiveTasksAsync().ConfigureAwait(false);
response.Status = ResponseStatus.Success;

return Ok(response);
}
catch (Exception ex)
{
response.Message = ex.Message;
response.Errors = _errorResponse.GetErrorResponse();
response.Status = ResponseStatus.Error;
return StatusCode(StatusCodes.Status500InternalServerError, response);
}
}

/// <summary>
Expand All @@ -61,11 +83,27 @@ public async Task<ActionResult<BaseResponse<List<TaskDetailsResponse>>>> GetActi
public async Task<ActionResult<BaseResponse<TaskDetailsResponse>>> GetTaskByIdAsync(int taskId)
{
BaseResponse<TaskDetailsResponse> response = new(ResponseStatus.Fail);

response.Data = await _taskDetailsService.GetTaskByIdAsync(taskId).ConfigureAwait(false);
response.Status = ResponseStatus.Success;

return Ok(response);
try
{
response.Data = await _taskDetailsService.GetTaskByIdAsync(taskId).ConfigureAwait(false);
response.Status = ResponseStatus.Success;

return Ok(response);
}
catch (TaskNotFoundException ex)
{
response.Message = ex.Message;
response.Status = ResponseStatus.Error;
response.Errors = _errorResponse.GetErrorResponse();
return BadRequest(response);
}
catch (Exception ex)
{
response.Message = ex.Message;
response.Errors = _errorResponse.GetErrorResponse();
response.Status = ResponseStatus.Error;
return StatusCode(StatusCodes.Status500InternalServerError, response);
}
}

/// <summary>
Expand All @@ -79,11 +117,27 @@ public async Task<ActionResult<BaseResponse<TaskDetailsResponse>>> GetTaskByIdAs
public async Task<ActionResult<BaseResponse<TaskDetailsResponse>>> InsertTaskAsync(TaskDetailsRequest detailRequest)
{
BaseResponse<TaskDetailsResponse> response = new(ResponseStatus.Fail);

response.Data = await _taskDetailsService.InsertTaskAsync(detailRequest).ConfigureAwait(false);
response.Status = ResponseStatus.Success;

return Ok(response);
try
{
response.Data = await _taskDetailsService.InsertTaskAsync(detailRequest).ConfigureAwait(false);
response.Status = ResponseStatus.Success;

return Ok(response);
}
catch (UserNotFoundException ex)
{
response.Message = ex.Message;
response.Status = ResponseStatus.Error;
response.Errors = _errorResponse.GetErrorResponse();
return BadRequest(response);
}
catch (Exception ex)
{
response.Message = ex.Message;
response.Status = ResponseStatus.Error;
response.Errors = _errorResponse.GetErrorResponse();
return StatusCode(StatusCodes.Status500InternalServerError, response);
}
}

/// <summary>
Expand All @@ -97,11 +151,34 @@ public async Task<ActionResult<BaseResponse<TaskDetailsResponse>>> InsertTaskAsy
public async Task<ActionResult<BaseResponse<TaskDetailsResponse>>> UpdateTaskAsync(int taskId, TaskDetailsRequest modifiedDetails)
{
BaseResponse<TaskDetailsResponse> response = new(ResponseStatus.Fail);

response.Data = await _taskDetailsService.UpdateTaskAsync(taskId, modifiedDetails).ConfigureAwait(false);
response.Status = ResponseStatus.Success;

return Ok(response);
try
{
response.Data = await _taskDetailsService.UpdateTaskAsync(taskId, modifiedDetails).ConfigureAwait(false);
response.Status = ResponseStatus.Success;

return Ok(response);
}
catch (TaskNotFoundException ex)
{
response.Message = ex.Message;
response.Status = ResponseStatus.Error;
response.Errors = _errorResponse.GetErrorResponse();
return BadRequest(response);
}
catch (UserNotFoundException ex)
{
response.Message = ex.Message;
response.Status = ResponseStatus.Error;
response.Errors = _errorResponse.GetErrorResponse();
return BadRequest(response);
}
catch (Exception ex)
{
response.Message = ex.Message;
response.Status = ResponseStatus.Error;
response.Errors = _errorResponse.GetErrorResponse();
return StatusCode(StatusCodes.Status500InternalServerError, response);
}
}

/// <summary>
Expand All @@ -114,10 +191,26 @@ public async Task<ActionResult<BaseResponse<TaskDetailsResponse>>> UpdateTaskAsy
public async Task<ActionResult<BaseResponse<TaskDetailsResponse>>> InactiveTaskAsync(int taskId)
{
BaseResponse<TaskDetailsResponse> response = new(ResponseStatus.Fail);

response.Data = await _taskDetailsService.InactiveTaskAsync(taskId).ConfigureAwait(false);
response.Status = ResponseStatus.Success;

return Ok(response);
try
{
response.Data = await _taskDetailsService.InactiveTaskAsync(taskId).ConfigureAwait(false);
response.Status = ResponseStatus.Success;

return Ok(response);
}
catch (TaskNotFoundException ex)
{
response.Message = ex.Message;
response.Status = ResponseStatus.Error;
response.Errors = _errorResponse.GetErrorResponse();
return BadRequest(response);
}
catch (Exception ex)
{
response.Message = ex.Message;
response.Status = ResponseStatus.Error;
response.Errors = _errorResponse.GetErrorResponse();
return StatusCode(StatusCodes.Status500InternalServerError, response);
}
}
}
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
using DotnetFoundation.Api.Helpers;
using DotnetFoundation.Application.Exceptions;
using DotnetFoundation.Application.Interfaces.Services;
using DotnetFoundation.Application.Models.Common;
Expand All @@ -13,9 +14,12 @@ namespace DotnetFoundation.Api.Controllers;
public class UserController : ControllerBase
{
private readonly IUserService _userService;
public UserController(IUserService userService)
private readonly ErrorResponse _errorResponse;

public UserController(IUserService userService, ErrorResponse errorResponse)
{
_userService = userService;
_errorResponse = errorResponse;
}

/// <summary>
Expand All @@ -40,7 +44,8 @@ public async Task<ActionResult<BaseResponse<List<UserResponse>>>> GetAllUsersAsy
{
response.Message = ex.Message;
response.Status = ResponseStatus.Error;
return BadRequest(response);
response.Errors = _errorResponse.GetErrorResponse();
return StatusCode(StatusCodes.Status500InternalServerError, response);
}
}

Expand All @@ -67,11 +72,13 @@ public async Task<ActionResult<BaseResponse<UserResponse>>> GetUserByIdAsync(int
{
response.Message = ex.Message;
response.Status = ResponseStatus.Error;
response.Errors = _errorResponse.GetErrorResponse();
return BadRequest(response);
}
catch (Exception ex)
{
response.Message = ex.Message;
response.Errors = _errorResponse.GetErrorResponse();
response.Status = ResponseStatus.Error;
return StatusCode(StatusCodes.Status500InternalServerError, response);
}
Expand Down Expand Up @@ -101,11 +108,13 @@ public async Task<ActionResult<BaseResponse<bool>>> AddUserRoleAsync(UserRoleReq
{
response.Message = ex.Message;
response.Status = ResponseStatus.Error;
response.Errors = _errorResponse.GetErrorResponse();
return BadRequest(response);
}
catch (Exception ex)
{
response.Message = ex.Message;
response.Errors = _errorResponse.GetErrorResponse();
response.Status = ResponseStatus.Error;
return StatusCode(StatusCodes.Status500InternalServerError, response);
}
Expand Down Expand Up @@ -139,11 +148,13 @@ public async Task<ActionResult<BaseResponse<UserResponse>>> UpdateUserAsync(int
{
response.Message = ex.Message;
response.Status = ResponseStatus.Error;
response.Errors = _errorResponse.GetErrorResponse();
return BadRequest(response);
}
catch (Exception ex)
{
response.Message = ex.Message;
response.Errors = _errorResponse.GetErrorResponse();
response.Status = ResponseStatus.Error;
return StatusCode(StatusCodes.Status500InternalServerError, response);
}
Expand Down Expand Up @@ -172,12 +183,14 @@ public async Task<ActionResult<BaseResponse<UserResponse>>> DeleteUserAsync(int
{
response.Message = ex.Message;
response.Status = ResponseStatus.Error;
response.Errors = _errorResponse.GetErrorResponse();
return BadRequest(response);
}
catch (Exception ex)
{
response.Message = ex.Message;
response.Status = ResponseStatus.Error;
response.Errors = _errorResponse.GetErrorResponse();
return StatusCode(StatusCodes.Status500InternalServerError, response);
}
}
Expand Down
Loading

0 comments on commit b6efa10

Please sign in to comment.