public object InterfaceRealtimeList() { try { SystemSettingBase settings = SystemSettingBase.CreateInstance(); if (settings.SysMySqlDB != null) { ConnString.MySqldb = settings.SysMySqlDB.ConnectionString; } List <InterfaceRealtimeInfo> list = InterfaceRealtimeInfoOperation.GetInterfaceRealtimeInfoList("Id,InterfaceName,ApplicationName,ServerAddress,StateCode,UpdateTime,appid", ""); List <InterfaceRealtimeInfo> result = new List <InterfaceRealtimeInfo>(); int timeout = 10; foreach (InterfaceRealtimeInfo info in list) { InterfaceConfigInfo config = InterfaceConfigInfoOperation.GetInterfaceConfigInfoById(info.Id); double interval = (DateTime.Now - info.UpdateTime).TotalMinutes; if (config != null && config.ConnectedTimeout > 0) { timeout = config.ConnectedTimeout; } //状态不更新超时判断 if (interval >= timeout) { info.StateCode = 0; } result.Add(info); } return(new JsonResult(result)); } catch (Exception ex) { throw ex; } }
/// <summary> /// 获取接口实时状态列表 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button10_Click(object sender, EventArgs e) { string field = "Id,InterfaceName,ApplicationName,ServerAddress"; string whereCondition = "where StateCode = 200"; List <InterfaceRealtimeInfo> list = InterfaceRealtimeInfoOperation.GetInterfaceRealtimeInfoList(field, whereCondition); }