/// <summary> /// 根据条件查询全部报警记录 /// </summary> /// <param name="query"></param> /// <returns></returns> public List <AlarmRecordCustom> GetAllAlarmRecordCondition(DefinedAlarmRecordQuery query) { try { List <AlarmRecordCustom> list = mapContext.QueryForList <AlarmRecordCustom>("GetAllAlarmRecordCondition", query).ToList(); return(list); } catch (Exception ex) { throw ex; } }
/// <summary> /// /// </summary> /// <param name="startTime"></param> /// <param name="endTime"></param> /// <param name="confirmState"></param> /// <param name="alarmType"></param> /// <param name="subSystem"></param> /// <param name="alarmLevel"></param> /// <returns></returns> public System.IO.MemoryStream GetAllAlarmRecordCondition(int regionId, string startTime, string endTime, int confirmState, int alarmType, string subSystem, int alarmLevel) { List <AlarmRecordModel> retList = new List <AlarmRecordModel>(); #region 拼接DataTable列头 System.Data.DataTable table = new System.Data.DataTable(); table.Columns.Add("告警编号"); table.Columns.Add("设备编号"); table.Columns.Add("事件类型"); table.Columns.Add("设备名称"); table.Columns.Add("子系统类型"); table.Columns.Add("报警时间"); table.Columns.Add("报警级别"); table.Columns.Add("确警人"); table.Columns.Add("园区"); table.Columns.Add("确警时间"); table.Columns.Add("确警结果"); table.Columns.Add("报警位置"); table.Columns.Add("确警描述"); #endregion AlarmRecordModel retModel = null; try { DefinedAlarmRecordQuery queryModel = new DefinedAlarmRecordQuery(); queryModel.alarmCode = ""; queryModel.confirmState = confirmState; queryModel.alarmType = alarmType; queryModel.alarmLevel = alarmLevel; queryModel.endTime = endTime; queryModel.startTime = startTime; queryModel.regionId = regionId; if (!string.IsNullOrEmpty(subSystem)) { if (subSystem.Contains(',')) { string[] arr = subSystem.Split(','); int[] intArr = Array.ConvertAll <string, int>(arr, n => int.Parse(n)); queryModel.subSystem = intArr; } else { int[] intArr = new int[] { int.Parse(subSystem) }; queryModel.subSystem = intArr; } } else { queryModel.subSystem = null; } List <AlarmRecordCustom> list = _servAlarmRecordDal.GetAllAlarmRecordCondition(queryModel); //分页查询报警信息 if (list != null) { BaseEventTypeBLL baseEventTypeBll = new BaseEventTypeBLL(); List <BaseEventTypeModel> eventList = baseEventTypeBll.GetAllEventType(); //获取全部事件类型 foreach (AlarmRecordCustom model in list) { retModel = TranAlarmRecord(model, eventList); System.Data.DataRow row = table.NewRow(); row["告警编号"] = retModel.id; row["设备编号"] = retModel.alarmName; row["事件类型"] = retModel.alarmEvent; row["设备名称"] = retModel.deviceName; row["子系统类型"] = retModel.subSystem; row["报警时间"] = retModel.alarmTime.ToString(); row["报警级别"] = retModel.alarmLevel; row["确警人"] = retModel.confirmPersonName; row["园区"] = retModel.regionName; row["确警时间"] = retModel.alarmTime == retModel.confirmAlarmTime ? "" : retModel.confirmAlarmTime.ToString(); row["确警结果"] = retModel.confirmResult; row["报警位置"] = retModel.alarmLocation; row["确警描述"] = retModel.confirmAlarmText; table.Rows.Add(row); // retList.Add(retModel); } } // System.Data.DataTable dt= CSM.Utils.ExcelHelper.ToDataTable(retList); // System.IO.MemoryStream ms = CSM.Utils.ExcelHelper.DataTableToExcel(dt, "sheet2"); System.IO.MemoryStream ms = CSM.Utils.ExcelHelper.DataTableToExcel(table, "sheet2"); // System.IO.MemoryStream ms = CSM.Utils.ExcelHelper.GetExcelStream(retList); return(ms); } catch (Exception ex) { //log BLL层查询设备报警列表失败+ex.message throw ex; } }