public bool AddReviewToDB_NewMethod(AddReviewToDBParam param) { try { using (DigikalaMongoDBRepository db = new DigikalaMongoDBRepository()) { Review review = new Review(param.review); db.AddReviewNew(review); if (param.AutoOff) { db.SetTaggedProduct(param.id, param.tagger); } } return(true); } catch (Exception ex) { LogDTO log = new LogDTO() { _id = ObjectId.GenerateNewId(DateTime.Now).ToString(), DateTime = DateTime.Now, Description = ex.Message, ProjectId = (int)ProjectNames.Services, Url = "DKP: " + param.review.ProductID, MethodName = "AddReviewToDB_NewMethod", Title = $"AddReviewToDB_NewMethod Error, Tagger: {param.tagger}" }; Logger.AddLog(log); return(false); } }
public IActionResult AddLabel([FromBody] AddLabelResturantParam model) { Dictionary <string, int> pol = new Dictionary <string, int>() { { "positive", 1 }, { "neutral", 0 }, { "negative", -1 } }; if (model != null) { AddReviewToDBParam param = new AddReviewToDBParam(); param.id = model.CommentId.ToString(); param.tagger = model.Tagger; ReviewDTO review = new ReviewDTO(); review._id = "000"; review.CreateDate = DateTime.Now; review.ProductID = int.Parse(model.CommentId); review.rid = int.Parse(model.CommentId); sentence sentence = new sentence(); sentence.Text = model.Text; List <Opinion> Opinions = new List <Opinion>(); if (model.ResrurantLabels.Count() > 0) { Opinions.AddRange(model.ResrurantLabels.Select(x => new Opinion { category = x.Label.Split('#')[0].ToUpper().Trim(), aspect = x.Label.Split('#')[1].ToUpper().Trim(), polarity = x.Polarity, polarityClass = pol[x.Polarity] }).ToList()); sentence.Opinions = Opinions; } if (Opinions.Count < 1) { sentence.OutOfScope = true; } review.sentences = new List <sentence>(); review.sentences.Add(sentence); param.review = new ReviewDTO(); param.review = review; using (IWebsiteCrawler digikala = new SnappfoodHelper()) { var result = digikala.AddReviewToDB_NewMethod(param); if (!result) { return(NoContent()); } } return(Json(new { Message = "ثبت شد" })); } else { return(NoContent()); } }
public AddReviewToDBResponse AddReviewNew([FromBody] AddReviewToDBParam param) { using (IWebsiteCrawler digikala = new DigikalaHelper()) { var result = digikala.AddReviewToDB_NewMethod(param); return(new AddReviewToDBResponse { Success = result }); } }
private void btnAddSentence_Click(object sender, RoutedEventArgs e) { if (!string.IsNullOrEmpty(txtSelectReview.Text)) { sentence sentence = new sentence(); if (opinions != null && opinions.Count() > 0) { var _opinions = opinions.Select(x => new Opinion { category = x.category, aspect = x.aspect, polarity = x.polarity, polarityClass = x.polarityClass }).ToList(); sentence = new sentence() { id = sentenceId, Text = txtSelectReview.Text.Trim(), Opinions = _opinions }; } if (opinions == null || opinions.Count() == 0) { sentence = new sentence() { id = sentenceId, Text = txtSelectReview.Text.Trim(), Opinions = new List <Opinion>(), OutOfScope = true }; } sentences.Add(sentence); var sen = sentences.ToList(); if (sentences != null && sentences.Count() > 0) { if (review.sentences == null) { review.sentences = new List <sentence>(); } review.sentences.AddRange(sentences); sentences.Clear(); } using (IWebsiteCrawler digikala = new DigikalaHelper()) { try { if (review != null && review.sentences != null && review.sentences.Count() > 0) { review.CreateDate = DateTime.Now; //review._id = ObjectId.GenerateNewId(DateTime.Now); review.rid = digikalaProduct.DKP; AddReviewToDBParam param = new AddReviewToDBParam { review = review, id = digikalaProduct._id, tagger = user.Username }; AddReviewToDBResponse resultAddReview = new AddReviewToDBResponse() { Success = false }; //bool resultAddReview = digikala.AddReviewToDB(param); // ☺ Api using (var Api = new WebAppApiCall()) { resultAddReview = Api.GetFromApi <AddReviewToDBResponse>("AddReviewNew", param); } if (resultAddReview.Success) { sentences.Clear(); sentenceIdReset(); } else { MessageBox.Show("ثبت با مشکل روبرو شده است دوباره سعی کنید. _ دوباره سعی کن نشد به بهزاد بگو", "Warning"); return; } } } catch (Exception) { MessageBox.Show("خطا در ارسال اطلاعات به سرور ، لطفا به بهزاد خبر دهید که برنامه کار نمیکنه !!!"); } } txtReview.Text = txtReview.Text.Replace(txtSelectReview.Text.Trim(), "").Trim(); txtSelectReview.Text = ""; } fillAspects(); listAspects.Items.Clear(); opinions.Clear(); }
private void btnNext_Click(object sender, RoutedEventArgs e) { if (opinions != null && opinions.Count() > 0 && !string.IsNullOrEmpty(txtSelectReview.Text)) { sentences.Add(new sentence { id = sentenceId, Text = txtSelectReview.Text.Trim(), Opinions = opinions }); opinions.Clear(); } using (IWebsiteCrawler digikala = new DigikalaHelper()) { if (sentences != null && sentences.Count() > 0) { if (review.sentences == null) { review.sentences = new List <sentence>(); } review.sentences.AddRange(sentences); sentences.Clear(); } if (review != null && review.sentences != null && review.sentences.Count() > 0) { review.CreateDate = DateTime.Now; //review._id = ObjectId.GenerateNewId(DateTime.Now); review.rid = digikalaProduct.DKP; AddReviewToDBParam param = new AddReviewToDBParam { review = review, id = digikalaProduct._id, tagger = user.Username }; AddReviewToDBResponse resultAddReview = new AddReviewToDBResponse() { Success = false }; //bool resultAddReview = digikala.AddReviewToDB(param); // ☺ Api using (var Api = new WebAppApiCall()) { resultAddReview = Api.GetFromApi <AddReviewToDBResponse>("AddReviewtodb", param); } if (resultAddReview.Success) { sentences.Clear(); sentenceIdReset(); review = new ReviewDTO(); } else { MessageBox.Show("ثبت با مشکل روبرو شده است دوباره سعی کنید.", "Warning"); return; } } GetFirstProductByCategoryParam getProductParam = new GetFirstProductByCategoryParam { category = user.Category, title = user.Title, Brand = user.Brand, tagger = user.Username }; // ☺ Api using (var Api = new WebAppApiCall()) { digikalaProduct = Api.GetFromApi <DigikalaProductDTO>("GetFirstProductByCategory", getProductParam); } //digikalaProduct = digikala.GetFirstProductByCategory<DigikalaProductDTO>(getProductParam).Result; commentCurrentIndex = -1; commentCount = digikalaProduct.Comments.Count(); nextReview(); txtProductId.Text = digikalaProduct.DKP.ToString(); txtTitle.Text = digikalaProduct.Title; txtEnTitle.Text = digikalaProduct.TitleEN; review.ProductID = digikalaProduct.DKP; } }
public bool AddReviewToDB(AddReviewToDBParam param) { throw new NotImplementedException(); }