// წაშლილი კატეგორიის ბაზიდან ამოშლის ფუნქცია public void DeleteUnselectedCategories(ArticlesCustomClass model, IEnumerable <int> PrevSelectedCategories) { var result = _db.articles.FirstOrDefault(e => e.Id == model.Id); var UnSelectedCategories = PrevSelectedCategories.Where(f => !model.CategoriesList.Contains(f)).ToList(); var categoryResult = _db.articleCategories.Where(e => e.articlesId == result.Id); foreach (var category in UnSelectedCategories) { foreach (var item in categoryResult) { if (category == item.categoriesId) { var UnSelectedCategoriesResult = _db.articleCategories.Where(e => e.categoriesId == category); _db.articleCategories.RemoveRange(UnSelectedCategoriesResult); } } } _db.SaveChanges(); }
// data for products list model public ArticlesCustomClass GetArticleModelData(int id) { //var model = new ArticlesCustomClass //{ var result = GetArticlesById(id); var model = new ArticlesCustomClass() { Id = result.Id, Title = result.title, Content = result.content, Date = result.date, User = result.users, IsBlocked = result.isBlocked, Ratings = GetRatingsByArticlesId(result.Id), ImagesList = GetImagesByArticleId(result.Id), Categories = GetCategoriesByArticleId(result.Id).ToList(), MainImage = GetMainImageByArticleId(result.Id), Requests = GetRequestsByArticleId(result.Id) }; //}; return(model); }
// წაშლილი მოთხოვნის ბაზიდან ამოშლის ფუნქცია public void DeleteUnselectedRequest(ArticlesCustomClass model, IEnumerable <int> PrevSelectedRequests) { var result = _db.articles.FirstOrDefault(e => e.Id == model.Id); var requestResult = _db.requestsArticles.Where(e => e.articlesId == result.Id); if (model.RequestsList != null) { var UnSelectedRequests = PrevSelectedRequests.Where(f => !model.RequestsList.Contains(f)).ToList(); foreach (var request in UnSelectedRequests) { foreach (var item in requestResult) { if (request == item.requestsId) { var UnSelectedRequestsResult = _db.requestsArticles.Where(e => e.requestsId == request); _db.requestsArticles.RemoveRange(UnSelectedRequestsResult); } } } _db.SaveChanges(); } else // თუ არც ერთ მოთხოვნა აღარაა მულტისელექტში, ყველა მოთხოვნა იშლება ბაზიდან { foreach (var request in PrevSelectedRequests) { foreach (var item in requestResult) { if (request == item.requestsId) { var UnSelectedRequestsResult = _db.requestsArticles.Where(e => e.requestsId == request); _db.requestsArticles.RemoveRange(UnSelectedRequestsResult); } } } _db.SaveChanges(); } }
//Create public void CreateArticles(ArticlesCustomClass article) { var newarticle = new articles(); newarticle.title = article.Title; newarticle.content = article.Content; newarticle.date = DateTime.Now; newarticle.isBlocked = true; if (LoginHelper.IsLoggedIn()) { newarticle.usersId = LoginHelper.CurrentUser().Id; } else { newarticle.usersId = 16; // რომ წავა დასასრულისკენ პროექტი, ეს იფ-ელსი წაიშლება და მარტო current user დარჩება } if (!ExistCustomArticle(article)) { _db.articles.Add(newarticle); //_db.SaveChanges(); foreach (var categoryId in article.CategoriesList) { _db.articleCategories.Add( new articleCategories() { categoriesId = categoryId, articlesId = newarticle.Id }); _db.SaveChanges(); } if (article.RequestsList != null) { foreach (var requestID in article.RequestsList) { _db.requestsArticles.Add( new requestsArticles() { requestsId = requestID, articlesId = newarticle.Id }); _db.SaveChanges(); } } var mapPath = HostingEnvironment.MapPath("~/images/"); foreach (var file in article.Images) { if (file != null) { file.SaveAs(mapPath + file.FileName); _db.images.Add(new images() { name = file.FileName, url = "~/images/" + file.FileName, articlesId = newarticle.Id, usersId = null, isMain = false }); _db.SaveChanges(); } else { continue; } } } }
public bool ExistCustomArticle(ArticlesCustomClass article) { return(_db.articles.FirstOrDefault(e => e.title == article.Title) == null ? false : true); }
//Edit public void EditArticles(ArticlesCustomClass article) { var result = _db.articles.FirstOrDefault(e => e.Id == article.Id); var categoryResult = _db.articleCategories.Where(e => e.articlesId == article.Id); var requestResult = _db.requestsArticles.Where(e => e.articlesId == article.Id); if (!ExistCustomArticle(article) || result.title == article.Title) { result.title = article.Title; result.content = article.Content; //result.usersId = article.UsersId; } _db.SaveChanges(); //კატეგორიის ცვლილებას აკეთებს if (article.CategoriesList != null) { var notTheseCategoryIds = categoryResult.Select(e => e.categoriesId); var CategorySelects = article.CategoriesList.Where(f => !notTheseCategoryIds.Contains(f)).ToList(); foreach (var categoryId in CategorySelects) { _db.articleCategories.Add( new articleCategories() { categoriesId = categoryId, articlesId = result.Id }); _db.SaveChanges(); } } //რექუესტის ცვლილების აკეტებს if (article.RequestsList != null) { var notTheseRequestsIds = requestResult.Select(e => e.requestsId); var RequestsSelects = article.RequestsList.Where(f => !notTheseRequestsIds.Contains(f)).ToList(); foreach (var requestID in RequestsSelects) { _db.requestsArticles.Add( new requestsArticles() { requestsId = requestID, articlesId = result.Id }); } _db.SaveChanges(); } if (article.Images != null) { var mapPath = HostingEnvironment.MapPath("~/images/"); foreach (var file in article.Images) { if (file != null) { file.SaveAs(mapPath + file.FileName); _db.images.Add(new images() { name = file.FileName, url = "~/images/" + file.FileName, articlesId = result.Id, usersId = null, isMain = false }); _db.SaveChanges(); } else { continue; } } } }