예제 #1
0
        private static int GetBreakHourFromClass(DateTime dt, string className)
        {
            // if(DayOfWeek.Monday)

            using (var context = new sqlprobeEntities6())
            {
                List <Class> classes = context.Class.ToList();
                // if (dt.DayOfWeek == DayOfWeek.Monday)
                // return classes.Where(n => n.ClassName == className).Select(n => n.BreakMon).First();
            }
            return(0);
        }
예제 #2
0
        static void Main(string[] args)
        {
            var csv = new StringBuilder();

            csv.Append("sep=;\ntemp;hum;co2;vol;volpp;bright;brightClass;dust;time;group;deviceId;room;seatsBehind;class;countPersons;teacher1;teacher2;isSupp;\n");
            using (var context = new sqlprobeEntities6())
            {
                //csv.Append(context.Nachricht.First().Temperatur,context.Nachricht)

                List <Message>     nachrichten  = context.Message.ToList();
                List <Room>        rooms        = context.Room.ToList();
                List <RoomSubject> roomSubjects = context.RoomSubject.ToList();
                List <Class>       classes      = context.Class.ToList();

                //nachrichten.Where(n=>n.deviceID==)
                foreach (var item in nachrichten)
                {
                    string className = "";
                    string roomNR    = item.Device.Room_Device.Where(n => item.timesent > n.ValidFrom && item.timesent < n.ValidUntil).Select(n => n.Room.RoomNr).First();
                    string roomID    = rooms.Where(n => n.RoomNr == roomNR).Select(n => n.Room_ID).First().ToString();
                    int    hour      = GetHourFromMessage(item.timesent);


                    if (hour != 0 && roomSubjects.Where(n => n.Hour == hour && n.fk_RoomID.ToString() == roomID).Count() != 0)
                    {
                        if (!roomSubjects.Where(n => n.fk_RoomID.ToString() == roomID).Select(n => n.isFree).First() && !roomSubjects.Where(n => n.fk_RoomID.ToString() == roomID).Select(n => n.isBreak).First())
                        {
                            className = roomSubjects.Where(n => n.Hour == hour && n.fk_RoomID.ToString() == roomID).Select(n => n.Class.ClassName).First();
                        }
                        int breakHour = GetBreakHourFromClass(item.timesent, className);
                    }
                    else
                    {
                        className = "empty";
                    }
                    //                           temp           hum                 co2              vol         volpp       bright        bC            dust              time                        devID         room       seatsb         class
                    csv.Append(String.Concat(item.temp, ";", item.humidity, ";", item.co2, ";", item.noise, ";", '0', ";", item.ldr, ";", '0', ";", item.dust, ";", item.timesent.ToString(), ";", '1', ";", item.deviceID, ";", roomNR, ";", '0', ";", className, ";", '0', ";", '0', ";", '0', ";", '0', ";", "\n"));
                }
            }

            using (StreamWriter writer = new StreamWriter(Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory) + "\\erg.csv"))
            {
                writer.WriteLine(csv);
            }
        }