public static void matching() { initialiser(); while (!StopBits) { while (!outPut.Contains("Found ID ")) { //Console.Write("."); } outPut = ""; while (idEmprient == "" || idEmprient == "\n") { idEmprient = port.ReadExisting(); } // while(!outPut.Contains("operation terminé")) Console.Write(idEmprient); decimal id; if (Decimal.TryParse(idEmprient, out id)) { Console.WriteLine(id); idEmprient = ""; DbEntities entity = new DbEntities(); MACHINE machine = entity.MACHINE.Where(m => m.ID_M == 21).FirstOrDefault(); PERSONNEL p = entity.PERSONNEL.FirstOrDefault(per => per.IDEMPRIENT == id); DateTime Datenow = DateTime.Now; DateTime Datedebut = (DateTime)p.SHIFT.DATEDDEBUT; DateTime Datedefin = (DateTime)p.SHIFT.DATEDFIN; DateTime Heuredebut = (DateTime)p.SHIFT.HEUREDEBUT; DateTime Heuredefin = (DateTime)p.SHIFT.HEUREFIN; //DateTime heuredebutpause = (DateTime)p.SHIFT.FirstOrDefault().HEUREDEBUT; //DateTime heuredefinpause = (DateTime)p.SHIFT.FirstOrDefault().HEUREFIN; if (Datedebut.CompareTo(Datenow) <= 0 && Datedefin.CompareTo(Datenow) >= 0 && Heuredebut.TimeOfDay.CompareTo(Datenow.TimeOfDay) <= 0 && Heuredefin.TimeOfDay.CompareTo(Datenow.TimeOfDay) >= 0) { var count = entity.POINTAGE.Where(point => point.MAT.Equals(p.MAT)).Count(); if (count % 2 == 0) { sens = "Entrée"; } else { sens = "Sortie"; } port.Write("1"); POINTAGE Pointage = new POINTAGE { MAT = p.MAT, DATE_P = Datenow, ID_M = machine.ID_M, SENS = sens, PERSONNEL = p, MACHINE = machine }; entity.POINTAGE.Add(Pointage); entity.SaveChanges(); Console.Write("okkkkk" + Datedebut + " <=" + Datenow + " >= " + Datedefin); } else { port.Write("2"); Console.Write("not okkkkk" + Datedebut + " >" + Datenow + " >= " + Datedefin); } } else { port.Write("2"); Console.WriteLine("Unable to parse '{0}'.", idEmprient); } //StopBits = true; } }
public static void matching() { try { initialiser(); while (!StopBits) { while (!outPut.Contains("Found ID ")) { //Console.Write("."); } outPut = ""; while (idEmprient == "" || idEmprient == "\n") { idEmprient = port.ReadExisting(); } // while(!outPut.Contains("operation terminé")) Console.Write(idEmprient); decimal id; if (Decimal.TryParse(idEmprient, out id)) { Console.WriteLine(id); idEmprient = ""; DbEntities entity = new DbEntities(); MACHINE machine = entity.MACHINE.Where(m => m.ID_M == 21).FirstOrDefault(); PERSONNEL p = entity.PERSONNEL.FirstOrDefault(per => per.IDEMPRIENT == id); DateTime Datenow = DateTime.Now; DateTime Datedebut = (DateTime)p.SHIFT.DATEDDEBUT; DateTime Datedefin = (DateTime)p.SHIFT.DATEDFIN; DateTime Heuredebut = (DateTime)p.SHIFT.HEUREDEBUT; DateTime Heuredefin = (DateTime)p.SHIFT.HEUREFIN; //DateTime heuredebutpause = (DateTime)p.SHIFT.FirstOrDefault().HEUREDEBUT; //DateTime heuredefinpause = (DateTime)p.SHIFT.FirstOrDefault().HEUREFIN; if (Datedebut.CompareTo(Datenow) <= 0 && Datedefin.CompareTo(Datenow) >= 0 && Heuredebut.TimeOfDay.CompareTo(Datenow.TimeOfDay) <= 0 && Heuredefin.TimeOfDay.CompareTo(Datenow.TimeOfDay) >= 0) { var count = entity.POINTAGE.Where(point => point.MAT.Equals(p.MAT)).Count(); if (count % 2 == 0) { sens = "Entrée"; } else { sens = "Sortie"; } port.Write("1"); POINTAGE Pointage = new POINTAGE { MAT = p.MAT, DATE_P = Datenow, ID_M = machine.ID_M, SENS = sens, PERSONNEL = p, MACHINE = machine }; entity.POINTAGE.Add(Pointage); entity.SaveChanges(); if (sens == "Entrée") { NotificationPointageForm MessageFormt = new NotificationPointageForm("Entrée enregitré pour : " + p.NOM + " " + p.PRENOM + " le " + Datenow.ToShortDateString() + " à " + Datenow.ToShortTimeString()); MessageFormt.ShowDialog(); } else { NotificationPointageForm MessageFormt = new NotificationPointageForm("Sortie enregisté pour : " + p.NOM + " " + p.PRENOM + "le " + Datenow.ToShortDateString() + " à " + Datenow.ToShortTimeString()); MessageFormt.ShowDialog(); } } else { port.Write("2"); MessageFormError MessageForm = new MessageFormError("Access refusé pour : " + p.NOM + " " + p.PRENOM + "le " + Datenow.ToShortDateString() + " à " + Datenow.ToShortTimeString()); MessageForm.ShowDialog(); } } else { port.Write("2"); Console.WriteLine("Unable to parse '{0}'.", idEmprient); } //StopBits = true; } } catch (Exception ex) { MessageFormError MessageForm = new MessageFormError(ex.Message.ToString()); var result = MessageForm.ShowDialog(); } }