Пример #1
0
        public async Task <IActionResult> GetMessageById([FromRoute] Guid messageId)
        {
            var message = await UserMessagesService.GetMessageById(messageId, UserCode);

            if (message == null)
            {
                return(NotFound());
            }
            return(Ok(message));
        }
Пример #2
0
        public async Task <IActionResult> DeleteMessage([FromRoute] Guid messageId)
        {
            var message = await UserMessagesService.GetMessageById(messageId, UserCode);

            if (message == null)
            {
                return(NotFound());
            }
            await UserMessagesService.MarkMessageAsDeleted(messageId, UserCode);

            return(NoContent());
        }
Пример #3
0
        public async Task <IActionResult> MarkMessageAsRead([FromRoute] Guid messageId)
        {
            var message = await UserMessagesService.GetMessageById(messageId, UserCode);

            if (message == null)
            {
                return(NotFound());
            }
            if (message.IsRead)
            {
                ModelState.AddModelError(nameof(message), "This message is already read.");
                return(BadRequest(new ValidationProblemDetails(ModelState)));
            }
            await UserMessagesService.MarkMessageAsRead(messageId, UserCode);

            return(NoContent());
        }