コード例 #1
0
        public async Task <IActionResult> PutNotification(Guid id, V1DTO.UserNotificationEditDTO notificationEditDTO)
        {
            // Don't allow wrong data
            if (id != notificationEditDTO.Id)
            {
                return(BadRequest(new V1DTO.MessageDTO("id and notification.id do not match")));
            }
            var userNotification = await _bll.UserNotifications.FirstOrDefaultAsync(id, User.UserGuidId());

            if (userNotification == null)
            {
                _logger.LogError($"EDIT. No such notification: {id.ToString()}, user: {User.UserGuidId().ToString()}");
                return(NotFound(new V1DTO.MessageDTO($"No Notification found for id {id.ToString()}")));
            }
            // Update existing notification
            await _bll.UserNotifications.UpdateAsync(_mapper.MapUserNotificationEditToBLL(notificationEditDTO), User.UserGuidId());

            await _bll.SaveChangesAsync();

            return(NoContent());
        }