static public List <ArticleUserPair> GetUserArticlePair(IRepositoryWrapper repositoryWrapper, List <Article> articleList) { if (repositoryWrapper == null || articleList == null) { return(null); } List <ArticleUserPair> articleUserPairList = new List <ArticleUserPair>(); UserArticles userArticle = null; User tempUser = null; foreach (var article in articleList) { article.ArticleCategory = repositoryWrapper.ArticlesCategory.GetCategory(article.ArticleCategoryRefId); userArticle = repositoryWrapper.UserArticles.GetUserArticle(article); if (userArticle != null) { tempUser = repositoryWrapper.Account.GetUser(userArticle.UserRefId); if (tempUser != null) { articleUserPairList.Add(new ArticleUserPair() { Article = article, User = tempUser }); } } } return(articleUserPairList); }
private User GetUserFromArticle(Article article) { UserArticles userArticle = _repositoryWrapper.UserArticles.GetUserArticle(article); User userFromArticle = _repositoryWrapper.Account.GetUser(userArticle.UserRefId); return(userFromArticle); }
private void FillConcreteArticleModel(ConcreteArticleModel concreteArticleModel, long lArticleId, long lUserId) { Article conreteArticle = _repositoryWrapper.Articles.GetArticle(lArticleId); UserArticles concreteUserArticle = new UserArticles(); if (lUserId > -1) { concreteUserArticle = _repositoryWrapper.UserArticles .GetUserArticle(lArticleId, lUserId); } else { concreteUserArticle = _repositoryWrapper.UserArticles .GetUserArticle(lArticleId); } conreteArticle.ArticleCategory = _repositoryWrapper.ArticlesCategory .GetCategory(conreteArticle.ArticleCategoryRefId); if (lUserId > -1) { concreteUserArticle.User = _repositoryWrapper.Account.GetUser(lUserId); } else { concreteUserArticle.User = _repositoryWrapper.Account.GetUser(concreteUserArticle.UserRefId); } concreteArticleModel.Article = conreteArticle; concreteArticleModel.UserArticle = concreteUserArticle; }
public bool AddToFavourites(string userId, int articleId) { var user = this.DbContext .Users .FirstOrDefault(x => x.Id == userId); var article = this.DbContext .Articles .FirstOrDefault(x => x.Id == articleId); if (user == null || article == null) { return(false); } var userArticle = new UserArticles() { UserId = userId, ArticleId = articleId, AddedToFavouritesOn = DateTime.UtcNow }; bool alreadyInFavourites = this.DbContext.FavouriteUserArticles .Any(x => x.UserId == userId && x.ArticleId == articleId); if (alreadyInFavourites) { return(false); } user.FavouriteArticles.Add(userArticle); this.DbContext.SaveChanges(); return(true); }
private UserArticles GetNewUserArticle(User user, Article article) { UserArticles userArticles = new UserArticles(); userArticles.ArticleRefId = article.Id; userArticles.UserRefId = user.Id; return(userArticles); }
private void DeleteUserArticleDb(long lLoggedUserId, long lArticleId) { User user = _repositoryWrapper.Account.GetUser(lLoggedUserId); Article articleFromDb = _repositoryWrapper.Articles.GetArticle(lArticleId); UserArticles userArticleFromDb = _repositoryWrapper.UserArticles.GetUserArticle(articleFromDb.Id, user.Id); if (user != null && articleFromDb != null && userArticleFromDb != null) { _repositoryWrapper.UserArticles.Delete(userArticleFromDb); _repositoryWrapper.Articles.Delete(articleFromDb); _repositoryWrapper.Save(); } }