public void AddAlarm(DeviceAlarm alarm) { if (!alarms.Contains(alarm)) { alarms.Add(alarm); } }
private void AlarmDepState(DepNode dep, bool isAlarm) { if (dep == null) { return; } if (FireAreas.Contains(dep.NodeID)) { if (dep.monitorRangeObject != null) { if (!isAlarm) { dep.monitorRangeObject.AlarmOff(); HideObjectFollowUI(AlarmDevUIName, dep); } else { dep.monitorRangeObject.AlarmOn(); DeviceAlarm alarmInfo = AlarmInfoList.Find(i => (int)i.AreaId == dep.NodeID); var obj = FollowTargetManage.Instance.CreateFireDevFollowUI(dep.monitorRangeObject.gameObject, dep, alarmInfo); if (obj != null) { obj.gameObject.SetActive(true); } } } } }
public void GetDevAlarmData(DeviceAlarm item) { if (item.Level == Abutment_DevAlarmLevel.高) { DevLevel.color = HighAlarm; } else if (item.Level == Abutment_DevAlarmLevel.中) { DevLevel.color = MiddleAlarm; } else if (item.Level == Abutment_DevAlarmLevel.低) { DevLevel.color = LowAlarm; } TypeNameText.text = item.DevTypeName; Num.text = item.Id.ToString(); Name.text = item.DevName.ToString(); Title.text = item.Title.ToString(); string time = item.CreateTime.ToString(); DateTime NewTime = Convert.ToDateTime(time); AlarmTime.text = NewTime.ToString("yyyy年MM月dd日 HH:mm:ss"); Message.text = item.Message.ToString(); Normal.text = "<color=#C66BABFF>未消除</color>"; int dep = (int)item.AreaId; DevPos.onClick.AddListener(() => { DevBut_Click(item, dep, item.Message); }); }
private void BtnSendDevSimulateAlarms_Click(object sender, RoutedEventArgs e) { if (BtnSendDevSimulateAlarms.Content.ToString() == "逐个发送告警") { BtnSendDevSimulateAlarms.Content = "逐个发送告警"; int interval = TxtSendDevAlarmInterval.Text.ToInt(); int onceCount = TxtOnceSendCount.Text.ToInt(); var devList = DeviceListBox1.DeviceList; sendSimulateDevAlarmsWorker = Worker.Run(() => { List <DeviceAlarm> sendAlarms = new List <DeviceAlarm>(); for (int i = 0; i < devList.Count; i++) { var dev = devList[i]; DeviceAlarm devAlarm = CreateDevAlarm(dev);//创建设备告警 sendAlarms.Add(devAlarm); if ((i + 1) % onceCount == 0) { Log.Info(LogTags.EventTest, string.Format("发送告警:{0}({1}/{2})", devAlarm, i + 1, devList.Count)); AlarmHub.SendDeviceAlarms(devAlarm); Thread.Sleep(interval); } } }, null, null, "", true); } else { BtnSendDevSimulateAlarms.Content = "逐个发送告警"; sendSimulateDevAlarmsWorker.CancelAsync(); } }
/// <summary> /// 初始化告警信息 /// </summary> /// <param name="dev"></param> /// <param name="alarmContent"></param> public void InitAlarmInfo(DeviceAlarm alarmContent, DevNode dev) { currentDev = dev; currentDev.isAlarm = true; AlarmInfo = alarmContent; dev.AddAlarm(alarmContent); SetNormalFollowUIState(dev, false); }
/// <summary> /// 区域告警/消警 /// </summary> private void AlarmMonitorRange(bool isAlarm, DeviceAlarm alarmInfo, DepNode parentNode) { if (parentNode == null) { return; } if (!TypeCodeHelper.IsFireFightDevType(alarmInfo.DevTypeCode.ToString())) { return; } if (isAlarm) { if ((parentNode is RoomController || parentNode is FloorController) && parentNode.monitorRangeObject != null) { if (!FireAreas.Contains(parentNode.NodeID)) { FireAreas.Add(parentNode.NodeID); FollowTargetManage.Instance.CreateFireDevFollowUI(parentNode.monitorRangeObject.gameObject, parentNode, alarmInfo); } parentNode.monitorRangeObject.AlarmOn(); } } else { if ((parentNode is RoomController || parentNode is FloorController)) { parentNode.monitorRangeObject.AlarmOff(); RemoveAlarmDevFollowUI(parentNode); if (FireAreas.Contains(parentNode.NodeID)) { FireAreas.Remove(parentNode.NodeID); } #region TestPart //List<DevNode> roomDevs = RoomFactory.Instance.GetDepDevs(parentNode); //if (roomDevs == null || roomDevs.Count == 0) return; //bool isOtherDevAlarm = false; //for (int i = 0; i < roomDevs.Count; i++) //{ // if (roomDevs[i].Info == null) continue; // if (roomDevs[i].isAlarm && roomDevs[i].Info.Id != dev.Id) // { // isOtherDevAlarm = true; // break; // } //} ////区域下没有告警设备,取消告警 //if (!isOtherDevAlarm && parentNode.monitorRangeObject != null) //{ // parentNode.monitorRangeObject.AlarmOff(); // RemoveAlarmDevFollowUI(parentNode); // if (!FireAreas.Contains(parentNode.NodeID)) FireAreas.Remove(parentNode.NodeID); //} #endregion } } }
/// <summary> /// 设置告警跟随UI的信息 /// </summary> /// <param name="dev"></param> /// <param name="alarmInfo"></param> public void SetAlarmFollowUI(DevNode dev, DeviceAlarm alarmInfo) { if (dev.alarmUi == null) { dev.alarmUi = CreateAlarmFollowUI(dev, dev.ParentDepNode, alarmInfo); } else { dev.alarmUi.InitInfo(alarmInfo); } }
/// <summary> /// 点击定位设备 /// </summary> /// <param name="devId"></param> public void DevBut_Click(DeviceAlarm devAlarm, int DepID, string msg) { RoomFactory.Instance.FocusDev(devAlarm.DevId.ToString(), DepID, result => { if (!result) { string msgTitle = DeviceAlarmHelper.TryGetDeviceAlarmInfo(devAlarm); UGUIMessageBox.Show(msgTitle); } }); ParkDevAlarmInfo.Instance.CloseDevAlarmWindow(); }
/// <summary> /// 点击定位设备 /// </summary> /// <param name="devId"></param> public void DevBut_Click(DeviceAlarm alarmInfo, int DepID, string msg) { RoomFactory.Instance.FocusDev(alarmInfo.DevId.ToString(), DepID, result => { if (!result) { //string msgTitle = DevAlarmListManage.TryGetDeviceAlarmInfo(alarmInfo); string msgTitle = string.Format("未找到对应设备,设备ID:{0} 区域ID:{1}", alarmInfo.DevId, DepID); UGUIMessageBox.Show(msgTitle); } }); }
private void BtnRandomSelect100_OnClick(object sender, RoutedEventArgs e) { List <DeviceAlarm> alarms = new List <DeviceAlarm>(); int count = 100; Random r = new Random((int)DateTime.Now.Ticks); for (int i = 0; i < count; i++) { int index = r.Next(deviceAlarms.Count); DeviceAlarm alarm = deviceAlarms[i]; alarms.Add(alarm); } DataGridDeviceAlarms.ItemsSource = alarms; }
/// <summary> /// 点击定位设备 /// </summary> /// <param name="devId"></param> public void DevBut_Click(DeviceAlarm alarm, int DepID, string msg) { RoomFactory.Instance.FocusDev(alarm.DevId.ToString(), DepID, result => { if (!result) { string msgTitle = DeviceAlarmHelper.TryGetDeviceAlarmInfo(alarm); UGUIMessageBox.Show(msgTitle); } }); DevAlarmListManage.Instance.CloseDevAlarmWindow(); AlarmPushManage.Instance.CloseAlarmPushWindow(false); DevSubsystemManage.Instance.OnQueryToggleChange(false); }
/// <summary> /// 告警等级 /// </summary> /// <param name="alarm"></param> /// <returns></returns> public bool DevLevels(DeviceAlarm alarm) { //int level = ParkDevAlarmLevel.instance.devAlarmLeveldropdown.value; if (AlarmLevel == 0) { return(true); } else if (alarm.Level == GetDevAlarmdropdownItems()) { return(true); } else { return(false); } }
/// <summary> /// 告警恢复 /// </summary> /// <param name="alarmInfo"></param> private void RemoveAlarmInfo(DeviceAlarm alarmInfo) { //if (AlarmDevsId.Contains(alarmInfo.DevId)) AlarmDevsId.Remove(alarmInfo.DevId); //else //{ // Debug.Log("CancelAlarm Failed,Dev is null.DevId:" + alarmInfo.DevId); // return; //} DeviceAlarm alarmInfoTemp = AlarmInfoList.Find(dev => dev.DevId == alarmInfo.DevId); if (alarmInfoTemp == null) { return; } AlarmInfoList.Remove(alarmInfoTemp); //恢复正在告警的设备 if (IsDepDev(FactoryDepManager.currentDep, alarmInfo.AreaId.ToString())) { try { if (TypeCodeHelper.IsFireFightDevType(alarmInfo.DevTypeCode.ToString())) { DepNode area = RoomFactory.Instance.GetDepNodeById((int)alarmInfo.AreaId); if (area != null) { AlarmMonitorRange(false, alarmInfo, area); } } else { DevAlarmInfo dev = AlarmDevList.Find(i => i.AlarmInfo.DevId == alarmInfo.DevId); if (dev == null) { return; } dev.AlarmOff(true); AlarmDevList.Remove(dev); DestroyImmediate(dev); } } catch (Exception e) { Debug.Log(e.ToString()); } } }
/// <summary> /// 服务端推送告警信息 /// </summary> private void PushAlarmInfo(DeviceAlarm alarmInfo) { var logTag = "DevAlarmManage.PushAlarmInfo"; Log.Info(logTag); //if (AlarmDevsId.Contains(alarmInfo.DevId)) //{ // Debug.Log("Alarm is already exist."); // return; //} //AlarmDevsId.Add(alarmInfo.DevId); if (AlarmInfoList.Contains(alarmInfo)) { Debug.Log("Alarm is already exist."); return; } AlarmInfoList.Add(alarmInfo); string parentId = alarmInfo.AreaId.ToString(); bool isDepDev = IsDepDev(FactoryDepManager.currentDep, parentId); bool isFireFightDevType = TypeCodeHelper.IsFireFightDevType(alarmInfo.DevTypeCode.ToString()); Log.Info(logTag, string.Format("isDepDev:{0},isFireFightDevType:{1}", isDepDev, isFireFightDevType)); if (isDepDev) { DevNode dev = RoomFactory.Instance.GetCreateDevById(alarmInfo.DevId.ToString(), int.Parse(parentId)); if (dev == null && !isFireFightDevType) { Debug.LogError("Dev not find:" + alarmInfo.DevId); return; } AlarmDev(dev, alarmInfo); } else { if (isFireFightDevType) { int areaId = (int)alarmInfo.AreaId; if (!FireAreas.Contains(areaId)) { FireAreas.Add(areaId); } } } }
public FireDevFollowUI CreateFireDevFollowUI(GameObject fireDev, DepNode dep, DeviceAlarm alarmInfo) { //string depNodeId = dep is RoomController ? dep.ParentNode.NodeID.ToString():dep.NodeID.ToString(); string groupName = string.Format("{0}{1}", AlarmDevUIName, dep.NodeID); GameObject followObj = CreateFollowTarget(FireDevUIPrefab, fireDev, groupName); if (followObj == null) { return(null); } FireDevFollowUI followUI = followObj.GetComponent <FireDevFollowUI>(); if (followUI != null) { followUI.InitInfo(alarmInfo); } return(followUI); }
public DevAlarmHistory RemoveToHistory(DeviceAlarm alarm) { DevAlarmHistory newItem = new DevAlarmHistory(); newItem.Id = alarm.Id; newItem.Abutment_Id = alarm.Abutment_Id; newItem.Title = alarm.Title; newItem.Msg = alarm.Message; newItem.Level = alarm.Level; newItem.Code = alarm.Code; newItem.Src = alarm.Src; newItem.DevInfoId = alarm.DevId; newItem.Device_desc = alarm.Device_desc; newItem.AlarmTime = alarm.CreateTime; newItem.AlarmTimeStamp = alarm.AlarmTimeStamp; newItem.HistoryTime = DateTime.Now; newItem.HistoryTimeStamp = TimeConvert.ToStamp((DateTime)newItem.HistoryTime); return(newItem); }
private DeviceAlarmFollowUI CreateAlarmFollowUI(DevNode alarmDev, DepNode dep, DeviceAlarm alarmInfo) { try { string depNodeId = dep is RoomController?dep.ParentNode.NodeID.ToString() : dep.NodeID.ToString(); string groupName = string.Format("{0}{1}", AlarmDevUIName, depNodeId); string typeCode = alarmDev.Info.TypeCode.ToString(); GameObject followObj = null; if (TypeCodeHelper.IsLocationDev(typeCode)) { followObj = CreateFollowTarget(ArchorAlarmUI, alarmDev.gameObject, groupName); } else if (TypeCodeHelper.IsCamera(typeCode)) { followObj = CreateFollowTarget(CameraAlarmUI, alarmDev.gameObject, groupName); } else if (TypeCodeHelper.IsDoorAccess(typeCode)) { followObj = CreateFollowTarget(DoorAccessAlarmUI, alarmDev.gameObject, groupName); } else { followObj = CreateFollowTarget(BorderDevUIPrefab, alarmDev.gameObject, groupName); } if (followObj == null) { return(null); } DeviceAlarmFollowUI followUI = followObj.GetComponent <DeviceAlarmFollowUI>(); if (followUI != null) { followUI.InitInfo(alarmInfo); } return(followUI); } catch (Exception ex) { Log.Error("FollowTargetManage.CreateAlarmDevFollowUI", ex.ToString()); return(null); } }
public void LoadConfig() { log.Debug("LoadConfig()"); //clear the existing interface GPIOService.CloseGpio(); Solenoids.Clear(); List <Solenoid> solenoids = DataService.Proxy.GetSolenoids(device.Id); foreach (Solenoid s in solenoids) { DeviceSolenoid sol = new DeviceSolenoid(s); Solenoids.Add(sol); log.DebugFormat("Solenoid Id:{0}", sol.Id); if (device.PumpSolenoidId == sol.Id) { Pump = sol; log.DebugFormat("Found pump solenoid {0}", Pump.Id); } } Analogs.Clear(); List <Analog> analogs = DataService.Proxy.GetAnalogs(device.Id); foreach (Analog a in analogs) { DeviceAnalog an = new DeviceAnalog(a); Analogs.Add(an); } Alarms.Clear(); List <Alarm> alarms = DataService.Proxy.GetAlarms(device.Id); foreach (Alarm a in alarms) { DeviceAlarm al = new DeviceAlarm(a); Alarms.Add(al); } Schedules = DataService.Proxy.GetSchedules(device.Id); }
/// <summary> /// 设备类型 /// </summary> /// <param name="type"></param> /// <returns></returns> public bool ScreenDevType(DeviceAlarm type, int level) { //if (ParkDevAlarmType.instance == null) return true; //if (ParkDevAlarmType.instance.DevTypedropdownItem == null) return true; //int level = ParkDevAlarmType.instance.DevTypedropdownItem.value; if (level == 0) { return(true); } else { if (type.DevTypeName == GetDevType()) { return(true); } else { return(false); } } }
/// <summary> /// 显示设备告警 /// </summary> /// <param name="dev"></param> /// <param name="alarmInfo"></param> private void AlarmDev(DevNode dev, DeviceAlarm alarmInfo) { var logTag = "DevAlarmManage.AlarmDev"; Log.Info(logTag); if (TypeCodeHelper.IsFireFightDevType(alarmInfo.DevTypeCode.ToString())) { DepNode area = RoomFactory.Instance.GetDepNodeById((int)alarmInfo.AreaId); if (area != null) { AlarmMonitorRange(true, alarmInfo, area); } } else { if (dev == null || dev.gameObject == null) { return; } DevAlarmInfo info = dev.gameObject.GetComponent <DevAlarmInfo>(); if (info == null) { info = dev.gameObject.AddMissingComponent <DevAlarmInfo>(); } if (!AlarmDevList.Contains(info)) { AlarmDevList.Add(info); } //Debug.LogError("增加告警信息:"+alarmInfo.Message); info.InitAlarmInfo(alarmInfo, dev); //设置告警内容 info.AlarmOn(); //高亮显示 if (FollowTargetManage.Instance) //告警跟随UI信息 { FollowTargetManage.Instance.SetAlarmFollowUI(dev, alarmInfo); } } }
/// <summary> /// 查询时间段内报警记录 /// </summary> /// <param name="date1">开始时间,大于等于</param> /// <param name="date2">结束时间,小于等于</param> /// <param name="state">状态,-1只查询Old,1只查询New,0查询所有状态 </param> /// <returns></returns> public static List <DeviceAlarm> GetAlarm(DateTime date1, DateTime date2, int state) { ModelHandler <DeviceAlarm> modelHandler = new ModelHandler <DeviceAlarm>(); List <DeviceAlarm> list = new List <DeviceAlarm>(); int year = date1.Year; while (year <= date2.Year) { DataTable table = new DataTable(); string strSql = "select * from DeviceAlarm_" + year + " where 1=1"; if (year == date1.Year) { strSql += " and StartTime>='" + date1.ToString("yyyy-MM-dd HH:mm:ss") + "'"; } if (year == date2.Year) { strSql += " and StartTime<='" + date2.ToString("yyyy-MM-dd HH:mm:ss") + "'"; } if (state == 1) { strSql += " and State='New'"; } else if (state == -1) { strSql += " and State='Old'"; } table = DbHelperSQL.Query(strSql).Tables[0]; for (int i = 0; i < table.Rows.Count; i++) { DeviceAlarm deviceAlarm = modelHandler.FillModel(table.Rows[i]); list.Add(deviceAlarm); } year += 1; } return(list); }
private void LoadDevList() { LocationService service = new LocationService(); var devlist = service.GetAllDevInfos(); DeviceListBox1.LoadData(devlist); DeviceListBox1.AddMenu("告警", (se, arg) => { //MessageBox.Show("告警" + DeviceListBox1.CurrentDev.Name); //todo:告警事件推送 var dev = DeviceListBox1.CurrentDev; DeviceAlarm alarm = new DeviceAlarm() { Id = dev.Id, Level = Abutment_DevAlarmLevel.低, Title = "告警" + dev.Id, Message = GetAlarmMsg(dev), CreateTime = new DateTime(2018, 8, 28, 9, 5, 34) }.SetDev(dev); AlarmHub.SendDeviceAlarms(alarm); }); DeviceListBox1.AddMenu("消警", (se, arg) => { //MessageBox.Show("消警" + DeviceListBox1.CurrentDev.Name); var dev = DeviceListBox1.CurrentDev; DeviceAlarm alarm = new DeviceAlarm() { Id = dev.Id, Level = Abutment_DevAlarmLevel.无, Title = "消警" + dev.Id, Message = "设备消警", CreateTime = new DateTime(2018, 8, 28, 9, 5, 34) }.SetDev(dev); AlarmHub.SendDeviceAlarms(alarm); }); }
private void LoadDevList() { LocationService service = new LocationService(); var devlist = service.GetAllDevInfos(); DeviceListBox1.LoadData(devlist.ToList()); DeviceListBox1.AddMenu("告警", (se, arg) => { //MessageBox.Show("告警" + DeviceListBox1.CurrentDev.Name); //todo:告警事件推送 //var dev = DeviceListBox1.CurrentDev; //DeviceAlarm alarm = CreateDevAlarm(dev); //AlarmHub.SendDeviceAlarms(alarm); var dev = DeviceListBox1.CurrentDev; DeviceAlarm alarm = CreateDevAlarm(dev); Bll bll = Bll.NewBllNoRelation(); var hisItem = RemoveToHistory(alarm); bll.DevAlarmHistorys.Add(hisItem); AlarmHub.SendDeviceAlarms(alarm); }); DeviceListBox1.AddMenu("消警", (se, arg) => { //MessageBox.Show("消警" + DeviceListBox1.CurrentDev.Name); var dev = DeviceListBox1.CurrentDev; DeviceAlarm alarm = new DeviceAlarm() { Id = dev.Id, Level = Abutment_DevAlarmLevel.无, Title = "消警" + dev.Id, Message = "设备消警", CreateTime = new DateTime(2018, 8, 28, 9, 5, 34) }.SetDev(dev); AlarmHub.SendDeviceAlarms(alarm); }); }
/// <summary> /// 设备告警 /// </summary> /// <param name="devList"></param> public void OnDeviceAlarmRecieved(List <DeviceAlarm> devList) { try { FullViewController mainPage = FullViewController.Instance; AllDevAlarmPushInfo = new List <DeviceAlarm>(); if (mainPage && mainPage.IsFullView) { foreach (var dev in devList) { if (dev == null) { continue; } if (AllDevAlarmPushInfo.Count != 0) { DeviceAlarm devAlarm = AllDevAlarmPushInfo.Find(m => m != null && m.Level == Abutment_DevAlarmLevel.无 && m.DevId == dev.DevId); if (devAlarm == null) { AllDevAlarmPushInfo.Remove(devAlarm); } else { AllDevAlarmPushInfo.Add(devAlarm); } } } } else { foreach (var alarm in devList) { if (alarm == null) { continue; } AllDevAlarmPushInfo.Add(alarm); } foreach (var dev in AllDevAlarmPushInfo) { if (dev == null) { continue; } if (dev.Level == Abutment_DevAlarmLevel.无) { AlarmPushInfo Alarm = CurrentAlarmPushInfoList.Find(m => m != null && m.devAlarmInfo.Level == Abutment_DevAlarmLevel.无 && m.devAlarmInfo.DevId == dev.DevId); AlarmPushInfo CompleteAlarm = CompleteAlarmPushInfoList.Find(n => n != null && n.devAlarmInfo.DevId == dev.DevId && n.devAlarmInfo.Level != Abutment_DevAlarmLevel.无); if (Alarm != null || CompleteAlarm != null) { AlarmPushInfo NormalAlarmInformation = new AlarmPushInfo(); NormalAlarmInformation.SetAlarmInfo(dev); CurrentAlarmPushInfoList.Add(NormalAlarmInformation); } } else { AlarmPushInfo CurrentAlarm = CurrentAlarmPushInfoList.Find(m => m != null && m.devAlarmInfo.DevId == dev.DevId && m.devAlarmInfo.Level == dev.Level); if (CurrentAlarm == null) { AlarmPushInfo AlarmInformation = new AlarmPushInfo(); AlarmInformation.SetAlarmInfo(dev); CurrentAlarmPushInfoList.Add(AlarmInformation); } } } } } catch (Exception e) { Log.Error("AlarmPushManage.Error:" + e.ToString()); } }
/// <summary> /// 设备信息 /// </summary> /// <param name="alarm"></param> public void SetAlarmInfo(DeviceAlarm alarm) { AlarmType = AlarmPushInfoType.devAlarm; devAlarmInfo = alarm; }
public static void DeviceAlarmAnalyse(DeviceEvent deviceEvent) { string DeviceNo = deviceEvent.DeviceNo; string DeviceState = deviceEvent.DeviceState; if (DeviceState == null || DeviceState.Length < 32) { return; } for (int i = 0; i < 32; i++) { int keyi = 31 - i + 1; if (BaseModule.GetAlarmTypeByKey(keyi.ToString()) == null) { continue; } if (keyi == 5) { string s = ""; } string key = DeviceNo + "_" + keyi; if (DeviceAlarmConllection.ContainsKey(key)) { DeviceAlarm alarm = DeviceAlarmConllection[key]; if (alarm.AlarmValue != DeviceState[i].ToString()) { alarm.EndTime = deviceEvent.EventTime; alarm.Duration = Convert.ToInt64((alarm.EndTime - alarm.StartTime).TotalSeconds); alarm.State = "Old"; DeviceAlarmModule.UpdateDeviceAlarm(alarm); DeviceAlarmConllection.Remove(key); DeviceAlarm alarmNew = new DeviceAlarm(); alarmNew.DeviceNo = DeviceNo; alarmNew.AlarmValue = DeviceState[i].ToString(); alarmNew.StartTime = deviceEvent.EventTime; alarmNew.EndTime = deviceEvent.EventTime; alarmNew.Duration = 0; alarmNew.SaveTime = DateTime.Now; alarmNew.AlarmType = keyi.ToString(); alarmNew.State = "New"; try { long id = DeviceAlarmModule.AddDeviceAlarm(alarmNew); if (id > 0) { alarmNew.Id = id; } DeviceAlarmConllection.Add(key, alarmNew); } catch { } } } else { DeviceAlarm alarm = new DeviceAlarm(); alarm.DeviceNo = DeviceNo; alarm.AlarmValue = DeviceState[i].ToString(); alarm.StartTime = deviceEvent.EventTime; alarm.EndTime = deviceEvent.EventTime; alarm.Duration = 0; alarm.SaveTime = DateTime.Now; alarm.AlarmType = keyi.ToString(); alarm.State = "New"; try { long id = DeviceAlarmModule.AddDeviceAlarm(alarm); if (id > 0) { alarm.Id = id; } DeviceAlarmConllection.Add(key, alarm); } catch { } } } }
/// <summary> /// 区域是否有消防告警 /// </summary> /// <param name="depId"></param> /// <returns></returns> public bool IsDepFireAlarm(int depId) { DeviceAlarm alarmT = AlarmInfoList.Find(dev => dev != null && dev.AreaId == depId && TypeCodeHelper.IsFireFightDevType(dev.DevTypeCode.ToString())); return(alarmT == null ? false : true); }