From 3a0edfe9569b60321af9fdda556fae7add7f851b Mon Sep 17 00:00:00 2001 From: Developer 02 Date: Mon, 1 Jul 2024 15:54:20 +0200 Subject: [PATCH] =?UTF-8?q?Try-Catch=20zu=20UserController=20hinzugef?= =?UTF-8?q?=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/UserController.cs | 66 ++++++++++++++----- 1 file changed, 48 insertions(+), 18 deletions(-) diff --git a/DigitalData.UserManager.API/Controllers/UserController.cs b/DigitalData.UserManager.API/Controllers/UserController.cs index bfa78cf..2a600d0 100644 --- a/DigitalData.UserManager.API/Controllers/UserController.cs +++ b/DigitalData.UserManager.API/Controllers/UserController.cs @@ -2,8 +2,6 @@ using DigitalData.Core.API; using DigitalData.UserManager.Application.Contracts; using DigitalData.UserManager.Application.DTOs.User; using DigitalData.UserManager.Domain.Entities; -using DigitalData.UserManager.Infrastructure.Contracts; -using Microsoft.AspNetCore.Authentication.Cookies; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; @@ -18,41 +16,73 @@ namespace DigitalData.UserManager.API.Controllers [HttpGet("ByModuleId/{moduleId}")] public async Task GetByModuleId([FromRoute] int moduleId, [FromQuery]bool assigned = true) - { - var result = assigned ? await _service.ReadByModuleIdAsync(moduleId) : await _service.ReadUnassignedByModuleIdAsync(moduleId); - return Ok(result); + { + try + { + var result = assigned ? await _service.ReadByModuleIdAsync(moduleId) : await _service.ReadUnassignedByModuleIdAsync(moduleId); + return Ok(result); + } + catch(Exception ex) + { + _logger.LogError(ex, "{Message}", ex.Message); + return StatusCode(StatusCodes.Status500InternalServerError); + } } [HttpGet("ByGroupId/{groupId}")] public async Task GetByGroupId([FromRoute] int groupId, [FromQuery] bool assigned = true) { - var result = assigned ? await _service.ReadByGroupIdAsync(groupId) : await _service.ReadUnassignedByGroupIdAsync(groupId); ; - return Ok(result); + try + { + var result = assigned ? await _service.ReadByGroupIdAsync(groupId) : await _service.ReadUnassignedByGroupIdAsync(groupId); ; + return Ok(result); + } + catch(Exception ex) + { + _logger.LogError(ex, "{Message}", ex.Message); + return StatusCode(StatusCodes.Status500InternalServerError); + } } [HttpPost("ByDir")] public async Task CreateByDir(UserPrincipalDto upDto) { - var result = await _service.CreateAsync(upDto); - if (result.IsSuccess) + try + { + var result = await _service.CreateAsync(upDto); + if (result.IsSuccess) + { + var createdResource = new { Id = result.Data }; + var actionName = nameof(GetById); + var routeValues = new { id = createdResource.Id }; + return CreatedAtAction(actionName, routeValues, createdResource); + } + return BadRequest(result); + } + catch(Exception ex) { - var createdResource = new { Id = result.Data }; - var actionName = nameof(GetById); - var routeValues = new { id = createdResource.Id }; - return CreatedAtAction(actionName, routeValues, createdResource); + _logger.LogError(ex, "{Message}", ex.Message); + return StatusCode(StatusCodes.Status500InternalServerError); } - return BadRequest(result); } [HttpGet("ByUsername/{username}")] public virtual async Task GetByUsername([FromRoute] string username) { - var result = await _service.ReadByUsernameAsync(username); - if (result.IsSuccess) + try { - return Ok(result); + var result = await _service.ReadByUsernameAsync(username); + if (result.IsSuccess) + { + return Ok(result); + } + return NotFound(result); + } + catch(Exception ex) + { + _logger.LogError(ex, "{Message}", ex.Message); + return StatusCode(StatusCodes.Status500InternalServerError); } - return NotFound(result); } } } \ No newline at end of file