lixiaojun
2023-04-12 fc6b7c9852f18e42fb9bccaf0cc22fbe5389d179
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
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace IStation.Service
{
    public static class MonitorPointSignalViewExtensions
    {
        /// <summary>
        /// 获取记录值类型
        /// </summary>
        /// <param name="signal"></param>
        /// <returns></returns>
        public static Model.eGeneralRecordValueType GetRecordValueType(this Model.GeneralMonitorPoint signal)
        {
            if (signal == null)
                return Model.eGeneralRecordValueType.数值;
            return new GeneralRecordType().GetValueTypeByIdentifier(signal.RecordType);
        }
 
        /// <summary>
        /// 获取记录单位类型
        /// </summary>
        /// <param name="signal"></param>
        /// <returns></returns>
        public static Model.eUnitType GetRecordUnitType(this Model.GeneralMonitorPoint signal)
        {
            if (signal == null)
                return Model.eUnitType.未知;
            return new GeneralRecordType().GetUnitTypeByIdentifier(signal.RecordType);
        }
 
        public static string GetRecordUnitName(this Model.GeneralMonitorPoint signal)
        {
            if (signal == null)
                return default;
            var record = new GeneralRecordType().GetByIdentifier(signal.RecordType);
            if (record == null)
                return default;
            var unitType = record.UnitType;
            if (unitType == Model.eUnitType.未知 || unitType == Model.eUnitType.自定义)
                return record.UnitValue;
            return Model.GeneralRecordUnitHelper.GetUnitEnDisp(unitType,int.Parse(record.UnitValue));
        }
 
        /// <summary>
        /// 获取记录枚举值字典
        /// </summary>
        /// <param name="signal"></param>
        /// <returns></returns>
        public static Dictionary<int, string> GetRecordEnumValueDict(this Model.GeneralMonitorPoint signal)
        {
            if (signal == null)
                return default;
            var dict = new GeneralRecordType().GetEnumDisplayDict(signal.RecordType);
            return dict;
        }
 
 
    }
}