コード例 #1
0
        private void fillList()
        {
            RoomsDetection roomsDetection = new RoomsDetection();

            if (_context.MovementSekv.Any())
            {
                var movSekvList = _context.MovementSekv.ToList();

                foreach (var movSekv in movSekvList)
                {
                    DateTime convertedDate = DateTime.Parse(movSekv.TimeStamp);

                    Izby   izba     = null;
                    String izbaName = "";
                    try {
                        izba     = _context.Rooms.Where(t => t.IzbaID == movSekv.IzbyFK).First();
                        izbaName = izba.Nazov;
                    }
                    catch (Exception e)
                    {
                        izbaName = "Vonku";
                    }
                    string alert = "NA";

                    if (movSekv.Upozornenie_Cas != 0)
                    {
                        alert = "Čas";
                    }
                    else if (movSekv.Upozornenie_Hranica != 0)
                    {
                        alert = "Hranica";
                    }


                    MovementObj movObj = new MovementObj
                    {
                        PohId    = movSekv.PohSekvId,
                        RoomName = izbaName,
                        Alert    = alert,
                        LongDate = convertedDate.ToLongDateString(),
                        Date     = convertedDate.ToShortDateString(),
                        Time     = convertedDate.ToLongTimeString(),
                        Duration = movSekv.Cas_Zotrvania,
                        xValue   = movSekv.Xhodnota,
                        yValue   = movSekv.Yhodnota
                    };

                    SequenceList.Add(movObj);
                }
                fillPageWithSequence(SequenceList.Last());
            }
            else
            {
                MovAlert = "Neexistuje žiadna sekvencia";
            }

            SequenceList = new ObservableCollection <MovementObj>(SequenceList.Reverse());
        }
        private void fillList()
        {
            int    low = 0; int height = 0; int middle = 0; int ok = 0;
            double lowMin = 0; double heightMin = 0; double middleMin = 0; double okMin = 0;
            double lowMinDay = 0; double heightMinDay = 0; double middleMinDay = 0; double okMinDay = 0;
            int    lowDay = 0; int heightDay = 0; int middleDay = 0; int okDay = 0;

            if (_context.TemperatureSekv.Any())
            {
                var listTemp = _context.TemperatureSekv.ToList();
                Helpers.SekvenceHelper.LimitCheck loader = new Helpers.SekvenceHelper.LimitCheck();
                //DateTime actualForSummary = DateTime.Parse("2017-01-01T12:04:19Z");
                DateTime actualForSummary = DateTime.Now;

                foreach (var t in listTemp)
                {
                    DateTime convertedDate = DateTime.Parse(t.TimeStart);
                    String   durationTime = null;
                    String   endTimeString = "NA"; String endDateString = "";
                    double   time = 0;
                    try
                    {
                        DateTime endtime = DateTime.Parse(t.TimeClose);
                        time = (endtime - convertedDate).TotalMinutes;
                        var x = time - Math.Truncate(time);
                        durationTime  = Math.Truncate(time).ToString() + " min " + Math.Round(x * 60).ToString() + " sec";
                        endDateString = endtime.ToLongDateString();
                        endTimeString = endtime.ToLongTimeString();
                    }
                    catch (Exception e)
                    {
                        System.Diagnostics.Debug.WriteLine("Exception parse date " + e.ToString());
                        durationTime = "NA";
                    }

                    if (actualForSummary <= convertedDate.AddHours(12))
                    {
                        switch (t.Upozornenie)
                        {
                        case 0: ok++;
                            okMin += time;
                            break;

                        case 1: low++;
                            lowMin += time;

                            break;

                        case -1: low++;
                            lowMin += time;

                            break;

                        case 2: middle++;
                            middleMin += time;

                            break;

                        case 3: height++;
                            heightMin += time;

                            break;
                        }
                    }

                    if (actualForSummary <= convertedDate.AddHours(24))
                    {
                        switch (t.Upozornenie)
                        {
                        case 0:
                            okDay++;
                            okMinDay += time;

                            break;

                        case 1:
                            lowDay++;
                            lowMinDay += time;

                            break;

                        case -1:
                            lowDay++;
                            lowMinDay += time;

                            break;

                        case 2:
                            middleDay++;
                            middleMinDay += time;

                            break;

                        case 3:
                            heightDay++;
                            heightMinDay += time;

                            break;
                        }
                    }

                    TemperatureObj tem = new TemperatureObj()
                    {
                        TempId      = t.TeplSekvId,
                        Value       = "~" + t.Sekvencia.ToString("n2") + " °C",
                        LongDate    = convertedDate.ToLongDateString(),
                        Date        = convertedDate.ToShortDateString(),
                        Time        = convertedDate.ToLongTimeString(),
                        DateEnd     = endDateString,
                        TimeEnd     = endTimeString,
                        Duration    = durationTime,
                        Upozornenie = t.Upozornenie,
                        Alert       = loader.getStringValuePulseAndTempLimit(t.Upozornenie)
                    };

                    SequenceList.Add(tem);
                }
                fillPageWithSequence(SequenceList.Last());
            }
            else
            {
                TempAlert = "Neexistuje žiadna sekvencia";
            }

            HeightTwelve = "Vysoké: ~" + Math.Truncate(heightMin).ToString() + " min";
            MiddleTwelve = "Stredné: ~" + Math.Truncate(middleMin).ToString() + " min";
            LowTwelve    = "Slabé: ~" + Math.Truncate(lowMin).ToString() + " min";
            OkTwelve     = "OK: ~" + Math.Truncate(okMin).ToString() + " min";

            HeightDay = HeightTwelve = "Vysoké: ~" + Math.Truncate(heightMinDay).ToString() + " min";
            MiddleDay = "Stredné: ~" + Math.Truncate(middleMinDay).ToString() + " min";
            LowDay    = "Slabé: ~" + Math.Truncate(lowMinDay).ToString() + " min";
            OkDay     = "OK: ~" + Math.Truncate(okMinDay).ToString() + " min";

            // System.Diagnostics.Debug.WriteLine("/////CAS: " + okMin + " " + lowMin + " " + middleMin + " " + heightMin  + " " + Math.Truncate(okMin).ToString());


            SequenceList = new ObservableCollection <TemperatureObj>(SequenceList.Reverse());
        }