duheng
2025-02-07 c5136b7517998a076f1bd2e4abdda01decae8b6f
Calc/IStation.Calc.Model/AnaRequest.cs
@@ -6,56 +6,49 @@
namespace IStation.CalcModel
{
    public class AnaRequest
    public class AnaRequest: AnaRequestBase
    {
        public eCalcOptType  CalcOptType { get; set; }
        public DateTime StartTime { get; set; }
        public DateTime EndTime { get; set; }
        public AnaRequest() { }
        public AnaRequest(AnaRequestBase rhs):base(rhs) { }
        //长江水位
        public List<Model.TimeWaterLevel> WaterLevels长江 { get; set; }
        public int StartOpenCount { get; set; } = -1;
        public double? TotalFlowIn { get; set; }//单位 吨
        public double CurrentWaterBoxLevel { get; set; }//当前水库水位
        public double? MaxLimitWaterBoxLevel { get; set; }//最高水库水位限制
        public string MaxLimitWaterBoxTime { get; set; }//最高水库水位限制时间
        public List<double> SpaceFlowOut { get; set; }// 时间流量
        //自定义的开机策略
        public List<CalcModel.PumpRunRange> ManuPrjTimeBlockList { get; set; } 
    }
    public class AnaRequestBase
    {
        public AnaRequestBase() { }
        public AnaRequestBase(AnaRequest rhs) {
        public AnaRequestBase(AnaRequestBase rhs)
        {
            this.CalcOptType = rhs.CalcOptType;
            this.StartTime = rhs.StartTime; this.EndTime = rhs.EndTime;
            this.StartOpenCount = rhs.StartOpenCount;
            this.StartTime = rhs.StartTime;
            this.EndTime = rhs.EndTime;
            this.StartOpenPumpIndexArray = rhs.StartOpenPumpIndexArray;
            this.IsKnownStartOpenPump = rhs.IsKnownStartOpenPump;
            this.TotalFlowIn = rhs.TotalFlowIn;
            this.CurrentWaterBoxLevel = rhs.CurrentWaterBoxLevel;
            this.MaxLimitWaterBoxLevel = rhs.MaxLimitWaterBoxLevel;
            this.MaxLimitWaterBoxTime = rhs.MaxLimitWaterBoxTime;
            this.StartReservoirLevel = rhs.StartReservoirLevel;
            this.MaxReservoirLevel = rhs.MaxReservoirLevel;
            this.MaxReservoirLevelTime = rhs.MaxReservoirLevelTime;
            this.SpaceFlowOut = rhs.SpaceFlowOut;
            this.PerHourFlowOut = rhs.PerHourFlowOut;
            //this.ReservoirMinLimitHours = rhs.ReservoirMinLimitHours;
            //this.ReservoirMaxLimitHours = rhs.ReservoirMaxLimitHours;
        }
        public eCalcOptType CalcOptType { get; set; }
        public DateTime StartTime { get; set; }
        public DateTime EndTime { get; set; }
        public int StartOpenCount { get; set; } = -1;
        public double? TotalFlowIn { get; set; }//单位 吨
        public List<int> StartOpenPumpIndexArray { get; set; }//开始时开的是哪些几台泵
        public bool IsKnownStartOpenPump { get; set; } //是否知道知道开始时的开泵状态
        public double? TotalFlowIn { get; set; }//取水总量 单位(吨)
        public double CurrentWaterBoxLevel { get; set; }//当前水库水位
        public double? MaxLimitWaterBoxLevel { get; set; }//最高水库水位限制
        public string MaxLimitWaterBoxTime { get; set; }//最高水库水位限制时间
        public double StartReservoirLevel { get; set; }//当前水库水位(由CurrentWaterBoxLevel 改)
        public List<double> SpaceFlowOut { get; set; }//水池排水时间流量
        //public List<double?> ReservoirMinLimitHours { get; set; }
        //public List<double?> ReservoirMaxLimitHours { get; set; }
        public double? MaxReservoirLevel { get; set; }//最高水库水位限制
        public string MaxReservoirLevelTime { get; set; }//最高水库水位限制时间
        public List<double> PerHourFlowOut { get; set; }//水池排水时间流量  单位 吨
    }
}