private void DeleteCottagerButton_Click(object sender, RoutedEventArgs e)
 {
     if (CottagersComboBox.SelectedIndex != -1)
     {
         ModelSprintDBContainer container = new ModelSprintDBContainer(connString);
         List <Cottager>        lst       = container.Set <Cottager>().ToList();
         string deleteStr = CottagersComboBox.SelectedItem.ToString();
         foreach (Cottager item in lst)
         {
             string str = item.Author + "; S = " + item.Square.ToString();
             if (string.Equals(str, deleteStr))
             {
                 var billingLst = container.Set <Billing>().ToList();
                 foreach (var bill in billingLst)
                 {
                     if (bill.Cottager.CottagerID == item.CottagerID)
                     {
                         container.BillingSet.Remove(bill);
                     }
                 }
                 container.CottagerSet.Remove(item);
                 break;
             }
         }
         container.SaveChanges();
         Close();
     }
     else
     {
         MessageBox.Show("Выберите нужный элемент из списка", "Ошибка");
     }
 }
Example #2
0
        private void AddCottagerButton_Click(object sender, RoutedEventArgs e)
        {
            if (decimal.TryParse(SquareTextBox.Text, out decimal t) == true && t > 0)
            {
                ModelSprintDBContainer container = new ModelSprintDBContainer(connString);
                List <Cottager>        lst       = container.Set <Cottager>().ToList();//cottagers.Add(cottager);

                Cottager cottager = new Cottager
                {
                    Author = AuthorOfCottageTextBox.Text,
                    Square = t
                };

                if (lst.Contains(cottager) == true)
                {
                    MessageBox.Show("Не должно быть одинаковых записей", "Ошибка");
                }
                else if (cottager.Author == "")
                {
                    MessageBox.Show("У дачника должно быть ФИО", "Ошибка");
                }
                else
                {
                    container.CottagerSet.Add(cottager);
                    container.SaveChanges();
                    Close();
                }
            }
            else
            {
                MessageBox.Show("Площадь должна быть неотрицательным числом", "Ошибка");
            }
        }
Example #3
0
        private void ClearDB()
        {
            ModelSprintDBContainer container = new ModelSprintDBContainer(connString);

            var CollBilling = from item in container.BillingSet
                              select item;

            container.BillingSet.RemoveRange(CollBilling);

            var CollMonthConsumption = from item in container.MonthConsumptionSet
                                       select item;

            container.MonthConsumptionSet.RemoveRange(CollMonthConsumption);

            var CollCost = from item in container.CostOfWaterSet
                           select item;

            container.CostOfWaterSet.RemoveRange(CollCost);

            var CollCottagers = from item in container.CottagerSet
                                select item;

            container.CottagerSet.RemoveRange(CollCottagers);
            container.SaveChanges();

            ViewDataGrid.ItemsSource  = null;
            currentViewTextBlock.Text = "";
        }
        private void AddMonthConsumptionBtn_Click(object sender, RoutedEventArgs e)
        {
            if (MonthCalendar.SelectedDate.HasValue == false)
            {
                MessageBox.Show("Выберите рассчётный месяц");
            }
            else if (float.TryParse(MonthConsumptionTB.Text, out float cons) == false)
            {
                MessageBox.Show("Введите расход воды числом");
            }
            else if (cons <= 0)
            {
                MessageBox.Show("Расход воды должен быть больше нуля");
            }
            else
            {
                string str = MonthCalendar.SelectedDate.Value.ToShortDateString();
                str = str.Substring(6, 4) + str.Substring(3, 2);

                ModelSprintDBContainer container = new ModelSprintDBContainer(connString);

                List <MonthConsumption> collMonth = container.Set <MonthConsumption>().ToList();

                MonthConsumption monthConsumption = new MonthConsumption()
                {
                    Date        = Convert.ToInt32(str),
                    Consumption = Convert.ToDecimal(cons)
                };

                if (collMonth.Contains(monthConsumption) == true)
                {
                    MessageBox.Show("Такой период уже существует");
                }
                else
                {
                    container.MonthConsumptionSet.Add(monthConsumption);
                    List <CostOfWater> costOfWater = container.Set <CostOfWater>().ToList();
                    decimal            square      = 0;
                    foreach (Cottager cottager in container.CottagerSet)
                    {
                        square += cottager.Square;
                    }

                    foreach (Cottager cottager in container.CottagerSet)
                    {
                        Billing bill = new Billing()
                        {
                            MonthConsumption = monthConsumption,
                            Cottager         = cottager,
                            Author           = cottager.Author,
                            Date             = monthConsumption.Date,
                            Bill             = Convert.ToDecimal((cottager.Square / square) * monthConsumption.Consumption * costOfWater[0].Cost),
                        };
                        container.BillingSet.Add(bill);
                    }
                    container.SaveChanges();
                    Close();
                }
            }
        }
