黄学彪
2020-12-16 0d9f64668fd7350d6a21fd157e32009a96d98134
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
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
using System;
using System.Collections.Generic;
using System.Text;
 
namespace Shared.Phone.UserCenter.Device
{
    /// <summary>
    /// 设备通用信息界面
    /// </summary>
    public class DeviceGeneralInformationForm : EditorCommonForm
    {
        #region ■ 变量声明___________________________
 
        #endregion
 
        #region ■ 初始化_____________________________
 
        /// <summary>
        /// 画面显示(底层会固定调用此方法,借以完成画面创建)
        /// </summary>
        /// <param name="i_deviceMac">设备MAC地址</param>
        public void ShowForm(string i_deviceMac)
        {
            //设置头部信息
            base.SetTitleText(Language.StringByID(R.MyInternationalizationString.uGeneralInformation));
 
            //初始化中部信息
            this.InitMiddleFrame(i_deviceMac);
        }
 
        /// <summary>
        /// 初始化中部信息
        /// </summary>
        /// <param name="i_deviceMac">设备MAC地址</param>
        private void InitMiddleFrame(string i_deviceMac)
        {
            //清空bodyFrame
            this.ClearBodyFrame();
 
            var listDevice = HdlDeviceCommonLogic.Current.GetDevicesByMac(i_deviceMac);
            var oTADevice = HdlDeviceCommonLogic.Current.GetOTADevice(i_deviceMac);
            if (listDevice.Count == 0)
            {
                //针对单纯只有一个200端点的设备
                listDevice.Add(oTADevice);
            }
 
            var listView = new VerticalListControl(12);
            listView.BackgroundColor = UserCenterColor.Current.White;
            listView.Height = bodyFrameLayout.Height;
            bodyFrameLayout.AddChidren(listView);
 
            //设备名称
            var myInfoType = HdlDeviceCommonLogic.Current.GetMyDeviceEnumInfo(listDevice);
            var rowName = new FrameRowControl(listView.rowSpace / 2);
            rowName.UseClickStatu = false;
            listView.AddChidren(rowName);
            rowName.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uDeviceName), 400);
            if (HdlDeviceCommonLogic.Current.IsMiniLight(listDevice[0]) == true)
            {
                //mini夜灯
                rowName.AddMostRightView(Language.StringByID(R.MyInternationalizationString.uMiniNightLight), 600);
            }
            else
            {
                rowName.AddMostRightView(myInfoType.ConcreteText, 600);
            }
            rowName.AddBottomLine();
 
            //设备型号
            string strModel = listDevice[0].DriveCode > 0 ? Language.StringByID(R.MyInternationalizationString.uVirtualDriveDevice) : listDevice[0].ModelIdentifier;
            if (strModel == string.Empty)
            {
                //无法识别
                strModel = Language.StringByID(R.MyInternationalizationString.uUnDistinguish);
            }
            var rowType = new FrameRowControl(listView.rowSpace / 2);
            rowType.UseClickStatu = false;
            listView.AddChidren(rowType);
            rowType.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uModelIdentifier), 400);
            rowType.AddMostRightView(strModel, 600);
            rowType.AddBottomLine();
 
            //镜像ID
            var otaDevice = HdlDeviceCommonLogic.Current.GetOTADevice(listDevice[0].DeviceAddr);
            if (otaDevice != null)
            {
                var rowImage = new FrameRowControl(listView.rowSpace / 2);
                rowImage.UseClickStatu = false;
                listView.AddChidren(rowImage);
                rowImage.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uImageId), 400);
                rowImage.AddMostRightView(otaDevice.ImgTypeId.ToString(), 400);
                rowImage.AddBottomLine();
            }
 
            if (oTADevice != null)
            {
                //固件版本
                var rowVersion = new FrameRowControl(listView.rowSpace / 2);
                rowVersion.UseClickStatu = false;
                listView.AddChidren(rowVersion);
                rowVersion.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uFirmwareVersion), 400);
                rowVersion.AddMostRightView(HdlDeviceCommonLogic.Current.AppendVersion(oTADevice.ImgVersion), 600);
                rowVersion.AddBottomLine();
 
                //硬件版本
                var rowHard = new FrameRowControl(listView.rowSpace / 2);
                rowHard.UseClickStatu = false;
                listView.AddChidren(rowHard);
                rowHard.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uHardwareVersion), 400);
                rowHard.AddMostRightView(oTADevice.HwVersion.ToString(), 600);
                rowHard.AddBottomLine();
            }
 
            //序列号
            var rowSerial = new FrameRowControl(listView.rowSpace / 2);
            rowSerial.UseClickStatu = false;
            listView.AddChidren(rowSerial);
            rowSerial.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uSerialNumber), 400);
            if (HdlDeviceCommonLogic.Current.IsHdlDevice(listDevice[0]) == false)
            {
                //第三方设备固定使用Mac
                rowSerial.AddMostRightView(listDevice[0].DeviceAddr, 600);
            }
            else
            {
                rowSerial.AddMostRightView(listDevice[0].SerialNumber != string.Empty ? listDevice[0].SerialNumber : listDevice[0].DeviceAddr, 600);
            }
            rowSerial.AddBottomLine();
 
            //MAC
            var rowMac = new FrameRowControl(listView.rowSpace / 2);
            rowMac.UseClickStatu = false;
            listView.AddChidren(rowMac);
            rowMac.AddLeftCaption("MAC", 300);
            rowMac.AddMostRightView(listDevice[0].DeviceAddr, 600);
            rowMac.AddBottomLine();
 
            //制造商
            string strProtuct = listDevice[0].ManufacturerName;
            if (listDevice[0].DriveCode > 0 || HdlDeviceCommonLogic.Current.IsHdlDevice(listDevice[0]) == true)
            {
                strProtuct = "广州河东科技有限公司";
            }
            var rowProtuct = new FrameRowControl(listView.rowSpace / 2);
            rowProtuct.UseClickStatu = false;
            listView.AddChidren(rowProtuct);
            rowProtuct.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uManufacturerName), 600);
            rowProtuct.AddMostRightView(strProtuct, 600);
 
            listView.AdjustRealHeight(Application.GetRealHeight(23));
        }
 
        #endregion
    }
}