Beispiel #1
0
        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();
        }
Beispiel #2
0
        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;
            }
        }