Example #5
0
 private void DeletePeriodButton_Click(object sender, RoutedEventArgs e)
 {
     if (PeriodsComboBox.SelectedIndex > -1)
     {
         ModelSprintDBContainer  container = new ModelSprintDBContainer(connString);
         List <MonthConsumption> lst       = container.Set <MonthConsumption>().ToList();
         string deleteStr = PeriodsComboBox.SelectedItem.ToString();
         foreach (MonthConsumption item in lst)
         {
             string str = (item.Date / 100).ToString() + "/" + (item.Date % 100 < 10 ? "0" + (item.Date % 100).ToString() : (item.Date % 100).ToString());
             if (string.Equals(str, deleteStr))
             {
                 var billingLst = container.Set <Billing>().ToList();
                 foreach (var bill in billingLst)
                 {
                     if (bill.MonthConsumption.MonthBillingID == item.MonthBillingID)
                     {
                         container.BillingSet.Remove(bill);
                     }
                 }
                 container.MonthConsumptionSet.Remove(item);
                 break;
             }
         }
         container.SaveChanges();
         Close();
     }
     else
     {
         MessageBox.Show("Выберите нужный период из списка", "Ошибка");
     }
 }
Example #6
0
        private void CreateCostBtn_Click(object sender, RoutedEventArgs e)
        {
            ModelSprintDBContainer container = new ModelSprintDBContainer(connString);

            container.CostOfWaterSet.Add(new CostOfWater()
            {
                Cost = Decimal.Parse(CostOfWaterTB.Text)
            });
            container.SaveChanges();
            Close();
        }
Example #7
0
        private void Wizard_Next(object sender, Xceed.Wpf.Toolkit.Core.CancelRoutedEventArgs e)
        {
            if (WizardWindow.CurrentPage == Page3)
            {
                int cost = Convert.ToInt32(costOfWater * 100);
                costTextBlock.Text += (cost / 100).ToString() + " руб. ";
                if (cost % 100 > 0)
                {
                    costTextBlock.Text += (cost % 100).ToString() + " коп.";
                }

                countCottagersTextBlock.Text += cottagers.Count.ToString();

                ModelSprintDBContainer container = new ModelSprintDBContainer(connString);

                var CollCost = from item in container.CostOfWaterSet
                               select item;
                container.CostOfWaterSet.RemoveRange(CollCost);
                container.CostOfWaterSet.Add(new CostOfWater()
                {
                    Cost = Convert.ToDecimal(costOfWater)
                });

                var CollCottagers = from item in container.CottagerSet
                                    select item;
                container.CottagerSet.RemoveRange(CollCottagers);
                foreach (var item in cottagers)
                {
                    container.CottagerSet.Add(new Cottager()
                    {
                        Author = item.Author,
                        Square = item.Square
                    });
                }

                var CollBilling = from item in container.BillingSet
                                  select item;
                container.BillingSet.RemoveRange(CollBilling);

                var CollMonthConsumption = from item in container.MonthConsumptionSet
                                           select item;
                container.MonthConsumptionSet.RemoveRange(CollMonthConsumption);

                container.SaveChanges();
            }
        }
Example #8
0
        private void FillDBForExampleBtn_Click(object sender, RoutedEventArgs e)
        {
            ModelSprintDBContainer container = new ModelSprintDBContainer(connString);

            ClearDB();
            //пример
            CostOfWater costOfWater = new CostOfWater()
            {
                Cost = 1.57M
            };

            container.CostOfWaterSet.Add(costOfWater);

            container.CottagerSet.Add(new Cottager()
            {
                Author = "Шубин Семён Николаевич",
                Square = 12
            });
            container.CottagerSet.Add(new Cottager()
            {
                Author = "Иванов Пётр Михайлович",
                Square = 15
            });
            container.CottagerSet.Add(new Cottager()
            {
                Author = "Сидоров Александр Анатольевич",
                Square = 20
            });
            container.CottagerSet.Add(new Cottager()
            {
                Author = "Машинцев Илья Константинович",
                Square = 9.5M
            });

            var cottagers = from item in container.CottagerSet.Local
                            select item;

            MonthConsumption monthConsumption = new MonthConsumption()
            {
                Consumption = 300,
                Date        = 201804
            };
            decimal square = 0;

            foreach (Cottager cottager in cottagers)
            {
                square += cottager.Square;
            }
            foreach (Cottager cottager in cottagers)
            {
                Billing bill = new Billing()
                {
                    MonthConsumption = monthConsumption,
                    Cottager         = cottager,
                    Author           = cottager.Author,
                    Date             = monthConsumption.Date,
                    Bill             = Convert.ToDecimal((cottager.Square / square) * monthConsumption.Consumption * costOfWater.Cost),
                };
                container.BillingSet.Add(bill);
            }

            monthConsumption = new MonthConsumption()
            {
                Consumption = 470.5M,
                Date        = 201803
            };

            foreach (Cottager cottager in cottagers)
            {
                Billing bill = new Billing()
                {
                    MonthConsumption = monthConsumption,
                    Cottager         = cottager,
                    Author           = cottager.Author,
                    Date             = monthConsumption.Date,
                    Bill             = Convert.ToDecimal((cottager.Square / square) * monthConsumption.Consumption * costOfWater.Cost),
                };
                container.BillingSet.Add(bill);
            }

            container.SaveChanges();
            SetCottagersAsItemsSource();
        }