duheng
2024-12-20 0a7989934b6d561e32ae61d3af16cbf773074da2
WinFrmUI/HStation.WinFrmUI.PhartRelation.Core/99-common/PumpParallelChartDlg.cs
@@ -7,10 +7,9 @@
        public PumpParallelChartDlg()
        {
            InitializeComponent();
            this.Text = "并联分析";
            this.Text = "并联模拟";
            this.IconOptions.Icon = Yw.WinFrmUI.GlobalParas.AppIcon;
            this.pumpSerialParallelChart.LineVisible = true;
            this.pumpParallelInfoCtrl1.SetEvent += (id, qh, qe, qp) =>
            {
                var list = this.pumpParallelInfoCtrl1.GetRunList();
@@ -18,12 +17,12 @@
            };
            this.pumpParallelInfoCtrl1.SetInfoEvent += (id, name, color) =>
            {
                this.pumpSerialParallelChart.SetInfo(id, name, color);
                this.pumpSerialParallelChart.Set(id, name, color);
            };
            this.pumpParallelInfoCtrl1.SetDesignPointEvent += (q, h) =>
            {
                this.pumpSerialParallelChart.SetDesignPt(new Point2d(q, h));
                this.pumpSerialParallelChart.SetDesignPoint(new Point2d(q, h));
            };
            this.pumpParallelInfoCtrl1.AddEvent += (vm) =>
@@ -38,7 +37,7 @@
                SetParallel(list);
            };
            this.pumpSerialParallelChart.OnCalcQueryPoint += (id, pt) =>
            this.pumpSerialParallelChart.QueryPointChangedEvent += (id, pt) =>
            {
                this.pumpParallelInfoCtrl1.SetQueryInfo(id, pt);
            };
@@ -73,7 +72,7 @@
            };
        }
        private string _parallel_id = "parallel";
        private string _parallel_id = "parallel";
        public event Func<List<XhsSingleResultViewModel>, bool> ReloadDataEvent;
@@ -100,26 +99,26 @@
                }
                var vm = new Yw.WinFrmUI.Phart.PumpSerialParallelInfoViewModel();
                vm.ID= x.ID;
                vm.ID = x.ID;
                vm.Id = x.ID.ToString();
                vm.Name = x.Name;
                vm.Code = x.Code;
                vm.IsBp = x.IsBp;
                vm.RatedSpeed = x.RatedSpeed;
                vm.CurrentSpeed = x.CurrentSpeed;
                vm.RatedN = x.RatedSpeed;
                vm.CurrentN = x.CurrentSpeed;
                vm.RunStatus = x.RunStatus;
                vm.CurrentHz = x.CurrentHz;
                var qh_pt_list = x.CurveQH.Select(x => new Yw.Geometry.Point2d(x.X, x.Y)).ToList();
                vm.Qh = new CubicSpline2d(qh_pt_list);
                vm.CurveQH = new CubicSpline2d(qh_pt_list);
                if (x.CurveQE != null && x.CurveQE.Any())
                {
                    var qe_pt_list = x.CurveQE.Select(x => new Yw.Geometry.Point2d(x.X, x.Y)).ToList();
                    vm.Qe = new CubicSpline2d(qe_pt_list);
                    vm.CurveQE = new CubicSpline2d(qe_pt_list);
                }
                if (x.CurveQP != null && x.CurveQP.Any())
                {
                    var qp_pt_list = x.CurveQP.Select(x => new Yw.Geometry.Point2d(x.X, x.Y)).ToList();
                    vm.Qp = new CubicSpline2d(qp_pt_list);
                    vm.CurveQP = new CubicSpline2d(qp_pt_list);
                }
                vm.CalcuQ = x.CalcuQ;
                vm.CalcuH = x.CalcuH;
@@ -127,13 +126,13 @@
                vm.Calc();
                vm_list.Add(vm);
            }
            }
            this.pumpParallelInfoCtrl1.SetBindingData(vm_list, null);
            var run_list = this.pumpParallelInfoCtrl1.GetRunList();
            var run_list = this.pumpParallelInfoCtrl1.GetRunList();
            var msg = SetParallel(run_list);
            if (!string.IsNullOrEmpty(msg))
            {
                 //TipFormHelper.ShowWarn(msg);
                //TipFormHelper.ShowWarn(msg);
                return msg;
            }
            return string.Empty;
@@ -141,7 +140,7 @@
        private string SetParallel(List<Yw.WinFrmUI.Phart.PumpSerialParallelInfoViewModel> list)
        {
            this.pumpSerialParallelChart.Delete();
            this.pumpSerialParallelChart.Clear();
            if (list == null || !list.Any())
            {
                return "无数据!";
@@ -193,7 +192,7 @@
            Yw.Geometry.CubicSpline2d qe = new Yw.Geometry.CubicSpline2d(calc_pt_qe_list);
            Yw.Geometry.CubicSpline2d qp = new Yw.Geometry.CubicSpline2d(calc_pt_qp_list);
            var total_flow = list.Sum(x => x.Qh.MaxX);
            var total_flow = list.Sum(x => x.CurveQH.MaxX);
            var parallel_flow = calc_pt_qh_list.Max(x => x.X);
            if (total_flow > parallel_flow * 1.05)
            {
@@ -211,16 +210,16 @@
            var vm_sp = new Yw.WinFrmUI.Phart.PumpSerialParallelInfoViewModel();
            vm_sp.Id = _parallel_id;
            vm_sp.Name = line_name;
            vm_sp.Qh = qh;
            vm_sp.Qe = qe;
            vm_sp.Qp = qp;
            vm_sp.QhCalc = vm_sp.Qh;
            vm_sp.QeCalc = vm_sp.Qe;
            vm_sp.QpCalc = vm_sp.Qp;
            vm_sp.CurveQH = qh;
            vm_sp.CurveQE = qe;
            vm_sp.CurveQP = qp;
            vm_sp.QhCalc = vm_sp.CurveQH;
            vm_sp.QeCalc = vm_sp.CurveQE;
            vm_sp.QpCalc = vm_sp.CurveQP;
            vm_sp.Color = Color.Black;
            vm_sp.IsBp = true;
            vm_sp.IsDefault = true;
            return vm_sp;
        }