public async Task <IActionResult> CreateMessage(int userId, [FromBody] SaveMessageResource msgResource)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var profile = await serviceProfile.GetProfile(userId);

            if (profile == null)
            {
                return(BadRequest("Can't find user"));
            }

            msgResource.SenderMessId = userId;
            var msg = mapper.Map <SaveMessageResource, Message>(msgResource);

            msg.CreatedAt = DateTime.Now;
            msg.CreatedBy = profile.Id.ToString();

            await service.AddMessageAsync(msg);

            await uow.CompleteAsync();

            msg = await service.GetMessage(msg.Id);

            return(Ok(mapper.Map <Message, MessageResource>(msg)));
        }
        public async Task <ActionResult <MessageResource> > PostMessageAsync([FromBody] SaveMessageResource resource)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState.GetErrorMessages()));
            }

            var messageObj = _mapper.Map <SaveMessageResource, Message>(resource);
            var result     = await _messageService.SaveAsync(messageObj);

            if (!result.Success)
            {
                return(BadRequest(result.Message));
            }

            var messageResource = _mapper.Map <Message, MessageResource>(result.MessageObj);

            return(Ok(messageResource));
        }
Example #3
0
        public async Task <IActionResult> PostAsync([FromBody] SaveMessageResource resource)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState.GetErrorMessages()));
            }

            var message = _mapper.Map <SaveMessageResource, Message>(resource);
            var result  = await _messageService.SaveAsync(message, message.FreelancerId, message.EmployerId);

            if (!result.Success)
            {
                return(BadRequest(result.Message));
            }

            var messageResource = _mapper.Map <Message, MessageResource>(result.Resource);

            return(Ok(messageResource));
        }