示例#1
0
        public ResultModel CreateMessage(CreateMessageData data)
        {
            var userId = ((RoPrincipal)User).UserId;
            var msg    = new Message
            {
                AuthorId = userId,
                Text     = data.Text,
                TicketId = data.TicketId
            };
            int id = _supportTicketService.CreateMessage(msg);

            return(new ResultModel(true, id));
        }
示例#2
0
        public int CreateMessage(CreateMessageData message)
        {
            using (MooDB db = new MooDB())
            {
                User to = null;
                if (message.ToID != null)
                {
                    to = (from u in db.Users
                          where u.ID == message.ToID
                          select u).SingleOrDefault<User>();
                    if (to == null) throw new Exception("无此用户");
                }

                Message newMessage = new Message
                {
                    Content = message.Content,
                    CreateTime = DateTime.Now,
                    From = Security.CurrentUser.GetDBUser(db),
                    To = to,
                    HasRead = to == null ? true : false
                };

                Access.Check(db, newMessage, Function.CreateMessage);

                db.Messages.AddObject(newMessage);
                db.SaveChanges();

                WebSockets.WebSocketsAPIHandler.NotifyNewMessage(to);

                return newMessage.ID;
            }
        }