duheng
2025-03-28 9be9ba4e159969fb5e32648c2c34e912ccc3ae6d
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
namespace Yw.WinFrmUI
{
    /// <summary>
    /// 计算结果
    /// </summary>
    public class HydroCalcuResult
    {
        /// <summary>
        /// 
        /// </summary>
        public HydroCalcuResult()
        {
            this.Succeed = true;
            this.FailedList = new List<HydroCalcuFailed>();
            this.NodeList = new List<HydroCalcuNodeResult>();
            this.LinkList = new List<HydroCalcuLinkResult>();
            this.WainingList = new List<HydroCalcuWarning>();
        }
 
        /// <summary>
        /// 
        /// </summary>
        public HydroCalcuResult(Yw.EPAnet.CalcuResult calcuResult)
        {
            this.Succeed = calcuResult.Succeed;
            this.FailedList = calcuResult.FailedList?.Select(x => new HydroCalcuFailed(x)).ToList();
            this.NodeList = calcuResult.NodeList?.Select(x => new HydroCalcuNodeResult(x)).ToList();
            this.LinkList = calcuResult.LinkList?.Select(x => new HydroCalcuLinkResult(x)).ToList();
            this.WainingList = new List<HydroCalcuWarning>();
            this.EPAnetCalcuResult = calcuResult;
        }
 
        /// <summary>
        /// 是否成功
        /// </summary>
        public bool Succeed { get; set; }
 
        /// <summary>
        /// 失败列表
        /// </summary>
        public List<HydroCalcuFailed> FailedList { get; set; }
 
        /// <summary>
        /// 节点列表
        /// </summary>
        public List<HydroCalcuNodeResult> NodeList { get; set; }
 
        /// <summary>
        /// 管段列表
        /// </summary>
        public List<HydroCalcuLinkResult> LinkList { get; set; }
 
        /// <summary>
        /// 警告列表
        /// </summary>
        public List<HydroCalcuWarning> WainingList { get; set; }
 
        /// <summary>
        /// EPAnet 计算结果
        /// </summary>
        public Yw.EPAnet.CalcuResult EPAnetCalcuResult { get; set; }
 
        /// <summary>
        /// 获取可见列表
        /// </summary>
        public List<HydroCalcuVisualResult> GetVisualList()
        {
            var list = new List<HydroCalcuVisualResult>();
            this.NodeList?.ForEach(x => list.Add(x));
            this.LinkList?.ForEach(x => list.Add(x));
            return list;
        }
 
        /// <summary>
        /// 获取可见字典
        /// </summary>
        public Dictionary<string, HydroCalcuVisualResult> GetVisualDict()
        {
            var allVisualList = GetVisualList();
            var dict = new Dictionary<string, HydroCalcuVisualResult>();
            allVisualList?.ForEach(x => dict.Add(x.Code, x));
            return dict;
        }
 
 
 
 
 
    }
}