d2b91c9d98f38ccbd657f2adff1473aba29f66b2..018bfb9c78088d9cd7b9371edcd2102abd594b4d
9 天以前 ningshuxia
水力计算曲线 报错修复
018bfb 对比 | 目录
9 天以前 duheng
增加首页图标
3ec9dc 对比 | 目录
已删除1个文件
已修改11个文件
217 ■■■■ 文件已修改
BLL/PBS.BLL/04-bll/04-elec-price/ElecPrice_Instance.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Desktop/PBS.Desktop/MainForm.Designer.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Desktop/PBS.Desktop/MainForm.cs 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Desktop/PBS.Desktop/MainForm.resx 106 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HStation.Xhs.Core.sdf 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/PBS.WinFrmUI.Hydro/03-model-edit/00-core/ModelEditPage.cs 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/PBS.WinFrmUI.Hydro/05-system-curve/02-chart/DynamicThresholdProcessor.cs 30 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/PBS.WinFrmUI.Hydro/05-system-curve/02-chart/SystemCurveChartCtrl.cs 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/PBS.WinFrmUI/03-elecPrice/AddElectricDlg.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/PBS.WinFrmUI/03-elecPrice/ElecPriceMgr.cs 32 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/04-special/01-operation/PumpOperationChart.cs 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/04-special/02-working-view/PumpWorkingViewChart.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
BLL/PBS.BLL/04-bll/04-elec-price/ElecPrice_Instance.cs
@@ -41,10 +41,10 @@
            var mapper = new MapperConfiguration(cfg =>
            {
                cfg.CreateMap<PBS.Vmo.ElecPriceSetting, PBS.Dto.ElecPriceSetting>();
                cfg.CreateMap<PBS.Vmo.ElecPriceVmo, PBS.Dto.UpdateElecPriceInput>();
                cfg.CreateMap<PBS.Vmo.ElecPriceVmo, PBS.Dto.AddElecPriceInput>();
                cfg.CreateMap<PBS.Vmo.ElecPriceMonthSetting, PBS.Dto.ElecPriceMonthSetting>();
                cfg.CreateMap<PBS.Vmo.ElecPriceHourSetting, PBS.Dto.ElecPriceHourSetting>();
                cfg.CreateMap<PBS.Vmo.ElecPriceVmo, PBS.Dto.UpdateElecPriceInput>()
                cfg.CreateMap<PBS.Vmo.ElecPriceVmo, PBS.Dto.AddElecPriceInput>()
               .ForMember(dest => dest.Settings, opt => opt.MapFrom(src => src.Settings));
            }).CreateMapper();
            var dto = mapper.Map<PBS.Vmo.ElecPriceVmo, PBS.Dto.AddElecPriceInput>(vmo);
@@ -100,7 +100,7 @@
                cfg.CreateMap<PBS.Vmo.ElecPriceVmo, PBS.Dto.UpdateElecPriceInput>()
               .ForMember(dest => dest.Settings, opt => opt.MapFrom(src => src.Settings));
            }).CreateMapper();
             var dtoList = mapper.Map<List<PBS.Vmo.ElecPriceVmo>, List<PBS.Dto.UpdateElecPriceInput>>(vmoList);
            var dtoList = mapper.Map<List<PBS.Vmo.ElecPriceVmo>, List<PBS.Dto.UpdateElecPriceInput>>(vmoList);
            return dtoList;
        }
    }
Desktop/PBS.Desktop/MainForm.Designer.cs
@@ -356,6 +356,7 @@
            svgImgItem32.Add("Shaping Profile", (DevExpress.Utils.Svg.SvgImage)resources.GetObject("svgImgItem32.Shaping Profile"));
            svgImgItem32.Add("阀门 (1)", (DevExpress.Utils.Svg.SvgImage)resources.GetObject("svgImgItem32.阀门 (1)"));
            svgImgItem32.Add("闷头管堵", (DevExpress.Utils.Svg.SvgImage)resources.GetObject("svgImgItem32.闷头管堵"));
            svgImgItem32.Add("电费", (DevExpress.Utils.Svg.SvgImage)resources.GetObject("svgImgItem32.电费"));
            // 
            // accordionControlFunction
            // 
