/// <summary> /// 更新应急联动配置 /// </summary> /// <param name="request"></param> /// <returns></returns> public BasicResponse UpdateSysEmergencyLinkage(SysEmergencyLinkageUpdateRequest request) { _sysEmergencyLinkageCacheService.UpdateSysEmergencyLinkageCache(new Sys.Safety.Request.EmergencyLinkageConfigCacheUpdateRequest { SysEmergencyLinkageInfo = request.SysEmergencyLinkageInfo }); return(new BasicResponse()); }
private void barButtonItem1_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { try { if (string.IsNullOrEmpty(this.txtreason.Text.Trim())) { XtraMessageBox.Show("应急联动强制结束必须填写结束原因!"); return; } //强制结束应急联动1.更新呼叫控制 2.更新应急联动状态 3.更新应急联动运行记录 if (selectSysEmergencyLinkageInfo.EmergencyLinkageState != 0) { var masterid = selectSysEmergencyLinkageInfo.Type == 1 ? selectSysEmergencyLinkageInfo.Id : selectSysEmergencyLinkageInfo.MasterModelId; //解除广播控制 BCallInfoGetByMasterIDRequest b_defExistsRequest = new BCallInfoGetByMasterIDRequest(); b_defExistsRequest.MasterId = masterid; b_defExistsRequest.CallType = 1; var bcallinfo = bCallService.GetBCallInfoByMasterID(b_defExistsRequest).Data.FirstOrDefault(); if (bcallinfo != null) { bcallinfo.CallType = 2; bCallService.UpdateCall(new B_CallUpdateRequest { CallInfo = bcallinfo }); } //解除人员定位控制 RCallInfoGetByMasterIDRequest rcallgetRequest = new RCallInfoGetByMasterIDRequest(); rcallgetRequest.MasterId = masterid; rcallgetRequest.CallType = 1; rcallgetRequest.IsQueryByType = false; rcallgetRequest.Type = 0; var rcallinfo = rCallService.GetRCallInfoByMasterID(rcallgetRequest).Data; if (rcallinfo.Count > 0) { rcallinfo.ForEach(o => { o.CallType = 2; rCallService.UpdateCall(new R_CallUpdateRequest { CallInfo = o }); }); } //2.更新配置缓存 selectSysEmergencyLinkageInfo.EmergencyLinkageState = 0; selectSysEmergencyLinkageInfo.IsForceEnd = true; selectSysEmergencyLinkageInfo.EndTime = DateTime.Now; var delaytime = Convert.ToInt32(this.spinEdit1.Text); //延迟时间数据库存秒 selectSysEmergencyLinkageInfo.DelayTime = delaytime * 60; SysEmergencyLinkageUpdateRequest upddateRequest = new SysEmergencyLinkageUpdateRequest(); upddateRequest.SysEmergencyLinkageInfo = selectSysEmergencyLinkageInfo; sysEmergencyLinkageService.UpdateSysEmergencyLinkage(upddateRequest); //3.更新运行记录 var emergencyLinkHistory = emergencyLinkHistoryService.GetEmergencyLinkHistoryByEmergency(new EmergencyLinkHistoryGetByEmergencyRequest { EmergencyId = selectSysEmergencyLinkageInfo.Id }).Data; if (emergencyLinkHistory != null && !string.IsNullOrEmpty(emergencyLinkHistory.Id)) { emergencyLinkHistory.EndTime = DateTime.Now; emergencyLinkHistory.IsForceEnd = 1; emergencyLinkHistory.By1 = this.txtreason.Text; ClientItem _ClientItem = Basic.Framework.Data.PlatRuntime.Items[KeyConst.ClientItemKey] as ClientItem; if (_ClientItem != null) { emergencyLinkHistory.EndPerson = _ClientItem.UserID; } emergencyLinkHistoryService.UpdateEmergencyLinkHistory(new EmergencyLinkHistoryUpdateRequest { EmergencyLinkHistoryInfo = emergencyLinkHistory }); } } this.Close(); } catch (Exception ex) { LogHelper.Error("应急联动强制结束失败:" + ex.Message); } }
BasicResponse ISysEmergencyLinkageService.UpdateSysEmergencyLinkage(SysEmergencyLinkageUpdateRequest request) { var responseStr = HttpClientHelper.Post(Webapi + "/v1/SysEmergencyLinkage/UpdateSysEmergencyLinkage?token=" + Token, JSONHelper.ToJSONString(request)); return(JSONHelper.ParseJSONString <BasicResponse>(responseStr)); }