From d6fb0646531172f23648441c224cdcccd721b894 Mon Sep 17 00:00:00 2001
From: xm <1271024303@qq.com>
Date: 星期一, 14 十二月 2020 09:59:01 +0800
Subject: [PATCH] 请合并代码,完成晾衣架最终功能。

---
 ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceHistoryFirmwareVersionForm.cs |  126 ++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 126 insertions(+), 0 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceHistoryFirmwareVersionForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceHistoryFirmwareVersionForm.cs
new file mode 100755
index 0000000..335fd9b
--- /dev/null
+++ b/ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceHistoryFirmwareVersionForm.cs
@@ -0,0 +1,126 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Text;
+using ZigBee.Device;
+
+namespace Shared.Phone.UserCenter.Device
+{
+    /// <summary>
+    /// 璁惧鐨勫巻鍙茬増鏈�
+    /// </summary>
+    public class DeviceHistoryFirmwareVersionForm : EditorCommonForm
+    {
+        /// <summary>
+        /// 鍗囩骇鐨勮澶�
+        /// </summary>
+        private List<CommonDevice> listUpdateDevice = null;
+        /// <summary>
+        /// 鍒楄〃鎺т欢
+        /// </summary>
+        private VerticalListControl listView = null;
+        /// <summary>
+        /// 鍥轰欢閫夋嫨鐨勪簨浠�
+        /// </summary>
+        public Action<FirmwareVersionInfo> SelectFirmwareInfoEvent = null;
+
+        /// <summary>
+        /// 鐢婚潰鏄剧ず(搴曞眰浼氬浐瀹氳皟鐢ㄦ鏂规硶锛屽�熶互瀹屾垚鐢婚潰鍒涘缓)
+        /// </summary>
+        /// <param name="deviceMac">璁惧Mac鍦板潃</param>
+        public void ShowForm(string deviceMac)
+        {
+            this.listUpdateDevice = Common.LocalDevice.Current.GetDevicesByMac(deviceMac);
+
+            //璁剧疆鏍囬淇℃伅
+            base.SetTitleText(Language.StringByID(R.MyInternationalizationString.uHistoryVersion));
+
+            //鍒濆鍖栦腑閮ㄦ帶浠�
+            this.InitMiddleFrame();
+        }
+
+        /// <summary>
+        /// 鍒濆鍖栦腑閮ㄦ帶浠�
+        /// </summary>
+        private void InitMiddleFrame()
+        {
+            //娓呯┖bodyFrame
+            this.ClearBodyFrame();
+
+            listView = new VerticalListControl(12);
+            listView.Height = bodyFrameLayout.Height;
+            listView.BackgroundColor = UserCenterColor.Current.White;
+            bodyFrameLayout.AddChidren(listView);
+
+            //鎷ユ湁200绔彛杩欎釜涓滆タ鐨勬椂鍊欙紝鎵嶄細鏄剧ず
+            var oTADevice = Common.LocalDevice.Current.GetOTADevice(listUpdateDevice[0].DeviceAddr);
+            if (oTADevice == null || oTADevice.ImgVersion == -1)
+            {
+                return;
+            }
+
+            //鑾峰彇鍘嗗彶鐗堟湰
+            var listData = HdlFirmwareUpdateLogic.GetFirmwareVersionListInfo(FirmwareLevelType.A璁惧,
+                oTADevice.HwVersion.ToString(),
+                oTADevice.ImgTypeId.ToString());
+
+            string unSelectPic = string.Empty;
+            string selectPic = string.Empty;
+            Common.LocalDevice.Current.GetDeviceObjectIcon(listUpdateDevice, ref unSelectPic, ref selectPic);
+
+            HdlThreadLogic.Current.RunThread(() =>
+            {
+                string ImagType = oTADevice.ImgTypeId.ToString();
+                HdlThreadLogic.Current.RunMain(() =>
+                {
+                    foreach (var data in listData)
+                    {
+                        if (data.ImagType == ImagType && oTADevice.ImgVersion == data.FirmwareVersion)
+                        {
+                            //鍚屼竴涓笢瑗匡紝涓嶆樉绀哄嚭鏉�
+                            continue;
+                        }
+                        this.AddRowlayout(data, unSelectPic, selectPic);
+                    }
+                });
+            });
+        }
+
+        /// <summary>
+        /// 娣诲姞琛�
+        /// </summary>
+        /// <param name="info"></param>
+        /// <param name="unSelPath"></param>
+        /// <param name="selPath"></param>
+        private void AddRowlayout(FirmwareVersionInfo info, string unSelPath, string selPath)
+        {
+            var rowlayout = new FrameRowControl(listView.rowSpace / 2);
+            listView.AddChidren(rowlayout);
+            //鍥炬爣
+            var btnIcon = rowlayout.AddLeftIcon();
+            btnIcon.UnSelectedImagePath = unSelPath;
+            //鎸囧畾鐨勮澶�
+            rowlayout.AddTopView(info.ShowName, 800);
+            //鍚戝彸鐨勫浘鏍�
+            rowlayout.AddRightArrow();
+            //鍥轰欢淇℃伅
+            string firmwareText = Common.LocalDevice.Current.AppendVersion(info.FirmwareVersion);
+            firmwareText += "        " + UserCenterLogic.ConvertUtcTimeToLocalTime(info.CreatedOnUtc).ToString("yyyy/MM/dd HH:mm:ss");
+            rowlayout.AddBottomView(firmwareText, 800);
+            //搴曠嚎
+            rowlayout.AddBottomLine();
+
+            rowlayout.ButtonClickEvent += (sender, e) =>
+            {
+                string mainKeys = Common.LocalDevice.Current.GetDeviceMainKeys(this.listUpdateDevice[0]);
+                if (FirmwareUpdateResourse.dicUpdateList.ContainsKey(mainKeys) == true)
+                {
+                    this.CloseForm();
+                    return;
+                }
+                SelectFirmwareInfoEvent?.Invoke(info);
+                SelectFirmwareInfoEvent = null;
+                this.CloseForm();
+            };
+        }
+    }
+}

--
Gitblit v1.8.0