/// <summary> /// 获取事件预案信息 /// </summary> /// <param name="eventPlanId"></param> /// <param name="planType"></param> /// <returns></returns> public EventPlanRelationInfo GetEventPlanInfo(int eventPlanId, int planType) { try { //获取预案信息 ServEventPlanModel entity = servEventPlanDAL.GetEntity(eventPlanId); //获取时间信息 ServExecutionTimeModel ServExecutionTime = servExecutionTimeDAL.GetTimeEntity(eventPlanId, planType); //获取处置项信息 List <ServPlanHandleItemModel> PlanHandleItemList = servPlanHandleItemDAL.GetPlanHandleItem(eventPlanId, planType); //预案确警前处置项 List <ServPlanHandleItemModel> defaultPlanHandleItemList = new List <ServPlanHandleItemModel>(); //预案确警后处置项 List <ServPlanHandleItemModel> cnfirmPlanHandleItemList = new List <ServPlanHandleItemModel>(); //预案确警前责任人关联表 List <ServPlanPersonModel> defaultPersonList = new List <ServPlanPersonModel>(); //预案确警后责任人关联表 List <ServPlanPersonModel> cnfirmPlanPersonList = new List <ServPlanPersonModel>(); if (PlanHandleItemList.Count() > 0) { for (var i = 0; i < PlanHandleItemList.Count(); i++) { if (PlanHandleItemList[i].item_type == (int)CSM.Common.EnumClass.EventPlanDefaultOptions.通知其他负责人 && PlanHandleItemList[i].confirm_type == (int)CSM.Common.EnumClass.PlanHandleTime.确警前) { defaultPersonList = servPlanPersonDAL.GetPlanPersonInfo(PlanHandleItemList[i].id); } else if (PlanHandleItemList[i].item_type == (int)CSM.Common.EnumClass.EventPlanConfirmOptions.通知其他负责人 && PlanHandleItemList[i].confirm_type == (int)CSM.Common.EnumClass.PlanHandleTime.确警后) { cnfirmPlanPersonList = servPlanPersonDAL.GetPlanPersonInfo(PlanHandleItemList[i].id); } if (PlanHandleItemList[i].confirm_type == (int)CSM.Common.EnumClass.PlanHandleTime.确警前) { defaultPlanHandleItemList.Add(PlanHandleItemList[i]); } else if (PlanHandleItemList[i].confirm_type == (int)CSM.Common.EnumClass.PlanHandleTime.确警后) { cnfirmPlanHandleItemList.Add(PlanHandleItemList[i]); } } } EventPlanRelationInfo model = new EventPlanRelationInfo(); model.entity = entity; model.servExecutionTime = ServExecutionTime; model.defaultPlanHandleItemList = defaultPlanHandleItemList; model.cnfirmPlanHandleItemList = cnfirmPlanHandleItemList; model.cnfirmPlanPersonList = cnfirmPlanPersonList; model.defaultPersonList = defaultPersonList; return(model); } catch (Exception ex) { throw ex; } }
/// <summary> /// 添加设备预案信息 /// </summary> /// <param name="entity"></param> /// <returns></returns> public bool AddEventPlan(EventPlanRelationInfo eventPlanRelationInfo) { mapContext.BeginTransaction(System.Data.IsolationLevel.ReadUncommitted);//创建事务 try { bool result = false; //向预案信息表中添加预案信息 int planId = (int)mapContext.Insert("InsertServEventPlan", eventPlanRelationInfo.entity); if (planId > 0) { result = AddRelatedInfo(planId, eventPlanRelationInfo); } else { mapContext.RollBackTransaction(); result = false; } if (result == true) { mapContext.CommitTransaction();//提交事务 return(result); } else { mapContext.RollBackTransaction();//事务回滚 return(result); } } catch (Exception ex) { mapContext.RollBackTransaction(); throw ex; } finally { //mapContext.CommitTransaction(); } }
/// <summary> /// 修改预案信息 /// </summary> /// <param name="entity">预案信息</param> /// <param name="servExecutionTime">时间</param> /// <param name="defaultPlanHandleItemList">默认处置项</param> /// <param name="cnfirmPlanHandleItemList">确认处置项</param> /// <param name="defaultPersonList">默认处置项通知其他责任人</param> /// <param name="cnfirmPlanPersonList">确认处置项通知其他责任人</param> /// <returns></returns> public bool UpdateEventPlanInfo(ServEventPlanModel entity, ServExecutionTimeModel servExecutionTime, List <ServPlanHandleItemModel> defaultPlanHandleItemList, List <ServPlanHandleItemModel> cnfirmPlanHandleItemList, List <ServPlanPersonModel> defaultPersonList, List <ServPlanPersonModel> cnfirmPlanPersonList) { bool result = false; try { EventPlanRelationInfo eventPlanRelationInfo = new EventPlanRelationInfo(); eventPlanRelationInfo.entity = entity; eventPlanRelationInfo.servExecutionTime = servExecutionTime; eventPlanRelationInfo.defaultPlanHandleItemList = defaultPlanHandleItemList; eventPlanRelationInfo.cnfirmPlanHandleItemList = cnfirmPlanHandleItemList; eventPlanRelationInfo.cnfirmPlanPersonList = cnfirmPlanPersonList; eventPlanRelationInfo.defaultPersonList = defaultPersonList; result = servEventPlanDAL.UpdateEventPlan(eventPlanRelationInfo); return(result); } catch (Exception ex) { throw ex; } }
/// <summary> /// 修改预案信息 /// </summary> /// <param name="eventPlanRelationInfo"></param> /// <returns></returns> public bool UpdateEventPlan(EventPlanRelationInfo eventPlanRelationInfo) { mapContext.BeginTransaction(System.Data.IsolationLevel.ReadUncommitted);//创建事务 try { bool result = false; //修改预案信息.Insert string sql = IBatisHelper.GetRuntimeSql(this.mapContext, "UpdateServEventPlanById", eventPlanRelationInfo.entity); int planId = (int)mapContext.Update("UpdateServEventPlanById", eventPlanRelationInfo.entity); if (planId > 0) { int executionTimeId = (int)mapContext.Delete("DeleteServExecutionTime", eventPlanRelationInfo.servExecutionTime); if (executionTimeId > 0) { ServPlanHandleItemModel servPlanHandleItemModel = new ServPlanHandleItemModel(); servPlanHandleItemModel.plan_id = eventPlanRelationInfo.entity.id; servPlanHandleItemModel.plan_type = (int)PlanType.事件预案; List <ServPlanHandleItemModel> PlanHandleItem = mapContext.QueryForList <ServPlanHandleItemModel>("GetPlanHandleItemByPlanId", servPlanHandleItemModel).ToList(); for (int a = 0; a < PlanHandleItem.Count(); a++) { if (PlanHandleItem[a].item_type == (int)EventPlanDefaultOptions.通知其他负责人 && PlanHandleItem[a].confirm_type == (int)PlanHandleTime.确警前) { //删除默认处置项中的通知其他责任人信息 result = DeleteRelatedInfo("DeletePlanPersonByHandleId", "DeletePlanHandleItemById", PlanHandleItem[a].id); if (result == false) { break; } } else if (PlanHandleItem[a].item_type == (int)EventPlanConfirmOptions.通知其他负责人 && PlanHandleItem[a].confirm_type == (int)PlanHandleTime.确警后) { //删除确警后处置项中的通知其他责任人信息 result = DeleteRelatedInfo("DeletePlanPersonByHandleId", "DeletePlanHandleItemById", PlanHandleItem[a].id); if (result == false) { break; } } else { //删除处置项 result = DeleteRelatedInfo("", "DeletePlanHandleItemById", PlanHandleItem[a].id); if (result == false) { break; } } } //添加关联信息 result = AddRelatedInfo(eventPlanRelationInfo.entity.id, eventPlanRelationInfo); } else { mapContext.RollBackTransaction(); result = false; } } else { mapContext.RollBackTransaction(); result = false; } if (result == true) { mapContext.CommitTransaction();//提交事务 return(result); } else { mapContext.RollBackTransaction();//事务回滚 return(result); } } catch (Exception ex) { mapContext.RollBackTransaction(); throw ex; } finally { //mapContext.CommitTransaction(); } }
/// <summary> /// 向预案处置项关联摄像头表,预案责任人关联表,预案处置项表表中添加相应信息 /// </summary> /// <param name="Planid">预案id</param> /// <param name="eventPlanRelationInfo"></param> /// <returns></returns> public bool AddRelatedInfo(int Planid, EventPlanRelationInfo eventPlanRelationInfo) { bool result = false; try { #region 向Serv_Execution_Time添加时间信息 eventPlanRelationInfo.servExecutionTime.relate_id = Planid; int TimeId = (int)mapContext.Insert("InsertServExecutionTime", eventPlanRelationInfo.servExecutionTime); if (TimeId > 0) { result = true; } else { result = false; } #endregion if (result == true) { #region 向Serv_Plan_HandleItem添加默认处置选项 for (int i = 0; i < eventPlanRelationInfo.defaultPlanHandleItemList.Count(); i++) { eventPlanRelationInfo.defaultPlanHandleItemList[i].plan_id = Planid; int eventHandleItemId = eventPlanRelationInfo.defaultPlanHandleItemList[i].item_type; #region 向Serv_Plan_Person添加确警前其他责任人信息 if (eventHandleItemId == (int)EventPlanDefaultOptions.通知其他负责人) { int HandleId = (int)mapContext.Insert("InsertPlanHandleItem", eventPlanRelationInfo.defaultPlanHandleItemList[i]); if (HandleId > 0) { //向Serv_Plan_Person添加确警前其他责任人信息 List <ServPlanPersonModel> defaultPersonlist = eventPlanRelationInfo.defaultPersonList as List <ServPlanPersonModel>; for (int f = 0; f < defaultPersonlist.Count(); f++) { defaultPersonlist[f].handleitem_id = HandleId; } int defaultPersonId = (int)mapContext.Insert("BatchAddPlanPerson", defaultPersonlist); if (defaultPersonId > 0) { result = true; } else { result = false; } } else { result = false; } } #endregion else { //向Serv_Plan_HandleItem添加默认处置选项 int HandleId = (int)mapContext.Insert("InsertPlanHandleItem", eventPlanRelationInfo.defaultPlanHandleItemList[i]); if (HandleId > 0) { result = true; } else { result = false; } } } #endregion if (result == true) { #region 向Serv_Plan_HandleItem添加确警后处置选项 for (int i = 0; i < eventPlanRelationInfo.cnfirmPlanHandleItemList.Count(); i++) { //向Serv_Plan_HandleItem添加确警后处置选项 eventPlanRelationInfo.cnfirmPlanHandleItemList[i].plan_id = Planid; int eventHandleItemId = eventPlanRelationInfo.cnfirmPlanHandleItemList[i].item_type; if (eventHandleItemId == (int)EventPlanConfirmOptions.通知其他负责人) { int HandleId = (int)mapContext.Insert("InsertPlanHandleItem", eventPlanRelationInfo.cnfirmPlanHandleItemList[i]); if (HandleId > 0) { //向Serv_Plan_Person添加确警前其他责任人信息 List <ServPlanPersonModel> cnfirmPersonlist = eventPlanRelationInfo.cnfirmPlanPersonList as List <ServPlanPersonModel>; for (int f = 0; f < cnfirmPersonlist.Count(); f++) { cnfirmPersonlist[f].handleitem_id = HandleId; } int cnfirmPersonId = (int)mapContext.Insert("BatchAddPlanPerson", cnfirmPersonlist); if (cnfirmPersonId > 0) { result = true; } else { result = false; } } else { result = false; } } else { //向Serv_Plan_HandleItem添加确警后处置选项 int HandleId = (int)mapContext.Insert("InsertPlanHandleItem", eventPlanRelationInfo.cnfirmPlanHandleItemList[i]); if (HandleId > 0) { result = true; } else { result = false; } } } #endregion } } return(result); } catch (Exception ex) { throw ex; } }