/// <summary> /// 日平均值 /// </summary> /// <param name="pointId">测点号</param> /// <returns>日平均值</returns> public BasicResponse <FactorValueInfo> DayAverageValue(FactorValueGetRequest factorValueGetRequest) { var hourResponse = hourService.GetDayAverageValueByPointId( new Jc_HourGetRequest() { PointId = factorValueGetRequest.PointId } ); var factorValueResponse = new BasicResponse <FactorValueInfo>(); FactorValueInfo factorValueInfo = new FactorValueInfo(); if (hourResponse.Code == 100) { if (hourResponse.Data != null) { decimal tryParseValue = 0.00M; decimal.TryParse(hourResponse.Data.CountDataValue, out tryParseValue); if (tryParseValue > 0) { factorValueInfo.Value = hourResponse.Data.CountDataValue; } } } factorValueResponse.Data = factorValueInfo; factorValueResponse.Code = hourResponse.Code; factorValueResponse.Message = hourResponse.Message; return(factorValueResponse); }
/// <summary> /// 报警下限值 /// </summary> /// <param name="pointId">测点号</param> /// <returns>报警下限值</returns> public BasicResponse <FactorValueInfo> AlarmLowerValue(FactorValueGetRequest factorValueGetRequest) { var pointDefineCacheResponse = pointDefineCacheService.PointDefineCacheByPointIdRequeest( new PointDefineCacheByPointIdRequeest() { PointID = factorValueGetRequest.PointId } ); var factorValueResponse = new BasicResponse <FactorValueInfo>(); FactorValueInfo factorValueInfo = new FactorValueInfo(); if (pointDefineCacheResponse.Code == 100) { if (pointDefineCacheResponse.Data != null) { factorValueInfo.Value = pointDefineCacheResponse.Data.Z6.ToString(); } } factorValueResponse.Data = factorValueInfo; factorValueResponse.Code = pointDefineCacheResponse.Code; factorValueResponse.Message = pointDefineCacheResponse.Message; return(factorValueResponse); }
/// <summary> /// 五分钟最大值 /// </summary> /// <param name="pointId">测点号</param> /// <returns>五分钟最大值</returns> public BasicResponse <FactorValueInfo> FiveMinutesMaxValue(FactorValueGetRequest factorValueGetRequest) { var pointDefineCacheResponse = pointDefineCacheService.PointDefineCacheByPointIdRequeest( new PointDefineCacheByPointIdRequeest() { PointID = factorValueGetRequest.PointId } ); var factorValueResponse = new BasicResponse <FactorValueInfo>(); FactorValueInfo factorValueInfo = new FactorValueInfo(); if (pointDefineCacheResponse.Code == 100) { try { factorValueInfo.Value = pointDefineCacheResponse.Data.ClsFiveMinObj.m_nMaxVal.ToString(); } catch { factorValueInfo.Value = "0"; } } factorValueResponse.Data = factorValueInfo; factorValueResponse.Code = pointDefineCacheResponse.Code; factorValueResponse.Message = pointDefineCacheResponse.Message; return(factorValueResponse); }
/// <summary> /// 开关量/模拟量实时值 /// </summary> /// <param name="pointId">测点号</param> /// <returns>开关量/模拟量实时值</returns> public BasicResponse <FactorValueInfo> OnOffRealtimeValue(FactorValueGetRequest factorValueGetRequest) { var pointDefineCacheResponse = pointDefineCacheService.PointDefineCacheByPointIdRequeest( new PointDefineCacheByPointIdRequeest() { PointID = factorValueGetRequest.PointId } ); var factorValueResponse = new BasicResponse <FactorValueInfo>(); FactorValueInfo factorValueInfo = new FactorValueInfo(); if (pointDefineCacheResponse.Code == 100) { if (pointDefineCacheResponse.Data != null) { //(DevPropertyID: 1 模拟量 2 开关量) if (pointDefineCacheResponse.Data.DevPropertyID == 1) { //模拟量 switch (pointDefineCacheResponse.Data.State) { case 21: factorValueInfo.Value = pointDefineCacheResponse.Data.Ssz; break; default: break; } } else if (pointDefineCacheResponse.Data.DevPropertyID == 2) { //开关量 switch (pointDefineCacheResponse.Data.DataState) { case 25: factorValueInfo.Value = "0"; break; case 26: factorValueInfo.Value = "1"; break; case 27: factorValueInfo.Value = "2"; break; default: break; } } } } factorValueResponse.Data = factorValueInfo; factorValueResponse.Code = pointDefineCacheResponse.Code; factorValueResponse.Message = pointDefineCacheResponse.Message; return(factorValueResponse); }
/// <summary> /// 日最大值 /// </summary> /// <param name="pointId">测点号</param> /// <returns>日最大值</returns> public FactorValueInfo DayMaxValue(string pointId) { FactorValueInfo factorValueInfo = new FactorValueInfo(); var historyItem = HistoryDataCache.Instance.Query(q => q.PointId == pointId, false).FirstOrDefault(); if (historyItem != null) { factorValueInfo.Value = historyItem.DayMaxValue.ToString(); } return(factorValueInfo); }
/// <summary> /// 报警下限值 /// </summary> /// <param name="pointId">测点号</param> /// <returns>报警下限值</returns> public FactorValueInfo AlarmLowerValue(string pointId) { FactorValueInfo factorValueInfo = new FactorValueInfo(); Jc_DefInfo pointDefine = PointCache.Instance.Query(q => q.PointID == pointId, false).FirstOrDefault(); if (pointDefine != null) { factorValueInfo.Value = pointDefine.Z6.ToString(); } return(factorValueInfo); }
/// <summary> /// 开关量/模拟量实时值 /// </summary> /// <param name="pointId">测点号</param> /// <returns>开关量/模拟量实时值</returns> public FactorValueInfo OnOffRealtimeValue(string pointId) { FactorValueInfo factorValueInfo = new FactorValueInfo(); Jc_DefInfo pointDefine = PointCache.Instance.Query(q => q.PointID == pointId, false).FirstOrDefault(); if (pointDefine != null) { //(DevPropertyID: 1 模拟量 2 开关量) if (pointDefine.DevPropertyID == 1) { //模拟量 switch (pointDefine.State) { //case 5://红外遥控模拟数据时,也按正常处理 20171219 case 21: factorValueInfo.Value = pointDefine.Ssz; break; default: break; } } else if (pointDefine.DevPropertyID == 2) { //开关量 switch (pointDefine.DataState) { case 25: factorValueInfo.Value = "0"; break; case 26: factorValueInfo.Value = "1"; break; case 27: factorValueInfo.Value = "2"; break; default: break; } } } return(factorValueInfo); }