예제 #1
0
 // Add defect to DbContext for a given Plc (Start new defect)
 public void AddNewDefectForPlc(RaportareDbContext context, PlcModel plc)
 {
     context.Add(new Defect
     {
         TimpStartDefect    = DateTime.Now,
         DefectFinalizat    = false,
         PlcModelID         = plc.PlcModelID,
         TimpStopDefect     = DateTime.Now,
         IntervalStationare = new TimeSpan(),
         MotivStationare    = "Start Defect"
     });
     context.SaveChanges();
 }
예제 #2
0
        // Update last not finished Defect from given Plc to finished defect
        public void UpdateLastNotFinishedDefect(RaportareDbContext context, Defect defect)
        {
            // Add MotivStationare, TimpStop Defect, interval Stationare and Defect finalizat
            defect.TimpStopDefect = DateTime.Now;
            // Catch overflow error to IntervalStationare
            try
            {
                // Limit the Interval Stationare Max Value
                defect.IntervalStationare = LimitMaxTimeSpan(defect.TimpStartDefect, defect.TimpStopDefect);
            }
            catch (OverflowException ex)
            {
                defect.IntervalStationare = new TimeSpan(23, 59, 00);
                Console.WriteLine(String.Format("{0} <=> {1} <=> PlcaName: {2}", DateTime.Now.ToString("dd.MM.yyyy hh:mm:ss"), ex.Message, defect.PlcModel.Name));
            }

            defect.DefectFinalizat = true;
            // Update Database
            context.Update(defect);
            context.SaveChanges();
        }