protected void BtnAddMessage_Click(object sender, EventArgs e) { //"OMSG对象Json + MSG1对象Json"; AddMessageModel msgObj = new AddMessageModel { Omsg1Model = ModelHelper.GetMSG1Model(), OmsgModel = ModelHelper.GetOmsgModel(), }; string result = InterfaceController.AddMessage(msgObj); APIReturnModel model = null; try { JavaScriptSerializer js = new JavaScriptSerializer(); if (!string.IsNullOrEmpty(result)) { model = js.Deserialize <APIReturnModel>(result); } } catch (Exception ex) { Console.WriteLine(ex); } Response.Write(JsonHelper.DataContractJsonSerialize <APIReturnModel>(model)); }
private void AddMessage() { if (string.IsNullOrEmpty(CallWebApiMain._accToken)) { ViewData["result"] = "请先登录!"; return; } //CallWebApiMain.Login(TxtUserName, TxtPassWord); //"OMSG对象Json + MSG1对象Json"; AddMessageModel msgObj = new AddMessageModel { MSG1 = ModelHelper.GetMSG1Model(), OMSG = ModelHelper.GetOmsgModel(), }; //添加消息 string result = CallWebApiMain.AddMessage(msgObj); APIReturnModel model = null; JavaScriptSerializer js = new JavaScriptSerializer(); if (!string.IsNullOrEmpty(result)) { model = js.Deserialize <APIReturnModel>(result); } ViewData["result"] = model != null ? model.SequenceId : "Error"; }
/// <summary> /// 添加一条消息 /// </summary> /// <param name="model"></param> /// <returns></returns> public async Task Add(AddMessageModel model) { long messageID; using (var uw = this.CreateUnitOfWork()) { var entity = new Message { CommentID = model.Comment, CreateDate = DateTime.Now, FromUserID = model.FromUser, TopicID = model.Topic, ToUserID = model.ToUser, Type = model.Type }; await uw.InsertAsync(entity); messageID = entity.ID; } var redis = this.RedisProvider.GetDatabase(); string key = RedisKeys.GetUserMessageCacheKey(model.ToUser); await redis.SetAddAsync(key, messageID); }
/// <summary> /// 创建待推送的消息 /// </summary> /// <param name="msgObj">待推送消息实体类,OMSG对象Json + MSG1对象Json</param> /// <returns></returns> public static string AddMessage(AddMessageModel msgObj) { string resultStr = string.Empty; //参数 string pars = string.Empty; string url = string.Format("{0}{1}", BaseUrl, _getMessageByTopNumberURL); string pReqPar = JsonConvert.SerializeObject(msgObj); return(GetResponse(pReqPar, url, out statusCode)); #region 参数初始化和返回结果处理 ////"OMSG对象Json + MSG1对象Json"; //AddMessageModel msgObj = new AddMessageModel { // Omsg1Model = ModelHelper.GetMSG1Model(), // OmsgModel = ModelHelper.GetOmsgModel(), //}; //try //{ // JavaScriptSerializer js = new JavaScriptSerializer(); // if (!string.IsNullOrEmpty(returnStr)) // { // var operateResullt = js.Deserialize<APIReturnModel>(returnStr); // ErrMsg = operateResullt.ErrMsg; // SequenceId = operateResullt.SequenceId; // if (string.IsNullOrEmpty(ErrMsg)) // oSuccess = true; // else // oSuccess = false; // } // else // { // ErrMsg = ""; // SequenceId = ""; // oSuccess = false; // } //} //catch (Exception ex) //{ // Console.WriteLine(ex); //} //return Request.CreateResponse(HttpStatusCode.OK, new //{ // //errcode = 0, // //errmsg = "success", // //viplist = rd.VipList, // //pagecount = tempList.PageCount, // //rowcount = tempList.RowCount //}); #endregion }
public async Task <ActionResult <ChatMessageModel> > AddChatMessage(AddMessageModel request) { var uid = new Guid(HttpContext.Request.Headers[AuthorizationHeaders.PersonUid].First()); var validationResult = _chatValidation.ValidateAddChatMessage(request, uid); if (!validationResult.ValidationResult) { return(BadRequest(validationResult.ValidationMessage)); } return(await _chatLogic.AddChatMessage(request, uid)); }
public ActionResult Post([FromBody] AddMessageModel addMessageObj) { MessageModel message = new MessageModel { id = Guid.NewGuid().ToString(), userName = addMessageObj.userName, userMail = addMessageObj.email, subject = addMessageObj.subject, message = addMessageObj.message }; db.Messages.Add(message); db.SaveChanges(); return(Ok(message)); }
public async Task <AddMessageResult> AddMessage(AddMessageModel model) { var mes = _mapper.Map <Message>(model); mes.Date = DateTime.Now; var email = User.Identity.Name; var user = await _userManager.FindByEmailAsync(email); mes.UserId = user.Id; ctx.Messages.Add(mes); await ctx.SaveChangesAsync(); return(new AddMessageResult() { Success = true }); }
public async Task <ChatMessageModel> AddChatMessage(AddMessageModel request, Guid personUid) { var chatEntity = await _chatRepository.GetChat(request.ChatUid); var personEntity = await _personRepository.GetPerson(personUid); var chatMessageUid = Guid.NewGuid(); var date = DateTime.UtcNow; var messageEntity = new ChatMessageEntity { ChatMessageUid = chatMessageUid, Content = request.Content, MessageTime = date, ChatId = chatEntity.ChatId, AuthorId = personEntity.PersonId }; await _chatRepository.AddChatMessage(messageEntity); var chatImageUids = new List <Guid>(); foreach (var image in request.Images) { var chatImageUid = await _imageLogic.SaveImage(image); await _chatRepository.SaveChatImage(chatMessageUid, new ChatImageContentEntity { ChatImageContentUid = chatImageUid }); chatImageUids.Add(chatImageUid); } await _chatRepository.AddLastReadChatMessage(chatEntity, personUid, messageEntity.ChatMessageId); await SendPushNotificationsToChatMembers(chatEntity, personEntity, request.Content); return(new ChatMessageModel { Images = chatImageUids, MessageContent = request.Content, MessageUid = chatMessageUid, PersonUid = personEntity.PersonUid, PersonName = personEntity.Name, MessageTime = date, PersonImageUid = personEntity.PersonImageContentEntity?.PersonImageContentUid }); }
public async Task <ActionResult> AddToTopic([FromRoute] long id, [FromBody] AddMessageModel message) { try { var user = await _ctx.Users.GetUserByName(User.Identity.Name); message.Body = Regex.Replace(message.Body, "<.*?>", string.Empty); message.Body = message.Body.Replace("\r\n", "\n"); var msgstring = message.Body.Split(new[] { "\n" }, StringSplitOptions.None); message.Body = string.Join("<br/>", msgstring); var msg = new DbMessage { AuthorId = user.Id, Body = message.Body, Created = DateTime.Now, IsRead = false, TopicId = id }; var dbMessage = await _ctx.Messages.Create(msg); await _ctx.Topics.UpdateTs(id); var model = Mapper.Map <MessageModel>(dbMessage); model.IsAuthor = true; MessagePolling.Publish(user.Id, new LpMessage { Name = user.FirstName, id = user.Id, Topic = id, Unread = 1 }); return(Json(model)); } catch (Exception ex) { _logger.LogError(ex.Message); return(BadRequest()); } }
public async Task <Result <long> > Add(AddCommentModel model) { using (var uw = this.CreateUnitOfWork()) { var topic = await uw.GetAsync <Topic>(t => t.ID == model.TopicID && !t.IsDelete); if (topic == null) { return(Result <long> .ErrorResult("该主题不存在")); } else if (topic.IsLock) { return(Result <long> .ErrorResult("该主题已被锁定")); } if (model.ReplyTo.HasValue) { var replyToComment = await uw.GetAsync <Comment>(t => t.ID == model.ReplyTo.Value && !t.IsDelete); if (replyToComment == null) { return(Result <long> .ErrorResult("该评论不存在")); } if (replyToComment.TopicID != model.TopicID) { return(Result <long> .ErrorResult("错误的请求")); } } using (var tran = uw.BeginTransaction()) { var entity = new Comment { Content = model.Content, CreateDate = DateTime.Now, CreateUser = this.SecurityManager.CurrentUser.ID, IsDelete = false, ReplyID = model.ReplyTo, TopicID = model.TopicID }; await uw.InsertAsync(entity); topic.LastReplyDate = DateTime.Now; topic.LastReplyUserID = this.SecurityManager.CurrentUser.ID; await uw.UpdateAsync(topic); #region 发送回复主题的消息 { if (this.SecurityManager.CurrentUser.ID != topic.CreateUser) { var addMessageModel = new AddMessageModel { Comment = entity.ID, FromUser = this.SecurityManager.CurrentUser.ID, Topic = topic.ID, ToUser = topic.CreateUser, Type = MessageType.Comment }; await this.MessageService.Add(addMessageModel); } } #endregion #region 发送@的评论 { var atUserList = Utility.AtHelper.FetchUsers(model.Content); if (atUserList.Count > 0) { var userList = await uw.QueryAsync <User>(t => atUserList.Contains(t.UserName)); foreach (var user in userList) { if (user.ID == this.SecurityManager.CurrentUser.ID || user.ID == topic.CreateUser) //过滤@自己,过滤重复@作者 { continue; } var addMessageModel = new AddMessageModel { Comment = entity.ID, FromUser = this.SecurityManager.CurrentUser.ID, Topic = topic.ID, ToUser = user.ID, Type = MessageType.At }; await this.MessageService.Add(addMessageModel); } } } #endregion tran.Commit(); return(Result.SuccessResult(entity.ID)); } } }
public (bool ValidationResult, string ValidationMessage) ValidateAddChatMessage(AddMessageModel request, Guid personUid) { var personChatList = _chatLogic.GetPersonChatList(personUid).Result; if (!personChatList.Any(x => x.ChatUid == request.ChatUid)) { return(false, ErrorDictionary.GetErrorMessage(20, _culture)); } return(true, string.Empty); }