Esempio n. 1
0
        public async Task <SendReplyResponse> Handle(SendReplyRequest request, CancellationToken cancellationToken)
        {
            var reply = await replyManager.SendReply(request.Content, request.ReportId, request.Files) ??
                        throw new CrudException("Reply sending failed");

            if (reply.Report.ReporterId != null && httpContextReader.CurrentUserId != reply.Report.ReporterId)
            {
                await notifier.Push(NotificationMessages.SupportReplyNotification(reply.Report.Subject),
                                    reply.Report.ReporterId, NotificationType.SupportReply);
            }

            return(new SendReplyResponse {
                Reply = mapper.Map <ReplyDto>(reply)
            });
        }