public int AddLikeOrDislike(int userId, int answerId, ActivityType activityType) { var activity = new QAActivity() { UserId = userId, AnswerId = answerId, ActivityType = activityType }; var newActivity = this.Mapper.Map <DataModel.QAActivity>(activity); var data = this.DataBase.SingleOrDefault <DataModel.QAActivity>("where AnswerId=@0 and UserId=@1 and IsDeleted=0", newActivity.AnswerId, newActivity.UserId); if (data == null) { return(Convert.ToInt32(this.DataBase.Insert(newActivity))); } else if (data.ActivityType == newActivity.ActivityType) { data.IsDeleted = true; data.DateDeleted = DateTime.UtcNow; return(Convert.ToInt32(this.DataBase.Update(data, new List <string> { "IsDeleted", "DateDeleted" }))); } else { data.IsDeleted = true; data.DateDeleted = DateTime.UtcNow; this.DataBase.Update(data, new List <string> { "IsDeleted", "DateDeleted" }); return(Convert.ToInt32(this.DataBase.Insert(newActivity))); } }
public int AddView(int userId, int questionId) { var activity = new QAActivity() { UserId = userId, QuestionId = questionId, ActivityType = ActivityType.View }; var newActivity = this.Mapper.Map <DataModel.QAActivity>(activity); return(Convert.ToInt32(this.DataBase.Insert(newActivity))); }
public bool AddUpVote(int userId, int questionId) { var activity = new QAActivity() { UserId = userId, QuestionId = questionId, ActivityType = ActivityType.UpVote }; var newActivity = this.Mapper.Map <DataModel.QAActivity>(activity); var data = this.DataBase.SingleOrDefault <DataModel.QAActivity>("where QuestionId=@0 and UserId=@1 and ActivityType=@2 and IsDeleted=0", newActivity.QuestionId, newActivity.UserId, newActivity.ActivityType); if (data == null) { this.DataBase.Insert(newActivity); return(true); } data.IsDeleted = true; data.DateDeleted = DateTime.UtcNow; this.DataBase.Update(data, new List <string> { "IsDeleted", "DateDeleted" }); return(false); }