Exemplo n.º 1
0
 private void checkStatusAlert(StatusRegisterBitAlert alert, StatusRegisterBit bit, StatusRegister register, RegisterFeedback feedback)
 {
     var isBitSet = bit.IsBitSet(register, feedback);
     var alarmAlerted = alert.Alerted;
     if (bit.ActiveType == ActiveType.ActiveHigh)
     {
         if (!alarmAlerted && isBitSet)
         {
             alert.Alerted = true;
             m_context.SaveChanges();
             sendEmail(alert.EmailSubject, buildStatusBody(alert, bit, register), alert.getEmailsList());
         }
         else if (alarmAlerted && !isBitSet)
         {
             alert.Alerted = false;
             m_context.SaveChanges();
             sendEmail(alert.EmailSubject, buildStatusBody(alert, bit, register), alert.getEmailsList());
         }
     }
     else if (bit.ActiveType == ActiveType.ActiveLow)
     {
         if (!alarmAlerted && !isBitSet)
         {
             alert.Alerted = true;
             m_context.SaveChanges();
             sendEmail(alert.EmailSubject, buildStatusBody(alert, bit, register), alert.getEmailsList());
         }
         else if (alarmAlerted && isBitSet)
         {
             alert.Alerted = false;
             m_context.SaveChanges();
             sendEmail(alert.EmailSubject, buildStatusBody(alert, bit, register), alert.getEmailsList());
         }
     }
 }
Exemplo n.º 2
0
 private string buildStatusBody(StatusRegisterBitAlert alert, StatusRegisterBit bit, StatusRegister register)
 {
     var builder = new StringBuilder();
     if (alert.Alerted)
     {
         builder.AppendLine(alert.EmailBody);
     }
     else
     {
         builder.AppendLine("No longer in an alerted state.");
     }
     builder.AppendLine("Device: ");
     builder.AppendLine(register.Device.SerialNumber);
     builder.AppendLine("Register: ");
     builder.AppendLine(register.Alias);
     builder.AppendLine("Bit: ");
     builder.AppendLine(bit.Alias);
     return builder.ToString();
 }
Exemplo n.º 3
0
 public ActionResult CreateStatusRegisterBitAlert(int bitId)
 {
     var alert = new StatusRegisterBitAlert();
     alert.StatusRegisterBitId = bitId;
     return View("EditStatusRegisterBitAlert", alert);
 }
Exemplo n.º 4
0
 public ActionResult CreateStatusRegisterBitAlert(StatusRegisterBitAlert newAlert)
 {
     if (ModelState.IsValid)
     {
         var bit = db.StatusRegisterBits.Find(newAlert.StatusRegisterBitId);
         bit.Alerts.Add(newAlert);
         db.SaveChanges();
     }
     return RedirectToAction("EditStatusRegisterBit", new { id = newAlert.StatusRegisterBitId });
 }
Exemplo n.º 5
0
 public ActionResult EditStatusRegisterBitAlert(StatusRegisterBitAlert editedAlert)
 {
     if (ModelState.IsValid)
     {
         db.Entry(editedAlert).State = EntityState.Modified;
         db.SaveChanges();
     }
     return RedirectToAction("EditStatusRegisterBit", new { id = editedAlert.StatusRegisterBitId });
 }