예제 #1
0
        private async void LoadChartContents()
        {
            await Task.Run(() => myKole.Wczytaj());

            myKole.MakeElse();

            List <Graph> myGraph = new List <Graph>();

            for (int i = 0; i < myKole.licznik.Count; ++i)
            {
                double   wartosc  = myKole.licznik[i].taryfapierwsza;
                DateTime data     = myKole.licznik[i].dzien;
                String   dataform = data.Day + "/" + data.Month + "/" + data.Year;
                myGraph.Add(new Graph()
                {
                    Day = dataform, Value = wartosc
                });
            }
            (ColumnChart.Series[0] as ColumnSeries).ItemsSource = myGraph;

            List <Graph> myGraph2 = new List <Graph>();

            for (int i = 0; i < myKole.licznik.Count; ++i)
            {
                double   wartosc  = myKole.licznik[i].taryfadruga;
                DateTime data     = myKole.licznik[i].dzien;
                String   dataform = data.Day + "/" + data.Month + "/" + data.Year;
                myGraph2.Add(new Graph()
                {
                    Day = dataform, Value = wartosc
                });
            }
            (BarChart.Series[0] as BarSeries).ItemsSource = myGraph2;
        }
예제 #2
0
        private async void Button_Click(object sender, RoutedEventArgs e)
        {
            if (past)
            {
                past = false;
                await Task.Run(() => myKole.Wczytaj());

                myKole.MakeElse();

                if (myKole.licznik.Count > 1)
                {
                    double oblt1, oblt2;
                    oblt1 = oblt2 = 0;
                    double daystotoday = (DateTime.Today - myKole.licznik[myKole.licznik.Count - 1].dzien).TotalDays;

                    double max     = myKole.zuuzycie1.Max();
                    double averige = myKole.zuuzycie1.Sum() / myKole.zuuzycie1.Count;

                    double estym = (max + 4 * averige) / 5;

                    oblt1 = myKole.licznik[myKole.licznik.Count - 1].taryfapierwsza - estym * daystotoday;

                    t1.Text = oblt1.ToString("0.00");

                    double max2     = myKole.zuuzycie1.Max();
                    double averige2 = myKole.zuuzycie2.Sum() / myKole.zuuzycie2.Count;

                    double estym2 = (max2 + 4 * averige2) / 5;

                    oblt2 = myKole.licznik[myKole.licznik.Count - 1].taryfadruga - estym2 * daystotoday;

                    t2.Text = oblt2.ToString("0.00");
                }
                else
                {
                    MessageDialog md = new MessageDialog("Zbyt mało danych. \nObliczenia się nie powiodły");
                    await md.ShowAsync();
                }
            }
        }
예제 #3
0
        private async void Button_Click(object sender, RoutedEventArgs e)
        {
            await Task.Run(() => myKole.Wczytaj());

            myKole.MakeElse();
            try
            {
                var      dates = date.Date;
                DateTime time  = dates.Value.DateTime.Date;

                double a = 0;
                double b = 0;

                a = Convert.ToDouble(i.Text);
                b = Convert.ToDouble(ii.Text);

                if (!myKole.check2(time))
                {
                    if (DateTime.Compare(DateTime.Today, time) >= 0)
                    {
                        Wpis nowyWpis = new Wpis(a, b, time, 1);
                        nowyWpis.ZapiszWpis();

                        MessageDialog mesege = new MessageDialog("Dodano");
                        await mesege.ShowAsync();

                        date.Date = DateTime.Today;
                        i.Text    = "";
                        ii.Text   = "";
                    }
                    else
                    {
                        MessageDialog messege = new MessageDialog("Nie możesz dodać wpisu z datą późniejszą niż dzisiaj.");
                        await messege.ShowAsync();
                    }
                }
                else
                {
                    MessageDialog messege = new MessageDialog("Już istnieje wpis z tego dnia.");
                    await messege.ShowAsync();
                }
            }
            catch
            {
                MessageDialog me = new MessageDialog("Błąd wprowadzania");
                await me.ShowAsync();
            }
        }
