using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace IStation.Model.Monitor { /// /// 数值累积计算公式参数 /// public class NumberAccumulateCalculationFormulaParas : JsonModel { /// /// 累积类型 /// public enum eAccumulateType { /// /// 秒 /// Second = 0, /// /// 分 /// Minute = 1, /// /// 时 /// Hour = 2, /// /// 日 /// Day = 3 } /// /// 测点标识 /// public long ObjectID { get; set; } /// /// 累积类型 /// public eAccumulateType AccumulateType { get; set; } /// /// 计算 /// public double Calculate(double instantValue, double second) { double result = instantValue; switch (this.AccumulateType) { case eAccumulateType.Second: result = instantValue * second; break; case eAccumulateType.Minute: result = instantValue * second / 60; break; case eAccumulateType.Hour: result = instantValue * second / 3600; break; case eAccumulateType.Day: result = instantValue * second / 3600 / 24; break; default: break; } return result; } } }