@@ -409,6 +410,9 @@
            svgImageIBox.Add("数据管理", (DevExpress.Utils.Svg.SvgImage)resources.GetObject("svgImageIBox.数据管理"));
            svgImageIBox.Add("详情", (DevExpress.Utils.Svg.SvgImage)resources.GetObject("svgImageIBox.详情"));
            svgImageIBox.Add("协议配置", (DevExpress.Utils.Svg.SvgImage)resources.GetObject("svgImageIBox.协议配置"));
            svgImageIBox.Add("供水压力分析", (DevExpress.Utils.Svg.SvgImage)resources.GetObject("svgImageIBox.供水压力分析"));
            svgImageIBox.Add("对比分析", (DevExpress.Utils.Svg.SvgImage)resources.GetObject("svgImageIBox.对比分析"));
            svgImageIBox.Add("能耗分析 (1)", (DevExpress.Utils.Svg.SvgImage)resources.GetObject("svgImageIBox.能耗分析 (1)"));
            // 
            // svgImageHome
            // 
Desktop/PBS.Desktop/MainForm.cs
@@ -1303,7 +1303,7 @@
                            Modular = "BasicData",
                            MoudingType = eMoudingType.Tab,
                            Function = "ElecPriceMgr",
                        }, svgImgItem32[12], new Size(18, 18), (caption,guid,svg,size) =>
                        }, svgImgItem32[44], new Size(18, 18), (caption,guid,svg,size) =>
                        {
                            if (!IsExistPage(guid, true))
                            {
@@ -1511,7 +1511,7 @@
                            Modular = "DataAnalysis",
                            MoudingType = eMoudingType.Tab,
                            Function = "EnergyAnalysis",
                        }, svgImgItem32[4], new Size(18, 18), (caption, guid, svg, size) =>
                        }, svgImageIBox[14], new Size(18, 18), (caption, guid, svg, size) =>
                        {
                            if (!IsExistPage(guid, true))
                            {
@@ -1528,7 +1528,7 @@
                            Modular = "DataAnalysis",
                            MoudingType = eMoudingType.Tab,
                            Function = "FlowPressAnalysis",
                        }, svgImgItem32[4], new Size(18, 18), (caption, guid, svg, size) =>
                        }, svgImageIBox[13], new Size(18, 18), (caption, guid, svg, size) =>
                        {
                            if (!IsExistPage(guid, true))
                            {
@@ -1546,7 +1546,7 @@
                            Modular = "DataAnalysis",
                            MoudingType = eMoudingType.Tab,
                            Function = "EndPressAnalysis",
                        }, svgImgItem32[4], new Size(18, 18), (caption, guid, svg, size) =>
                        }, svgImageIBox[12], new Size(18, 18), (caption, guid, svg, size) =>
                        {
                            if (!IsExistPage(guid, true))
                            {
@@ -1855,7 +1855,7 @@
                            AllowGlyphSkinning = true,
                            Elements = new List<AccordionElement>()
                            {
                                Get("水力场景", new PageGuid()
                         Get("水力场景", new PageGuid()
                        {
                            Modular = "ModelManage",
                            MoudingType = eMoudingType.Tab,
Desktop/PBS.Desktop/MainForm.resx
@@ -353,6 +353,9 @@
  <metadata name="documentManager1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    <value>17, 17</value>
  </metadata>
  <metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>101</value>
  </metadata>
  <metadata name="dockManager1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    <value>259, 17</value>
  </metadata>
@@ -1721,6 +1724,43 @@
        Pg0KPC9zdmc+Cw==
</value>
  </data>
  <data name="svgImgItem32.电费" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40
        LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
        dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAAQHAAAC77u/
        PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgd2lkdGg9IjIwMHB4IiBo
        ZWlnaHQ9IjIwMHB4IiB2aWV3Qm94PSIwIDAgMTAyNCAxMDI0IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJo
        dHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5
        OTkveGxpbmsiIGNsYXNzPSJpY29uIj4NCiAgPHBhdGggZD0iTTU1NC42NjY2NjcgNTEydjQyLjY2NjY2
        N2g2NGMxMi44IDAgMjEuMzMzMzMzIDguNTMzMzMzIDIxLjMzMzMzMyAyMS4zMzMzMzNzLTguNTMzMzMz
        IDIxLjMzMzMzMy0yMS4zMzMzMzMgMjEuMzMzMzMzSDU1NC42NjY2Njd2NjRjMCAxMi44LTguNTMzMzMz
        IDIxLjMzMzMzMy0yMS4zMzMzMzQgMjEuMzMzMzM0cy0yMS4zMzMzMzMtOC41MzMzMzMtMjEuMzMzMzMz
        LTIxLjMzMzMzNFY1OTcuMzMzMzMzaC02NGMtMTIuOCAwLTIxLjMzMzMzMy04LjUzMzMzMy0yMS4zMzMz
        MzMtMjEuMzMzMzMzczguNTMzMzMzLTIxLjMzMzMzMyAyMS4zMzMzMzMtMjEuMzMzMzMzSDUxMlY1MTJo
        LTY0Yy0xMi44IDAtMjEuMzMzMzMzLTguNTMzMzMzLTIxLjMzMzMzMy0yMS4zMzMzMzNzOC41MzMzMzMt
        MjEuMzMzMzMzIDIxLjMzMzMzMy0yMS4zMzMzMzRoNTUuNDY2NjY3bC00Ni45MzMzMzQtNDYuOTMzMzMz
        Yy04LjUzMzMzMy04LjUzMzMzMy04LjUzMzMzMy0yMS4zMzMzMzMgMC0yOS44NjY2NjdzMjEuMzMzMzMz
        LTguNTMzMzMzIDI5Ljg2NjY2NyAwbDQ2LjkzMzMzMyA0Ni45MzMzMzQgNDYuOTMzMzM0LTQ2LjkzMzMz
        NGM4LjUzMzMzMy04LjUzMzMzMyAyMS4zMzMzMzMtOC41MzMzMzMgMjkuODY2NjY2IDAgOC41MzMzMzMg
        OC41MzMzMzMgOC41MzMzMzMgMjEuMzMzMzMzIDAgMjkuODY2NjY3TDU2My4yIDQ2OS4zMzMzMzNoNTUu
        NDY2NjY3YzEyLjggMCAyMS4zMzMzMzMgOC41MzMzMzMgMjEuMzMzMzMzIDIxLjMzMzMzNHMtOC41MzMz
        MzMgMjEuMzMzMzMzLTIxLjMzMzMzMyAyMS4zMzMzMzNINTU0LjY2NjY2N3ogbTM4NCAwYzAgMjM0LjY2
        NjY2Ny0xOTIgNDI2LjY2NjY2Ny00MjYuNjY2NjY3IDQyNi42NjY2NjdTODUuMzMzMzMzIDc0Ni42NjY2
        NjcgODUuMzMzMzMzIDUxMiAyNzcuMzMzMzMzIDg1LjMzMzMzMyA1MTIgODUuMzMzMzMzdjEyOGMtMTY2
        LjQgMC0yOTguNjY2NjY3IDEzMi4yNjY2NjctMjk4LjY2NjY2NyAyOTguNjY2NjY3czEzMi4yNjY2Njcg
        Mjk4LjY2NjY2NyAyOTguNjY2NjY3IDI5OC42NjY2NjcgMjk4LjY2NjY2Ny0xMzIuMjY2NjY3IDI5OC42
        NjY2NjctMjk4LjY2NjY2N2gxMjh6IG0tNDYuOTMzMzM0IDQyLjY2NjY2N2gtNDIuNjY2NjY2Yy0yMS4z
        MzMzMzMgMTY2LjQtMTY2LjQgMjk4LjY2NjY2Ny0zMzcuMDY2NjY3IDI5OC42NjY2NjYtMTg3LjczMzMz
        MyAwLTM0MS4zMzMzMzMtMTUzLjYtMzQxLjMzMzMzMy0zNDEuMzMzMzMzQzE3MC42NjY2NjcgMzM3LjA2
        NjY2NyAzMDIuOTMzMzMzIDE5Ni4yNjY2NjcgNDY5LjMzMzMzMyAxNzQuOTMzMzMzdi00Mi42NjY2NjZD
        Mjc3LjMzMzMzMyAxNTMuNiAxMjggMzE1LjczMzMzMyAxMjggNTEyYzAgMjEzLjMzMzMzMyAxNzAuNjY2
        NjY3IDM4NCAzODQgMzg0IDE5Ni4yNjY2NjcgMCAzNTguNC0xNDkuMzMzMzMzIDM3OS43MzMzMzMtMzQx
        LjMzMzMzM3ogbS04OS42LTEwNi42NjY2NjdsMTIzLjczMzMzNC0yOS44NjY2NjdDODkxLjczMzMzMyAy
        NTYgNzYzLjczMzMzMyAxMjggNjAxLjYgOTMuODY2NjY3bC0yOS44NjY2NjcgMTIzLjczMzMzM2MxMTku
        NDY2NjY3IDI5Ljg2NjY2NyAyMDQuOCAxMTUuMiAyMzAuNCAyMzAuNHoiIC8+DQo8L3N2Zz4L
</value>
  </data>
  <metadata name="svgImgGroup32.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    <value>455, 17</value>
  </metadata>
@@ -1800,7 +1840,7 @@
</value>
  </data>
  <metadata name="svgImageIBox.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    <value>823, 17</value>
    <value>848, 16</value>
  </metadata>
  <data name="svgImageIBox.参数配置" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
@@ -2226,6 +2266,70 @@
        IC8+DQo8L3N2Zz4L
</value>
  </data>
  <data name="svgImageIBox.供水压力分析" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40
        LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
        dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAIMFAAAC77u/
        PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgd2lkdGg9IjIwMHB4IiBo
        ZWlnaHQ9IjIwMHB4IiB2aWV3Qm94PSIwIDAgMTAyNCAxMDI0IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJo
        dHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5
        OTkveGxpbmsiIGNsYXNzPSJpY29uIj4NCiAgPHBhdGggZD0iTTkzMS40NCA3ODYuMTJINzk1Ljc5YTMy
        IDMyIDAgMCAxIDAtNjRoMTM1LjY1YTMyIDMyIDAgMCAxIDAgNjR6TTIzNi4xNyA3ODYuMTJIMTAwYTMy
        IDMyIDAgMCAxIDAtNjRoMTM2LjE3YTMyIDMyIDAgMSAxIDAgNjR6TTUxNiA3NjguNDdBMjI0LjQ1IDIy
        NC40NSAwIDAgMSAyOTEuNTMgNTQ0YzAtNDkuNjcgMzIuNTQtMTQwLjU2IDk5LjQ2LTI3Ny44OSA0OC05
        OC40NCA5Ni42Mi0xODUgOTcuMS0xODUuODRhMzIgMzIgMCAwIDEgNTUuNzcgMGMwLjQ5IDAuODYgNDku
        MTMgODcuNCA5Ny4xIDE4NS44NCA2Ni45MyAxMzcuMzYgOTkuNDYgMjI4LjI1IDk5LjQ2IDI3Ny44OUEy
        MjQuNDUgMjI0LjQ1IDAgMCAxIDUxNiA3NjguNDd6IG0wLTYwNS43NWMtMTguMTYgMzMuODMtNDMgODEu
        MTktNjcuNTkgMTMxLjcyQzM2Ny42IDQ2MC4yNyAzNTUuNTMgNTIyIDM1NS41MyA1NDRjMCA4OC40NyA3
        MiAxNjAuNDQgMTYwLjQ1IDE2MC40NFM2NzYuNDIgNjMyLjUgNjc2LjQyIDU0NGMwLTIyLTEyLjA2LTgz
        Ljc2LTkyLjg2LTI0OS41OS0yNC42Mi01MC41LTQ5LjQzLTk3Ljg2LTY3LjU2LTEzMS42OXoiIGZpbGw9
        IiNGRjNFM0UiIC8+DQogIDxwYXRoIGQ9Ik01MTYgOTYwYy04NS45MyAwLTE2Ni45NC0yOC41Ny0yMjgu
        MTItODAuNDUtMzAuMjYtMjUuNjYtNTQuMDgtNTUuNjctNzAuOC04OS4xOGEyNDYuOTQgMjQ2Ljk0IDAg
        MCAxLTI2LjQyLTExMS4xMSAzMiAzMiAwIDAgMSA2NCAwQzI1NC42NCA3OTguNzcgMzcxLjg4IDg5NiA1
        MTYgODk2czI2MS4zMy05Ny4yMyAyNjEuMzMtMjE2Ljc0YTMyIDMyIDAgMCAxIDY0IDAgMjQ2Ljk0IDI0
        Ni45NCAwIDAgMS0yNi40MiAxMTEuMTFjLTE2LjcyIDMzLjUyLTQwLjU0IDYzLjUyLTcwLjggODkuMThD
        NjgyLjkxIDkzMS40MyA2MDEuOSA5NjAgNTE2IDk2MHpNNTE2IDYxMS4yMWE1My42MSA1My42MSAwIDAg
        MS0zOC4xNi0xNS44bC03MC4zNC03MC4zNWEzMiAzMiAwIDEgMSA0NS4yNS00NS4yNUw1MTYgNTQzLjA1
        bDYzLjI0LTYzLjI0YTMyIDMyIDAgMSAxIDQ1LjI2IDQ1LjI1bC03MC4zNSA3MC4zNWE1My42IDUzLjYg
        MCAwIDEtMzguMTUgMTUuOHoiIGZpbGw9IiNGRjNFM0UiIC8+DQogIDxwYXRoIGQ9Ik01MTYgNTgyYTMy
        IDMyIDAgMCAxLTMyLTMyVjM4Ni40YTMyIDMyIDAgMCAxIDY0IDBWNTUwYTMyIDMyIDAgMCAxLTMyIDMy
        eiIgZmlsbD0iI0ZGM0UzRSIgLz4NCjwvc3ZnPgs=
</value>
  </data>
  <data name="svgImageIBox.对比分析" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40
        LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
        dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAANcBAAAC77u/
        PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgd2lkdGg9IjIwMHB4IiBo
        ZWlnaHQ9IjIwMHB4IiB2aWV3Qm94PSIwIDAgMTAyNCAxMDI0IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJo
        dHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5
        OTkveGxpbmsiIGNsYXNzPSJpY29uIj4NCiAgPHBhdGggZD0iTTc3LjcxNDI4NTk0IDE2OS4xNDI4NTY4
        OGg4NjguNTcxNDI4MTJ2Njg1LjcxNDI4NjI1SDc3LjcxNDI4NTk0VjE2OS4xNDI4NTY4OHogbTQzMiA4
        NS43MTQyODYyNHY1MTQuMjg1NzEzNzVoMzQ5LjcxNDI4NTMxVjI1NC44NTcxNDMxMkg1MDkuNzE0Mjg1
        OTR6IiBmaWxsPSIjMzMzMzMzIiAvPg0KICA8cGF0aCBkPSJNNDQzLjQyODU3MTU2IDMyaDkxLjQyODU3
        MDk0djk2MEg0NDMuNDI4NTcxNTZ6IiBmaWxsPSIjMzMzMzMzIiAvPg0KPC9zdmc+Cw==
</value>
  </data>
  <data name="svgImageIBox.能耗分析 (1)" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40
        LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl
        dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAGQCAAAC77u/
        PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgd2lkdGg9IjIwMHB4IiBo
        ZWlnaHQ9IjIwMHB4IiB2aWV3Qm94PSIwIDAgMTAyNCAxMDI0IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJo
        dHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5
        OTkveGxpbmsiIGNsYXNzPSJpY29uIj4NCiAgPHBhdGggZD0iTTk5My45NzEgNDEzLjAzbC0yMy44MTMt
        MTguNjY2IDAuMTU2LTAuMjczTDUxMy42NTYgNi4yOFY2LjE0bC0wLjExNyAwLjA0LTAuMDQtMC4wNHYw
        LjE0MUw1Ni44NDUgMzk0LjA5MWwwLjE5NiAwLjI3My0yMy43MzYgMTguNjY3LTE1LjcxOCAxMi4yNTd2
        OTMuMTEzaDg2Ljc2N3Y0OTguODgxSDkyMi45NlY1MTguNGg4Ni43Mjd2LTkzLjExM2wtMTUuNzE3LTEy
        LjI1NnpNODQxLjUwMyA5NDAuMjJIMTg1LjczNFY0MDEuMzM4TDUxMy41NCAxMTQuNzkybDMyNy45NjMg
        Mjg2LjU0NlY5NDAuMjJ6TTQ1My40MTkgMzU3LjU2MmwtMTE4LjcxMyAyNjcuMjdoMTAyLjUyMWwtNzIu
        ODUyIDI2Ny4yOUw2NjEuMjEyIDU2NS40Mkg1NTIuMzY1TDY5MC44OCAzNTcuNTYyaC0yMzcuNDZ6IiAv
        Pg0KPC9zdmc+Cw==
</value>
  </data>
  <metadata name="svgImageHome.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    <value>17, 58</value>
  </metadata>
HStation.Xhs.Core.sdf
Binary files differ
WinFrmUI/PBS.WinFrmUI.Hydro/03-model-edit/00-core/ModelEditPage.cs
@@ -4,7 +4,7 @@
{
    public partial class ModelEditPage : DocumentPage
    {
        public ModelEditPage()
        public ModelEditPage()
        { 
            InitializeComponent();
            this.facilityTreeListCtrl1.SelectFacilityEvent += FacilityTreeListCtrl1_SelectFacilityEvent;
@@ -18,6 +18,7 @@
        private PropertyForm _propertyForm;
        private bool _isInitial = false;
        /// <summary>
        /// 初始化数据源
        /// </summary>
WinFrmUI/PBS.WinFrmUI.Hydro/05-system-curve/02-chart/DynamicThresholdProcessor.cs
@@ -1,22 +1,18 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace PBS.WinFrmUI.Hydro
namespace PBS.WinFrmUI.Hydro
{
    public class DynamicThresholdProcessor
    {
    {
        public static List<Yw.Geometry.Point2d> FilterWithDynamicSigma(List<Yw.Geometry.Point2d> rawData)
        {
            return ProcessGroup(rawData);
        }
        private static List<Yw.Geometry.Point2d> ProcessGroup(List<Yw.Geometry.Point2d> group)
         {
        {
            const int minSize = 3;
            if (group.Count < minSize)
            if (group.Count < minSize)
                return group;
            var pressures = group.Select(p => p.Y).ToList();
@@ -24,24 +20,24 @@
            // 计算统计量
            var (mean, stdDev) = CalculateStats(pressures);
            double skewness = CalculateSkewness(pressures);
            if (group.Count > 5)
            {
            }
            // 动态调整σ倍数
            double sigmaMultiplier = CalculateSigmaMultiplier(skewness);
            if (sigmaMultiplier==3)
            {
            }
            // 计算边界
            double lower = mean - sigmaMultiplier * stdDev;
            double upper = mean + sigmaMultiplier * stdDev;
            return group.Where(p => p.Y >= lower && p.Y <= upper).ToList();
        }
        // 核心统计计算
        private static (double mean, double stdDev) CalculateStats(List<double> values)
@@ -50,6 +46,7 @@
            double stdDev = Math.Sqrt(values.Sum(v => Math.Pow(v - mean, 2)) / (values.Count - 1));
            return (mean, stdDev);
        }
        // 偏度计算(Pearson's moment coefficient)
        private static double CalculateSkewness(List<double> values)
@@ -60,10 +57,10 @@
            return (sum * values.Count) / ((values.Count - 1) * (values.Count - 2));
        }
        // 动态σ倍数计算规则
        private static double CalculateSigmaMultiplier(double skewness)
        {
        {
            return skewness switch
            {
                > 1.0 => 2.0,    // 强正偏态
@@ -74,5 +71,6 @@
            };
        }
    }
}
WinFrmUI/PBS.WinFrmUI.Hydro/05-system-curve/02-chart/SystemCurveChartCtrl.cs
@@ -1,7 +1,5 @@
using DevExpress.CodeParser;
using DevExpress.Utils;
using DevExpress.Utils;
using DevExpress.XtraCharts;
using System.Linq;
using Yw.WinFrmUI.Phart;
namespace PBS.WinFrmUI.Hydro
WinFrmUI/PBS.WinFrmUI/03-elecPrice/AddElectricDlg.cs
@@ -103,7 +103,7 @@
                   return;
               }*/
            Eleprice.EndMonth = Endmonth;
            Eleprice.HourList = _allBindingList.ToList();        //把绑定列表的值赋给hourlist
            Eleprice.HourList = _allBindingList.ToList();
            var isok = await this.ReloadDataEvent.Invoke(Eleprice);
            if (isok == false)
            {
@@ -111,7 +111,7 @@
                return;
            }
            XtraMessageBox.Show("添加成功");
            this.DialogResult = System.Windows.Forms.DialogResult.OK;       //确定ok,然后关闭
            this.DialogResult = System.Windows.Forms.DialogResult.OK;
            this.Close();
        }
WinFrmUI/PBS.WinFrmUI/03-elecPrice/ElecPriceMgr.cs
@@ -60,11 +60,12 @@
                        }
                    }
                }
                else
                {
                    _elecPrice.Settings = new Vmo.ElecPriceSetting();
                    _elecPrice.Settings.MonthList = new List<Vmo.ElecPriceMonthSetting> { new Vmo.ElecPriceMonthSetting() };
                }
            }
            else
            {
                _elecPrice = new Vmo.ElecPriceVmo();
                _elecPrice.Settings = new Vmo.ElecPriceSetting();
                _elecPrice.Settings.MonthList = new List<Vmo.ElecPriceMonthSetting>();
            }
            this.elecPriceViewModelBindingSource.DataSource = _allBindingList;
            this.elecPriceViewModelBindingSource.ResetBindings(false);
@@ -80,6 +81,27 @@
            {
                var bll = new BLL.ElecPrice();
                _elecPrice.Settings.MonthList.Add(price);
                if (_elecPrice.ID == 0)
                {
                    var id = await bll.Insert(_elecPrice);
                    if (id > 0)
                    {
                        _elecPrice.ID = id;
                        foreach (var item in price.HourList)
                        {
                            this._allBindingList.Add(new ElecPriceViewModel
                            {
                                BelongName = $"{price.StartMonth}~{price.EndMonth}(月)",
                                StartHour = item.StartHour,
                                EndHour = item.EndHour,
                                Price = item.Price
                            });
                        }
                        this.elecPriceViewModelBindingSource.ResetBindings(false);
                        return true;
                    }
                    return false;
                }
                var bol = await bll.Update(_elecPrice);
                if (bol)
                {
WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/04-special/01-operation/PumpOperationChart.cs
@@ -367,9 +367,17 @@
                return;
            }
            var equip_pt_list = Yw.Pump.PerformParabolaHelper.GetEquipCurvePointListByQH(_vm.CurveQH.GetPerformCurve(Yw.Ahart.eCurveType.QH, _feat_type_qh), _equip_pt, start_head.Value, 30, true, out Yw.Geometry.Point2d sect_pt);
            if (equip_pt_list == null || sect_pt == null)
            var temp_curve = _vm.CurveQH.GetPerformCurve(Yw.Ahart.eCurveType.QH, _feat_type_qh);
            var equip_pt_list = Yw.Pump.PerformParabolaHelper.GetEquipCurvePointListByQH(temp_curve, _equip_pt, start_head.Value, 30, true, out Yw.Geometry.Point2d sect_pt);
            if (equip_pt_list == null || !equip_pt_list.Any())
                return;
            if (equip_pt_list.Exists(x=>x.IsInvalid()))
                return;
            if (sect_pt==null)
                return;
            double flow = 0, head = 0;
WinFrmUI/Yw.WinFrmUI.Phart.Core/01-pump/04-special/02-working-view/PumpWorkingViewChart.cs
@@ -445,8 +445,12 @@
                {
                    var qh_pt_list = vm.CurveQH.GetPointList(_feat_type_qh);
                    var max_ratio = vm.Q / qh_pt_list.Max(x => x.X) * 1.05;
                    {
                    {
                        qh_pt_list = qh_pt_list.GetExpandPointList(_feat_type_qh, 1, max_ratio);
                        if (qh_pt_list == null || !qh_pt_list.Any())
                        {
                            continue;
                        }
                        var xxx = qh_pt_list.Select(x => x.X);
                        var yyy = qh_pt_list.Select(x => x.Y);