public IActionResult getUserChat([FromBody] int userId) { List <Conversation> conversations = contactsRepo.getconversations(userId); if (conversations != null) { List <User> usercontacts = user.getUsersByConversation(conversations, userId); List <ContactsVm> Contacts = new List <ContactsVm>(); foreach (var item in usercontacts) { ContactsVm contact = new ContactsVm(); contact.ContactID = item.ID; contact.ImageUrl = item.ImageUrl; contact.UserName = item.UserName; contact.ConnectionId = item.ConnectionId; contact.Status = item.Status; //srry for this line try to change it if you have time contact.LastMessage = messages.GetMessagesByConvId(contactsRepo.getConversationbyUsersID(userId, contact.ContactID).ID).LastOrDefault()?.Body; Contacts.Add(contact); } return(Ok(Contacts)); } else { return(Ok(null)); } }
public async Task <ContactsVm> GetById(long contactId) { var contact = await _context.Contacts.FindAsync(contactId); var contactsViewModel = new ContactsVm() { ID = contact.ID, ApartmentNumber = contact.ApartmentNumber, NameStreet = contact.NameStreet, UserIds = contact.UserID }; return(contactsViewModel); }