Beispiel #1
0
        public async Task <IActionResult> Delete(int id)
        {
            string usuario = UserTokenOptions.GetClaimTypesNameValue(User.Identity);

            const string endpointName = nameof(Delete);
            string       header       = $"DELETE | {usuario} | {controllerName}: {endpointName}";

            try
            {
                logger.LogInformation((int)LogEventEnum.Events.DeleteItem,
                                      $"{header} - {MessageLog.Start.Value}");

                if (await service.DeleteById(id, usuario))
                {
                    logger.LogInformation((int)LogEventEnum.Events.DeleteItem,
                                          $"{header} - {MessageLog.Stop.Value}");

                    return(Ok(new { message = MessageSuccess.Delete.Value }));
                }

                logger.LogWarning((int)LogEventEnum.Events.DeleteItemNotFound,
                                  $"{header} - {MessageError.BadRequest.Value}");

                return(BadRequest(new { message = MessageError.BadRequest.Value }));
            }
            catch (Exception ex)
            {
                logger.LogError((int)LogEventEnum.Events.DeleteItemError,
                                $"{header} - {MessageLog.Error.Value} | Exception: {ex.Message}");

                return(StatusCode(StatusCodes.Status500InternalServerError,
                                  new { message = MessageError.InternalError.Value, error = ex.Message }));
            }
        }