예제 #4
0
        protected async override void OnNavigatedTo(NavigationEventArgs e)
        {
            base.OnNavigatedTo(e);
            await Task.Run(() => myKole.Wczytaj());

            myKole.MakeElse();
            if (myKole.licznik.Count != 0)
            {
                String naw = myKole.licznik[myKole.licznik.Count - 1].dzien.DayOfWeek.ToString() + " ";
                naw       += Convert.ToString(myKole.licznik[myKole.licznik.Count - 1].dzien.Day) + "/";
                naw       += Convert.ToString(myKole.licznik[myKole.licznik.Count - 1].dzien.Month) + "/";
                naw       += Convert.ToString(myKole.licznik[myKole.licznik.Count - 1].dzien.Year);
                dzien.Text = Convert.ToString(naw);

                double licz = myKole.licznik[myKole.licznik.Count - 1].taryfapierwsza;

                if (myKole.licznik[myKole.licznik.Count - 1].dzien ==
                    myKole.doladowania[myKole.doladowania.Count - 1].dzien)
                {
                    licz = myKole.licznik[myKole.licznik.Count - 1].taryfapierwsza + myKole.doladowania[myKole.doladowania.Count - 1].taryfapierwsza;
                }

                ow1.Text = Convert.ToString(licz) + " kW";

                double licz2 = myKole.licznik[myKole.licznik.Count - 1].taryfadruga;
                if (myKole.licznik[myKole.licznik.Count - 1].dzien ==
                    myKole.doladowania[myKole.doladowania.Count - 1].dzien)
                {
                    licz2 = myKole.licznik[myKole.licznik.Count - 1].taryfadruga + myKole.doladowania[myKole.doladowania.Count - 1].taryfadruga;
                }

                ow2.Text = Convert.ToString(licz2) + " kW";

                if (myKole.licznik.Count > 1)
                {
                    double daystotoday = (DateTime.Today - myKole.licznik[myKole.licznik.Count - 1].dzien).TotalDays;
                    if (daystotoday < 0)
                    {
                        daystotoday = 0;
                    }

                    double max1     = myKole.zuuzycie1.Max();
                    double averige1 = myKole.zuuzycie1.Sum() / myKole.zuuzycie1.Count;

                    double estym1 = (max1 + 4 * averige1) / 5;

                    double end1 = (licz) / (estym1);

                    wjn1.Text = end1.ToString("0.00") + " dni";
                    if (end1 > 7)
                    {
                        wjn1.Foreground = new SolidColorBrush(Colors.Black);
                    }
                    if (end1 < 7)
                    {
                        wjn1.Foreground = new SolidColorBrush(Colors.Orange);
                    }
                    if (end1 < 3)
                    {
                        wjn1.Foreground = new SolidColorBrush(Colors.Red);
                    }

                    double max2     = myKole.zuuzycie2.Max();
                    double averige2 = myKole.zuuzycie2.Sum() / myKole.zuuzycie2.Count;

                    double estym2 = (max2 + 4 * averige2) / 5;
                    double end2   = licz2 / (estym2);

                    wjn2.Text = end2.ToString("0.00") + " dni";
                    if (end2 > 7)
                    {
                        wjn2.Foreground = new SolidColorBrush(Colors.Black);
                    }
                    if (end2 < 7)
                    {
                        wjn2.Foreground = new SolidColorBrush(Colors.Orange);
                    }
                    if (end2 < 3)
                    {
                        wjn2.Foreground = new SolidColorBrush(Colors.Red);
                    }

                    double dzis1 = licz - (daystotoday + 1) * estym1;
                    if (dzis1 < 0)
                    {
                        dzis1 = 0;
                    }

                    double dzis2 = licz2 - (daystotoday + 1) * estym2;
                    if (dzis2 < 0)
                    {
                        dzis2 = 0;
                    }

                    db1.Text = (dzis1).ToString("0.00") + " kW";
                    db2.Text = (dzis2).ToString("0.00") + " kW";

                    dzis1 -= estym1;
                    dzis2 -= estym2;
                    if (dzis1 < 0)
                    {
                        dzis1 = 0;
                    }
                    if (dzis2 < 0)
                    {
                        dzis2 = 0;
                    }
                    jb1.Text = (dzis1).ToString("0.00") + " kW";
                    jb2.Text = (dzis2).ToString("0.00") + " kW";
                }
            }
            await myKole.ZapiszAsync();
        }