/// <summary> /// 根据事件编码获取时间信息 /// </summary> /// <param name="Event"></param> /// <returns></returns> public ServAlarmVideoTimeModel GetAlarmVideoTime(string Event) { try { int event_id = -1; BaseEventTypeModel baseEventType = baseEventTypeBLL.GetEntityByEventCode(Event); if (baseEventType != null) { if (baseEventType.pid == -1) { event_id = baseEventType.id; } else { event_id = baseEventType.pid; } } ServAlarmVideoTimeModel AlarmVideoTimeInfo = servAlarmVideoTimeDAL.GetEntityByEventId(event_id); return(AlarmVideoTimeInfo); } catch (Exception ex) { throw ex; } }
/// <summary> /// 添加父级事件 /// </summary> /// <param name="eventName"></param> /// <param name="eventContent"></param> /// <param name="startTime"></param> /// <param name="endTime"></param> /// <returns></returns> public EventRet AddRootEntity(string eventName, string eventContent, int startTime, int endTime) { EventRet ret = new EventRet(); mapContext.BeginTransaction(System.Data.IsolationLevel.ReadUncommitted);//创建事务 try { BaseEventTypeModel eventModel = new BaseEventTypeModel(); eventModel.content = eventContent; eventModel.event_code = ""; eventModel.event_name = eventName; eventModel.pid = -1; int eventId = AddEntity(eventModel); //添加事件 if (eventId > 0) { ServAlarmVideoTimeModel timeModel = new ServAlarmVideoTimeModel(); timeModel.end_time = endTime; timeModel.event_id = eventId; timeModel.start_time = startTime; int timeId = (int)mapContext.Insert("InsertAlarmVideoTime", timeModel); //添加事件对应视频下载时间 if (timeId > 0) { mapContext.CommitTransaction(); ret.message = "事件添加成功"; ret.state = 0; return(ret); } else { mapContext.RollBackTransaction(); ret.message = "视频下载时间添加失败"; ret.state = -1; return(ret); } } else { mapContext.RollBackTransaction(); ret.message = "事件添加失败"; ret.state = -1; return(ret); } } catch (Exception ex) { mapContext.RollBackTransaction(); throw ex; } finally { // mapContext.CloseConnection(); } }
/// <summary> /// 更新一条数据 /// </summary> /// <param name="model"></param> public int UpdateBaseEventTypeById(BaseEventTypeModel model) { try { int result = mapContext.Update("UpdateEventType", model); return(result); } catch (Exception ex) { throw ex; } }
/// <summary> /// 修改子级事件 /// </summary> /// <param name="id"></param> /// <param name="eventName"></param> /// <param name="eventCode"></param> /// <param name="eventContent"></param> /// <returns></returns> public EventRet UpdateChildEvent(int pid, int id, string eventName, string eventCode, string eventContent) { EventRet ret = new EventRet(); try { List <BaseEventTypeModel> eventList = _baseEventTypeDal.GetEntities(); var sEvent = eventList.FirstOrDefault(n => n.id == id); //查找自身 if (sEvent != null) { eventList.Remove(sEvent); //移除自身 } var checkCode = eventList.FirstOrDefault(n => n.event_code == eventCode); var checkName = eventList.FirstOrDefault(n => n.event_name == eventName); if (checkCode != null) //校验事件编码 { ret.state = -1; ret.message = "事件编码重复"; return(ret); } if (checkName != null) //校验事件名称 { ret.state = -1; ret.message = "事件名称重复"; return(ret); } BaseEventTypeModel model = new BaseEventTypeModel(); model.id = id; model.content = eventContent; model.event_code = eventCode; model.event_name = eventName; model.pid = pid; int res = _baseEventTypeDal.UpdateBaseEventTypeById(model); if (res > 0) //判断是否修改成功 { ret.state = 0; ret.message = "事件修改成功"; return(ret); } else { ret.state = -1; ret.message = "事件修改失败"; return(ret); } } catch (Exception ex) { throw ex; } }
/// <summary> /// 增加一条数据 /// </summary> /// <param name="entity"></param> public int AddEntity(BaseEventTypeModel entity) { //int id = (int)mapContext.Insert("InsertEventType", entity); //return id; try { return((int)mapContext.Insert("InsertEventType", entity)); } catch (Exception ex) { throw ex; } }
/// <summary> /// 添加子级事件 /// </summary> /// <param name="pid"></param> /// <param name="eventName"></param> /// <param name="eventCode"></param> /// <param name="eventContent"></param> /// <returns></returns> public EventRet AddChildEvent(int pid, string eventName, string eventCode, string eventContent) { EventRet ret = new EventRet(); try { List <BaseEventTypeModel> eventList = _baseEventTypeDal.GetEntities(); var checkCode = eventList.FirstOrDefault(n => n.event_code == eventCode); var checkName = eventList.FirstOrDefault(n => n.event_name == eventName); if (checkCode != null) { ret.state = -1; ret.message = "事件编码重复"; return(ret); } if (checkName != null) //校验事件名称 { ret.state = -1; ret.message = "事件名称重复"; return(ret); } BaseEventTypeModel model = new BaseEventTypeModel(); model.content = eventContent; model.event_code = eventCode; model.event_name = eventName; model.pid = pid; int id = _baseEventTypeDal.AddEntity(model); if (id > 0) //判断是否添加成功 { ret.state = 0; ret.message = "事件添加成功"; return(ret); } else { ret.state = -1; ret.message = "事件添加失败"; return(ret); } } catch (Exception ex) { throw ex; } }
/// <summary> /// 通过事件名称展示预案流程图 /// </summary> /// <param name="eventName"></param> /// <returns></returns> public CSM.Model.ServAlarmCommandModel ShowFlowchartByName(string eventName) { BaseEventTypeDAL baseEventTypeDal = new BaseEventTypeDAL(); try { BaseEventTypeModel model = baseEventTypeDal.GetEntityByEventName(eventName); var list = this.GetAlarmCommandByEventId(model.id); //根据事件ID获取对应的应急指挥 Dictionary <string, string> dictNode; //数据 Dictionary <string, string> dictLink; //线条 List <object> listnode = new List <object>(); List <object> listlink = new List <object>(); foreach (var item in list) { dictNode = new Dictionary <string, string>(); dictNode["key"] = item.child_node.ToString(); dictNode["text"] = item.content; dictNode["color"] = item.color; listnode.Add(dictNode);//数据 dictLink = new Dictionary <string, string>(); dictLink["from"] = item.parent_node.ToString(); dictLink["to"] = item.child_node.ToString(); listlink.Add(dictLink);//线条 } ServAlarmCommandModel acModel = new ServAlarmCommandModel(); JavaScriptSerializer js = new JavaScriptSerializer(); acModel.nodeJson = js.Serialize(listnode); //序列化列表 acModel.linkJson = js.Serialize(listlink); //序列化线条 return(acModel); } catch (Exception ex) { throw ex; } }
/// <summary> /// 根据事件code获取事件类型ID /// </summary> /// <param name="code"></param> /// <returns></returns> private int GetBaseEventType(string code) { try { BaseEventTypeDAL eventTypeDal = new BaseEventTypeDAL(); BaseEventTypeModel model = eventTypeDal.GetEntityByEventCode(code); if (model != null) { return(model.id); } else { Log4NetHelp.Info("根据事件code未找到对应事件类型:" + code); return(-1); } } catch (Exception ex) { Log4NetHelp.Error("根据事件code查找到事件类型失败:" + code + "消息:" + ex.Message); return(-1); } }
/// <summary> /// 根据事件code获取事件名称 乔 /// </summary> /// <param name="id"></param> /// <returns></returns> public string GetEventTypeNameByCode(string code) { string eventName = ""; BaseEventTypeModel EventTypInfo = new BaseEventTypeModel(); try { EventTypInfo = mapContext.QueryForObject <BaseEventTypeModel>("GetEventTypeByCode", code); if (EventTypInfo != null) { if (EventTypInfo.pid == -1) { eventName = EventTypInfo.event_name; } else { EventTypInfo = mapContext.QueryForObject <BaseEventTypeModel>("GetEventTypeById", EventTypInfo.pid); if (EventTypInfo != null) { eventName = EventTypInfo.event_name; } else { eventName = ""; } } return(eventName); } else { return(eventName = ""); } } catch (Exception ex) { throw ex; } }
/// <summary> /// 删除父级事件 /// </summary> /// <param name="id"></param> /// <returns></returns> public EventRet DeleteRootEvent(int id) { EventRet ret = new EventRet(); try { BaseEventTypeModel eventModel = _baseEventTypeDal.GetEntity(id); if (eventModel != null) { return(_baseEventTypeDal.DeleteRootEvent(id)); } else { ret.state = -1; ret.message = "事件不存在"; return(ret); } } catch (Exception ex) { throw ex; } }
public bool UpdateEntity(int id, BaseEventTypeModel newentity) { throw new NotImplementedException(); }
/// <summary> /// 父级事件修改 /// </summary> /// <param name="eventName"></param> /// <param name="eventContent"></param> /// <param name="startTime"></param> /// <param name="endTime"></param> /// <param name="id"></param> /// <returns></returns> public EventRet UpdateRootEvent(string eventName, string eventContent, int startTime, int endTime, int id) { EventRet ret = new EventRet(); mapContext.BeginTransaction(System.Data.IsolationLevel.ReadUncommitted);//创建事务 try { BaseEventTypeModel eventModel = new BaseEventTypeModel(); eventModel.id = id; eventModel.content = eventContent; eventModel.event_code = ""; eventModel.event_name = eventName; eventModel.pid = -1; int eventRes = UpdateBaseEventTypeById(eventModel); if (eventRes > 0) { int res = 0; ServAlarmVideoTimeModel timeModel = mapContext.QueryForObject <ServAlarmVideoTimeModel>("GetAlarmVideoTimeByEventId", id); //查找事件对应视频下载时间是否存在 if (timeModel == null) { timeModel = new ServAlarmVideoTimeModel(); timeModel.end_time = endTime; timeModel.event_id = id; timeModel.start_time = startTime; res = (int)mapContext.Insert("InsertAlarmVideoTime", timeModel); //不存在则添加 } else { timeModel.end_time = endTime; timeModel.event_id = id; timeModel.start_time = startTime; res = mapContext.Update("UpdateAlarmVideoTimeByEventId", timeModel); //修改 } if (res > 0) { mapContext.CommitTransaction(); ret.message = "事件修改成功"; ret.state = 0; return(ret); } else { mapContext.RollBackTransaction(); ret.message = "视频下载时间修改失败"; ret.state = -1; return(ret); } } else { mapContext.RollBackTransaction(); ret.message = "事件修改失败"; ret.state = -1; return(ret); } } catch (Exception ex) { mapContext.RollBackTransaction(); throw ex; } finally { // mapContext.CloseConnection(); } }