public void SendMessage(string message, int projectId, string senderId) { var user = this.UnitOfWork.Users.All().FirstOrDefault(u => u.Id == senderId); var project = this.UnitOfWork.Projects.GetById(projectId); var msg = new SendedMessageViewModel { SenderName = user.UserName, PostDate = DateTime.Now.ToLongTimeString(), Message = message }; Message dbMessage = new Message { DateSend = DateTime.Now, Body = message, Project = project, Sender = user }; this.UnitOfWork.Messages.Add(dbMessage); this.UnitOfWork.SaveChanges(); Clients.Group(projectId.ToString()).addMessage(msg); }
public void Create(SendedMessageViewModel model) { var user = _context.Users.FirstOrDefault(x => x.Id == _accessor.HttpContext.Session.GetInt32("id").Value); var id = 0; var messageList = new MessagesList { StudentId = user.Role == Roles.Student ? user.Id : model.To, TeacherId = user.Role == Roles.Teacher ? user.Id : model.To }; if (!_context.MessagesLists.Any(x => x.StudentId == messageList.StudentId && x.TeacherId == messageList.TeacherId)) { _context.MessagesLists.Add(messageList); _context.SaveChanges(); id = messageList.Id; } else { id = _context.MessagesLists.FirstOrDefault(x => x.StudentId == messageList.StudentId && x.TeacherId == messageList.TeacherId).Id; } _context.Messages.Add(new Message { Content = model.Content, Date = DateTime.Now, MessageListId = id, WriterId = user.Id }); _context.SaveChanges(); }
public IActionResult Send(SendedMessageViewModel model) { try { _service.Create(model); return(Ok(new { Date = DateTime.Now.ToString("dd.MM.yy HH:mm") })); } catch (Exception ex) { return(BadRequest("Mesaj göndərilmədi")); } }