/// <summary> /// 添加回复 /// </summary> /// <param name="postsId"></param> /// <param name="contents"></param> /// <returns></returns> public bool AddAnswer(int postsId, string contents, string title) { bool result = false; if (!string.IsNullOrEmpty(contents)) { PostsRepository repository = new PostsRepository(); // Entity.m_PostsAnswer model = new Entity.m_PostsAnswer(); model.CommentsCount = 0; model.Contents = contents; model.IsShow = true; model.Plus = 0; model.PostDate = DateTime.Now; model.PostsId = postsId; model.UserId = Framework.Core.Transform.GetInt(HttpContext.Session.GetString("UserId"), 0); //消息实体 Entity.m_Message message = new Entity.m_Message(); message.AppendUserId = model.UserId; message.Contents = Common.MessageHtml.GetMessageContent(HttpContext.Session.GetString("NickName"), postsId, title, 10); message.IsRead = false; message.MessageType = 10; message.ObjId = postsId; message.PostDate = DateTime.Now; message.UserId = repository.GetPostsByUserId(postsId); //保存 result = repository.AddAnswer(model, message); if (result) { Extensions.SignalRCore.PushUserMessage(message.UserId.ToString(), _messageHubContext); } } return(result); }
public int AddCommentsPlus(int commentId, int postsId, string title) { PostsRepository repository = new PostsRepository(); Entity.m_PostsCommentsRecords model = new Entity.m_PostsCommentsRecords(); model.CommentId = commentId; model.AppendTime = DateTime.Now; model.RecordsType = 1; model.UserId = Framework.Core.Transform.GetInt(HttpContext.Session.GetString("UserId"), 0); //消息通知 Entity.m_Message message = new Entity.m_Message(); message.AppendUserId = model.UserId; message.Contents = Common.MessageHtml.GetMessageContent(HttpContext.Session.GetString("NickName"), postsId, title, 14); message.IsRead = false; message.MessageType = 14; message.ObjId = postsId; message.PostDate = DateTime.Now; message.UserId = repository.GetPostsCommentsByUserId(commentId); int resultCount = repository.AddCommentsRecordsByPlus(model, message); //消息推送 if (resultCount > 0) { Extensions.SignalRCore.PushUserMessage(message.UserId.ToString(), _messageHubContext); } return(resultCount); }
public int AddUserPlus(int objectId, string title, int plusType, int toUserId, int id = 0) { UserRepository repository = new UserRepository(); Entity.m_UserPlusRecords model = new Entity.m_UserPlusRecords(); model.ObjectId = objectId; model.AppendTime = DateTime.Now; model.RecordsType = plusType; model.UserId = Framework.Core.Transform.GetInt(HttpContext.Session.GetString("UserId"), 0); // int messageType = 0; switch (model.RecordsType.Value) { case 1: messageType = 12; break; case 2: messageType = 13; break; case 3: messageType = 14; break; case 4: messageType = 20; break; case 5: messageType = 21; break; } //消息通知 Entity.m_Message message = new Entity.m_Message(); message.AppendUserId = model.UserId; message.Contents = Common.MessageHtml.GetMessageContent(HttpContext.Session.GetString("NickName"), objectId, title, messageType, id); message.IsRead = false; message.MessageType = messageType; message.ObjId = objectId; message.PostDate = DateTime.Now; message.UserId = toUserId; //消息推送 int resultCount = repository.AddUserPlusRecords(model, message); if (resultCount > 0) { Extensions.SignalRCore.PushUserMessage(message.UserId.ToString(), _messageHubContext); } return(resultCount); }
/// <summary> /// 添加帖子内容点赞 /// </summary> /// <param name="model"></param> /// <returns>-1 表示取消点赞 1表示增加点赞 0表示异常</returns> public int AddPostsRecordsByPlus(Entity.m_PostsRecords model, Entity.m_Message message) { int result = 0; //加载是否已经存在点赞记录 var queryCount = _dbContext.m_PostsRecords.Where(m => m.PostsId == model.PostsId && m.UserId == model.UserId).Count(); using (var tran = _dbContext.Database.BeginTransaction()) { try { if (queryCount > 0) { //存在则撤回点赞记录 _dbContext.MangoRemove <Entity.m_PostsRecords>(m => m.PostsId == model.PostsId && m.UserId == model.UserId); // _dbContext.MangoUpdate <Entity.m_Posts>(m => m.PlusCount == m.PlusCount - 1, m => m.PostsId == model.PostsId); tran.Commit(); result = -1; } else { //不存在则新增点赞记录 _dbContext.Add(message); _dbContext.SaveChanges(); // _dbContext.Add(model); _dbContext.SaveChanges(); // _dbContext.MangoUpdate <Entity.m_Posts>(m => m.PlusCount == m.PlusCount + 1, m => m.PostsId == model.PostsId); tran.Commit(); result = 1; } } catch { tran.Rollback(); result = 0; } } return(result); }
/// <summary> /// 添加回答评论 /// </summary> /// <param name="model"></param> /// <returns></returns> public bool AddAnswerComments(Entity.m_PostsComments model, Entity.m_Message message) { using (var tran = _dbContext.Database.BeginTransaction()) { try { _dbContext.Add(model); _dbContext.SaveChanges(); // _dbContext.Add(message); _dbContext.SaveChanges(); // _dbContext.MangoUpdate <Entity.m_PostsAnswer>(m => m.CommentsCount == m.CommentsCount + 1, m => m.AnswerId == model.AnswerId); tran.Commit(); return(true); } catch { tran.Rollback(); return(false); } } }
/// <summary> /// 添加用户点赞消息 /// </summary> /// <param name="model"></param> /// <param name="message"></param> /// <returns></returns> public int AddUserPlusRecords(Entity.m_UserPlusRecords model, Entity.m_Message message) { //记录类型 1 帖子点赞 2 帖子回答点赞 3 帖子评论点赞 4 文档主题点赞 5 文档点赞 int result = 0; //加载是否已经存在点赞记录 var queryCount = _dbContext.m_UserPlusRecords.Where(m => m.ObjectId == model.ObjectId && m.UserId == model.UserId && m.RecordsType == model.RecordsType).Count(); using (var tran = _dbContext.Database.BeginTransaction()) { try { if (queryCount > 0) { //存在则撤回点赞记录 _dbContext.MangoRemove <Entity.m_UserPlusRecords>(m => m.ObjectId == model.ObjectId && m.UserId == model.UserId && m.RecordsType == model.RecordsType); // switch (model.RecordsType.Value) { case 1: _dbContext.MangoUpdate <Entity.m_Posts>(m => m.PlusCount == m.PlusCount - 1, m => m.PostsId == model.ObjectId); break; case 2: _dbContext.MangoUpdate <Entity.m_PostsAnswer>(m => m.Plus == m.Plus - 1, m => m.AnswerId == model.ObjectId); break; case 3: _dbContext.MangoUpdate <Entity.m_PostsComments>(m => m.Plus == m.Plus - 1, m => m.CommentId == model.ObjectId); break; case 4: _dbContext.MangoUpdate <Entity.m_DocsTheme>(m => m.PlusCount == m.PlusCount - 1, m => m.ThemeId == model.ObjectId); break; case 5: _dbContext.MangoUpdate <Entity.m_Docs>(m => m.PlusCount == m.PlusCount - 1, m => m.DocsId == model.ObjectId); break; } tran.Commit(); result = -1; } else { //不存在则新增点赞记录 _dbContext.Add(message); _dbContext.SaveChanges(); // _dbContext.Add(model); _dbContext.SaveChanges(); // switch (model.RecordsType.Value) { case 1: _dbContext.MangoUpdate <Entity.m_Posts>(m => m.PlusCount == m.PlusCount + 1, m => m.PostsId == model.ObjectId); break; case 2: _dbContext.MangoUpdate <Entity.m_PostsAnswer>(m => m.Plus == m.Plus + 1, m => m.AnswerId == model.ObjectId); break; case 3: _dbContext.MangoUpdate <Entity.m_PostsComments>(m => m.Plus == m.Plus + 1, m => m.CommentId == model.ObjectId); break; case 4: _dbContext.MangoUpdate <Entity.m_DocsTheme>(m => m.PlusCount == m.PlusCount + 1, m => m.ThemeId == model.ObjectId); break; case 5: _dbContext.MangoUpdate <Entity.m_Docs>(m => m.PlusCount == m.PlusCount + 1, m => m.DocsId == model.ObjectId); break; } tran.Commit(); result = 1; } } catch { tran.Rollback(); result = 0; } } return(result); }