private void ImportDataBtn_Click(object sender, EventArgs e)
        {
            if (openFileDialog.ShowDialog() == DialogResult.OK)
            {
                List <CustomerReview> data = new List <CustomerReview>();
                try
                {
                    StreamReader streamReader = new StreamReader(openFileDialog.FileName);
                    string       line         = streamReader.ReadLine();
                    while (line != null)
                    {
                        CustomerReview review = (CustomerReview)JsonConvert.DeserializeObject <CustomerReview>(line);
                        data.Add(review);
                        line = streamReader.ReadLine();
                    }
                    streamReader.Close();

                    StreamWriter streamWriter = new StreamWriter("review.txt", true);

                    foreach (CustomerReview review in data)
                    {
                        string review_json = JsonConvert.SerializeObject(review, Formatting.None);
                        streamWriter.WriteLine(review_json);
                    }
                    streamWriter.Close();
                    MessageBox.Show("Data Imported Successfull!", "Success", MessageBoxButtons.OK);
                }
                catch (Exception)
                {
                    MessageBox.Show("The Import was not Successful. Please Check the File and Try Agian.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
Beispiel #2
0
        private void reportForm_Load_1(object sender, EventArgs e)
        {
            CustomerReview        reviews    = new CustomerReview();
            List <CustomerReview> reviewList = reviews.List();

            TotalReviewsCountLbl.Text = reviewList.Count.ToString();
            DataTable dt = ReportsPage.ConvertToDataTable(reviews.List());

            AllReviewsTable.DataSource = dt;

            Dictionary <string, int> chartData1 = ReportsPage.chartData1(reviewList);

            foreach (KeyValuePair <string, int> entry in chartData1)
            {
                numberOfRatingChart.Series["Number of Reviews"].Points.AddXY(entry.Key, entry.Value);
            }


            Dictionary <string, double> chartData2 = ReportsPage.chartData2(reviewList);

            foreach (KeyValuePair <string, double> entry in chartData2)
            {
                AverageRating.Series["Average Rating"].Points.AddXY(entry.Key, entry.Value);
            }
        }
Beispiel #3
0
        private void btnSortRating_Click(object sender, EventArgs e)
        {
            CustomerReview        reviews    = new CustomerReview();
            List <CustomerReview> reviewList = reviews.List();
            DataTable             dt         = ReportsPage.ConvertToDataTable(CustomerReview.SortByDate(reviews.List()));

            AllReviewsTable.DataSource = dt;
        }
Beispiel #4
0
        private void btnReset_Click(object sender, EventArgs e)
        {
            CustomerReview        reviews    = new CustomerReview();
            List <CustomerReview> reviewList = reviews.List();

            TotalReviewsCountLbl.Text = reviewList.Count.ToString();
            DataTable dt = ReportsPage.ConvertToDataTable(reviews.List());

            AllReviewsTable.DataSource = dt;
        }
Beispiel #5
0
        public List <CustomerReview> List()
        {
            StreamReader          streamReader = new StreamReader("review.txt");
            List <CustomerReview> reviews      = new List <CustomerReview>();
            string line = streamReader.ReadLine();

            while (line != null)
            {
                CustomerReview review = (CustomerReview)JsonConvert.DeserializeObject <CustomerReview>(line);
                reviews.Add(review);
                line = streamReader.ReadLine();
            }
            streamReader.Close();
            return(reviews);
        }
        private void SubmitReviewBtn_Click(object sender, EventArgs e)
        {
            string name     = FullNameTxt.Text;
            string email    = EmailTxt.Text;
            string Phonenum = PhoneNumTxt.Text;
            Dictionary <string, int> ratings = new Dictionary <string, int>();

            foreach (var item in RatingPanel.Controls)
            {
                UserControl item1 = (UserControl )item;
                for (int i = 1; i < item1.Controls.Count; i++)
                {
                    RadioButton rbtn = (RadioButton)item1.Controls[i];
                    if (rbtn.Checked == true)
                    {
                        ratings[item1.Controls[0].Text] = Int32.Parse(rbtn.Text);
                    }
                }
            }

            if (name != null && email != null && Phonenum != null && ratings.Count != 0)
            {
                CustomerReview review = new CustomerReview();
                review.customerName    = name;
                review.customerEmail   = email;
                review.customerContact = Phonenum;
                review.customerRatings = ratings;
                string       data         = JsonConvert.SerializeObject(review, Formatting.None);
                StreamWriter streamWriter = new StreamWriter("review.txt", true);
                streamWriter.WriteLine(data);
                streamWriter.Close();
                MessageBox.Show("Review Submitted Successfully!", "Success", MessageBoxButtons.OK);
                this.clearAll();
            }
            else
            {
                MessageBox.Show("Please fill up at the Fields!", "Invalid Review", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }