예제 #1
0
 public void RejectReview(int id)
 {
     using (SnappfoodMongoDBRepository db = new SnappfoodMongoDBRepository())
     {
         db.Reject(id);
     }
 }
예제 #2
0
 public bool AddReviewToDB_NewMethod(AddReviewToDBParam param)
 {
     try
     {
         using (SnappfoodMongoDBRepository db = new SnappfoodMongoDBRepository())
         {
             Review review = new Review(param.review);
             db.AddReviewNew(review);
             if (param.AutoOff)
             {
                 db.SetTaggedProduct(int.Parse(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);
     }
 }
예제 #3
0
 public void AddRawReviewsToDB(AddResturatsDBParam param)
 {
     using (SnappfoodMongoDBRepository db = new SnappfoodMongoDBRepository())
     {
         db.AddResturantReviews(param.resturantReviews.Select(x => new ResturantReviews(x)).ToList());
     }
 }
예제 #4
0
 public List <Review> GetLabelReviews()
 {
     using (SnappfoodMongoDBRepository db = new SnappfoodMongoDBRepository())
     {
         var allReviews = db.GetAllReviewsLabel();
         return(allReviews);
     }
 }
예제 #5
0
 public async Task <T> GetFirstProductByCategory <T>(GetFirstProductByCategoryParam param)
 {
     using (SnappfoodMongoDBRepository db = new SnappfoodMongoDBRepository())
     {
         ResturantReviewsDTO reviews = db.GetFirstSnappfood(param.tagger);
         return((T)Convert.ChangeType(reviews, typeof(ResturantReviewsDTO)));
     }
 }
예제 #6
0
 public string GetSatatusReview()
 {
     using (SnappfoodMongoDBRepository db = new SnappfoodMongoDBRepository())
     {
         var product   = db.GetCountReview();
         var Sentences = db.GetCountSentences();
         return($"Products: {product} , Sentences: {Sentences}");
     }
 }
예제 #7
0
        public void AddProducts <T>(T dto)
        {
            AddProductsSnappfood productsSnappfood = (AddProductsSnappfood)Convert.ChangeType(dto, typeof(AddProductsSnappfood));

            using (SnappfoodMongoDBRepository db = new SnappfoodMongoDBRepository())
            {
                db.AddSnappfoods(productsSnappfood.Snappfoods);
            }
        }
예제 #8
0
        public void AddProduct <T>(T dto)
        {
            Snappfood snappfoodProduct = (Snappfood)Convert.ChangeType(dto, typeof(Snappfood));

            using (SnappfoodMongoDBRepository db = new SnappfoodMongoDBRepository())
            {
                db.AddSnappfood(snappfoodProduct);
            }
        }
예제 #9
0
 public async Task <T> GetAllReviews <T>()
 {
     using (SnappfoodMongoDBRepository db = new SnappfoodMongoDBRepository())
     {
         GetReviewsMinimumResponse response = new GetReviewsMinimumResponse();
         List <SnappfoodMinInfo>   reviews  = db.GetAllReviewsMinumumInfo();
         response.ReviewsMinimum.AddRange(reviews);
         return((T)Convert.ChangeType(response, typeof(GetReviewsMinimumResponse)));
     }
 }
예제 #10
0
        public List <Review> GetAllReviews1()
        {
            using (SnappfoodMongoDBRepository db = new SnappfoodMongoDBRepository())
            {
                string xml = @"<?xml version=""1.0"" encoding=""UTF-8"" standalone=""yes""?>" + "\n";
                xml += "<Reviews>\n";

                var reviews = db.GetAllReviewsLabel();
                foreach (var review in reviews)
                {
                    xml += $"    <Review rid=\"{review.rid}\">\n";
                    xml += "        <sentences>\n";
                    for (int i = 0; i < review.sentences.Count; i++)
                    {
                        if (review.sentences[i].Opinions != null)
                        {
                            xml += $@"            <sentence id=""{review.rid}:{i}"">" + "\n";
                            xml += $"                <text>{review.sentences[i].Text}</text>\n";
                            if (review.sentences[i].Opinions != null && review.sentences[i].Opinions.Any())
                            {
                                xml += "                <Opinions>\n";
                                foreach (var op in review.sentences[i].Opinions)
                                {
                                    xml += @$ "                    <Opinion target=" "{op.category}" " category=" "{op.category}#{op.aspect}" " polarity=" "{op.polarity}" " />" + "\n";
                                }
                                xml += "                </Opinions>\n";
                            }
                            xml += $"            </sentence>\n";
                        }
                    }
                    xml += "        </sentences>\n";
                    xml += "    </Review>\n";
                }
                xml += "</Reviews>";
                File.WriteAllText(@"C:\Users\Administrator\Desktop\1.xml", xml);
                return(reviews);
            }
        }
예제 #11
0
 public List <sentence> GetTopSentences()
 {
     try
     {
         using (SnappfoodMongoDBRepository db = new SnappfoodMongoDBRepository())
         {
             return(db.GetTopSentences());
         }
     }
     catch (Exception ex)
     {
         LogDTO log = new LogDTO()
         {
             DateTime    = DateTime.Now,
             Description = "Error GetTopSentences, Error= " + ex.ToString(),
             Title       = "Get Top Sentences, Snappfood",
             MethodName  = "GetTopSentences",
             ProjectId   = 1,
             Url         = "Export/TopResturant"
         };
         Logger.AddLog(log);
         return(new List <sentence>());
     }
 }