From dc0309e64f02227d8e1468b7326c07955f804612 Mon Sep 17 00:00:00 2001
From: chenqiyang <1406175257@qq.com>
Date: 星期三, 22 六月 2022 11:22:18 +0800
Subject: [PATCH] 修改引用路径

---
 ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlFirmwareUpdateLogic.cs | 1593 +++++++++++++++++++++++++++++++++++-----------------------
 1 files changed, 949 insertions(+), 644 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlFirmwareUpdateLogic.cs b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlFirmwareUpdateLogic.cs
old mode 100755
new mode 100644
index 45aed43..30dd911
--- a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlFirmwareUpdateLogic.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlFirmwareUpdateLogic.cs
@@ -1,652 +1,957 @@
-锘縰sing System;
-using System.Collections.Generic;
-using System.Text;
-using ZigBee.Device;
-
-namespace Shared.Phone.UserCenter
-{
-    /// <summary>
-    /// 鍥轰欢鍗囩骇鐨勯�昏緫绫�
-    /// </summary>
-    public class HdlFirmwareUpdateLogic
-    {
-        #region 鈻� 鎵ц鍥轰欢鏇存柊_______________________
-
-        /// <summary>
-        /// 鎵ц涓嬩竴涓浐浠剁殑鏇存柊
-        /// </summary>
-        public static void DoUpdateNextFirmware()
-        {
-            //涓嬩竴涓鎵ц鏇存柊鐨勭綉鍏�
-            HdlDeviceUpdateCommonLogic gwControl = null;
-            //涓嬩竴涓鎵ц鏇存柊鐨勮澶�
-            HdlDeviceUpdateCommonLogic deviceControl = null;
-            foreach (var contr in FirmwareUpdateResourse.dicUpdateList.Values)
-            {
-                //濡傛灉鍒殑杩樺湪鍗囩骇涓�,鍒欎笉鍐嶅鐞�
-                if (contr.IsFinishUpdate == false)
-                {
-                    return;
-                }
-                //濡傛灉杩欎釜鍦ㄧ瓑寰呭垪琛ㄧ殑璇�
-                if (contr.UpdateStatu == UpdateStatuMode.Wait && gwControl == null)
-                {
-                    if (contr.ClassDiv == 1 && gwControl == null)
-                    {
-                        //涓嬩竴涓崌绾х殑灏辨槸瀹冧簡
-                        gwControl = contr;
-                    }
-                    else if (contr.ClassDiv == 2 && deviceControl == null)
-                    {
-                        //涓嬩竴涓崌绾х殑灏辨槸瀹冧簡
-                        deviceControl = contr;
-                    }
-                }
-            }
-
-            HdlThreadLogic.Current.RunThread(() =>
-            {
-                if (gwControl != null)
-                {
-                    //寮�濮嬫墽琛屾洿鏂版搷浣�
-                    gwControl.DoStartUpdate();
-                    return;
-                }
-
-                if (deviceControl != null)
-                {
-                    //寮�濮嬫墽琛屾洿鏂版搷浣�
-                    deviceControl.DoStartUpdate();
-                }
-            });
-        }
-
-        #endregion
-
-        #region 鈻� 娣诲姞鍗囩骇鍥轰欢淇℃伅___________________
-
-        /// <summary>
-        /// 娣诲姞鍗囩骇鍥轰欢淇℃伅 1:姝e父  -1:娌$綉,鑾峰彇涓嶅埌涓滆タ
-        /// </summary>
-        /// <param name="levelType">鍥轰欢闃剁骇鍒嗙被</param>
-        /// <param name="HardwareVersion">纭欢鐗堟湰</param>
-        /// <param name="imgType">闀滃儚绫诲瀷</param>
-        /// <returns></returns>
-        public static int AddFirmwareVersionInfo(FirmwareLevelType levelType, string HardwareVersion, string imgType)
-        {
-            //妫�娴嬫湰鍦版槸鍚﹀凡缁忔湁杩欎釜缂撳瓨浜�
-            if (IsEsixtFirmwareVersionInfo(levelType, HardwareVersion, imgType) == true)
-            {
-                return 1;
-            }
-            var Pra = new GetFirmwareVersionPra();
-            Pra.PageSetting.Page = 1;
-            Pra.PageSetting.PageSize = 9999;
-
-            if (levelType == FirmwareLevelType.Linux)
-            {
-                //鑾峰彇缃戝叧Linux妯″潡鍗囩骇淇℃伅
-                Pra.FirmwareManaFirstType = 1;
-                Pra.FirmwareManaSecondType = 0;
-                Pra.HardwareVersion = HardwareVersion;
-                Pra.DeviceType = imgType;
-                var result = GetFirmwareVersionAndSetToMemmory(FirmwareLevelType.Linux, Pra);
-                return result;
-            }
-            else if (levelType == FirmwareLevelType.A鍗忚皟鍣�)
-            {
-                //鍗忚皟鍣ㄦā鍧�
-                Pra.FirmwareManaFirstType = 1;
-                Pra.FirmwareManaSecondType = 1;
-                Pra.HardwareVersion = HardwareVersion;
-                Pra.DeviceType = imgType;
-                var result = GetFirmwareVersionAndSetToMemmory(FirmwareLevelType.A鍗忚皟鍣�, Pra);
-                return result;
-            }
-            else if (levelType == FirmwareLevelType.A铏氭嫙椹卞姩)
-            {
-                //铏氭嫙璁惧妯″潡
-                Pra.FirmwareManaFirstType = 1;
-                Pra.FirmwareManaSecondType = 2;
-                Pra.HardwareVersion = HardwareVersion;
-                Pra.DeviceType = imgType;
-                var result = GetFirmwareVersionAndSetToMemmory(FirmwareLevelType.A铏氭嫙椹卞姩, Pra);
-                return result;
-            }
-            else
-            {
-                //涓�鑸澶�
-                Pra.FirmwareManaFirstType = 2;
-                Pra.FirmwareManaSecondType = null;
-                Pra.HardwareVersion = HardwareVersion;
-                Pra.DeviceType = imgType;
-                var result = GetFirmwareVersionAndSetToMemmory(FirmwareLevelType.A璁惧, Pra);
-                return result;
-            }
-        }
-
-        /// <summary>
-        /// 鑾峰彇浜戠鐨勫浐浠讹紝鐒跺悗瀛樺叆缂撳瓨涓� 1:姝e父  -1:娌$綉,鑾峰彇涓嶅埌涓滆タ
-        /// </summary>
-        /// <param name="levelType"></param>
-        /// <param name="pra"></param>
+锘縰sing System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using ZigBee.Device;
+
+namespace Shared.Phone.UserCenter
+{
+    /// <summary>
+    /// 鍥轰欢鍗囩骇鐨勯�昏緫绫�
+    /// </summary>
+    public class HdlFirmwareUpdateLogic
+    {
+        #region 鈻� 鎵ц鍥轰欢鏇存柊_______________________
+
+        /// <summary>
+        /// 鎵ц涓嬩竴涓浐浠剁殑鏇存柊
+        /// </summary>
+        public static void DoUpdateNextFirmware()
+        {
+            //涓嬩竴涓鎵ц鏇存柊鐨勭綉鍏�
+            HdlDeviceUpdateCommonLogic gwControl = null;
+            //涓嬩竴涓鎵ц鏇存柊鐨勮澶�
+            HdlDeviceUpdateCommonLogic deviceControl = null;
+            foreach (var contr in FirmwareUpdateResourse.dicUpdateList.Values)
+            {
+                //濡傛灉鍒殑杩樺湪鍗囩骇涓�,鍒欎笉鍐嶅鐞�
+                if (contr.IsFinishUpdate == false)
+                {
+                    return;
+                }
+                //濡傛灉杩欎釜鍦ㄧ瓑寰呭垪琛ㄧ殑璇�
+                if (contr.UpdateStatu == UpdateStatuMode.Wait && gwControl == null)
+                {
+                    if (contr.ClassDiv == 1 && gwControl == null)
+                    {
+                        //涓嬩竴涓崌绾х殑灏辨槸瀹冧簡
+                        gwControl = contr;
+                    }
+                    else if (contr.ClassDiv == 2 && deviceControl == null)
+                    {
+                        //涓嬩竴涓崌绾х殑灏辨槸瀹冧簡
+                        deviceControl = contr;
+                    }
+                }
+            }
+
+            HdlThreadLogic.Current.RunThread(() =>
+            {
+                if (gwControl != null)
+                {
+                    //寮�濮嬫墽琛屾洿鏂版搷浣�
+                    gwControl.DoStartUpdate();
+                    return;
+                }
+
+                if (deviceControl != null)
+                {
+                    //寮�濮嬫墽琛屾洿鏂版搷浣�
+                    deviceControl.DoStartUpdate();
+                }
+            });
+        }
+
+        #endregion
+
+        #region 鈻� 娣诲姞鍗囩骇鍥轰欢淇℃伅___________________
+
+        /// <summary>
+        /// 娣诲姞鍗囩骇鍥轰欢淇℃伅 1:姝e父  -1:娌$綉,鑾峰彇涓嶅埌涓滆タ
+        /// </summary>
+        /// <param name="levelType">鍥轰欢闃剁骇鍒嗙被</param>
+        /// <param name="HardwareVersion">纭欢鐗堟湰</param>
+        /// <param name="imgType">闀滃儚绫诲瀷</param>
         /// <returns></returns>
-        private static int GetFirmwareVersionAndSetToMemmory(FirmwareLevelType levelType, GetFirmwareVersionPra pra)
-        {
-            var listCheck = new List<string> { "NotCheck" };
-            string resultValue = UserCenterLogic.GetResponseDataByRequestHttps("FirmwareMana/DetectionPlatformUploadFirmware", false, pra, listCheck, false);
-            if (string.IsNullOrEmpty(resultValue) == true)
-            {
-                return -1;
-            }
-            var verResult = Newtonsoft.Json.JsonConvert.DeserializeObject<FirmwareVersionResult>(resultValue);
-            if (verResult.PageData.Count == 0)
-            {
-                return 1;
-            }
-
-            //纭欢鐗堟湰
-            Dictionary<string, FirmwareHardInfo> dicHardData = null;
-            if (FirmwareUpdateResourse.dicFirmwareInfo.ContainsKey(levelType) == false)
-            {
-                FirmwareUpdateResourse.dicFirmwareInfo[levelType] = new Dictionary<string, FirmwareHardInfo>();
-            }
-            dicHardData = FirmwareUpdateResourse.dicFirmwareInfo[levelType];
-
-            foreach (var data in verResult.PageData)
-            {
-                //鍥轰欢鐗堟湰鏄剧ず锛�
-                //10101 3涓猙yte 鏄剧ず涓猴細ver.1.01.01
-                if (data.FirmwareVersion.Length != 6 && data.FirmwareVersion.Length != 5)
-                {
-                    //闈炴瑙勭殑鍥轰欢鐗堟湰,涓嶅啀鑰冭檻鑼冨洿鍐�
-                    continue;
-                }
-                //纭欢鍒嗙被
-                FirmwareHardInfo hardInfo = null;
-                string hardCode = data.HardwareVersion;
-                if (dicHardData.ContainsKey(hardCode) == false)
-                {
-                    //娣诲姞
-                    hardInfo = new FirmwareHardInfo();
-                    dicHardData[hardCode] = hardInfo;
-                }
-                hardInfo = dicHardData[hardCode];
-
-                //闀滃儚鍒嗙被
-                string imgType = data.DeviceType;
-                Dictionary<string, FirmwareImgTypeInfo> dicimgType = hardInfo.dicImgType;
-                FirmwareImgTypeInfo imgTypeInfo = null;
-                if (dicimgType.ContainsKey(imgType) == false)
-                {
-                    //娣诲姞
-                    imgTypeInfo = new FirmwareImgTypeInfo();
-                    dicimgType[imgType] = imgTypeInfo;
-                }
-                imgTypeInfo = dicimgType[imgType];
-
-                try
-                {
-                    //鍥轰欢鐗堟湰
-                    var info = new FirmwareVersionInfo();
-                    info.DistributedMark = data.DistributedMark;
-                    info.FirmwareVersion = Convert.ToInt32(data.FirmwareVersion);
-                    info.ShowName = data.Name;
-                    info.Name = data.Name;
-                    info.HardwareVersion = hardCode;
-                    info.ImagType = imgType;
-                    info.CreatedOnUtc = data.CreatedOnUtc;
-                    imgTypeInfo.listVeison.Add(info);
-                    //鍥轰欢鐨勪俊鎭鐞�
-                    DoAdjustFirmwareInformation(info, data.Remarks);
-                }
-                catch { continue; }
-            }
-
-            return 1;
-        }
-
+        public static int AddFirmwareVersionInfo(FirmwareLevelType levelType, string HardwareVersion, string imgType)
+        {
+            //妫�娴嬫湰鍦版槸鍚﹀凡缁忔湁杩欎釜缂撳瓨浜�
+            if (IsEsixtFirmwareVersionInfo(levelType, HardwareVersion, imgType) == true)
+            {
+                return 1;
+            }
+            var Pra = new GetFirmwareVersionPra();
+            Pra.PageSetting.Page = 1;
+            Pra.PageSetting.PageSize = 9999;
+
+            if (levelType == FirmwareLevelType.Linux)
+            {
+                //鑾峰彇缃戝叧Linux妯″潡鍗囩骇淇℃伅
+                Pra.FirmwareManaFirstType = 1;
+                Pra.FirmwareManaSecondType = 0;
+                Pra.HardwareVersion = HardwareVersion;
+                Pra.DeviceType = imgType;
+                var result = GetFirmwareVersionAndSetToMemmory(FirmwareLevelType.Linux, Pra);
+                return result;
+            }
+            else if (levelType == FirmwareLevelType.A鍗忚皟鍣�)
+            {
+                //鍗忚皟鍣ㄦā鍧�
+                Pra.FirmwareManaFirstType = 1;
+                Pra.FirmwareManaSecondType = 1;
+                Pra.HardwareVersion = HardwareVersion;
+                Pra.DeviceType = imgType;
+                var result = GetFirmwareVersionAndSetToMemmory(FirmwareLevelType.A鍗忚皟鍣�, Pra);
+                return result;
+            }
+            else if (levelType == FirmwareLevelType.A铏氭嫙椹卞姩)
+            {
+                //铏氭嫙璁惧妯″潡
+                Pra.FirmwareManaFirstType = 1;
+                Pra.FirmwareManaSecondType = 2;
+                Pra.HardwareVersion = HardwareVersion;
+                Pra.DeviceType = imgType;
+                var result = GetFirmwareVersionAndSetToMemmory(FirmwareLevelType.A铏氭嫙椹卞姩, Pra);
+                return result;
+            }
+            else
+            {
+                //涓�鑸澶�
+                Pra.FirmwareManaFirstType = 2;
+                Pra.FirmwareManaSecondType = null;
+                Pra.HardwareVersion = HardwareVersion;
+                Pra.DeviceType = imgType;
+                var result = GetFirmwareVersionAndSetToMemmory(FirmwareLevelType.A璁惧, Pra);
+                return result;
+            }
+        }
+
+        /// <summary>
+        /// 鑾峰彇浜戠鐨勫浐浠讹紝鐒跺悗瀛樺叆缂撳瓨涓� 1:姝e父  -1:娌$綉,鑾峰彇涓嶅埌涓滆タ
+        /// </summary>
+        /// <param name="levelType"></param>
+        /// <param name="pra"></param>
+        /// <returns></returns>
+        private static int GetFirmwareVersionAndSetToMemmory(FirmwareLevelType levelType, GetFirmwareVersionPra pra)
+        {
+            var listCheck = new List<string> { "NotCheck" };
+            string resultValue = UserCenterLogic.GetResponseDataByRequestHttps("FirmwareMana/DetectionPlatformUploadFirmware", false, pra, listCheck, false);
+            if (string.IsNullOrEmpty(resultValue) == true)
+            {
+                return -1;
+            }
+            var verResult = Newtonsoft.Json.JsonConvert.DeserializeObject<FirmwareVersionResult>(resultValue);
+            if (verResult.PageData.Count == 0)
+            {
+                return 1;
+            }
+
+            //纭欢鐗堟湰
+            Dictionary<string, FirmwareHardInfo> dicHardData = null;
+            if (FirmwareUpdateResourse.dicFirmwareInfo.ContainsKey(levelType) == false)
+            {
+                FirmwareUpdateResourse.dicFirmwareInfo[levelType] = new Dictionary<string, FirmwareHardInfo>();
+            }
+            dicHardData = FirmwareUpdateResourse.dicFirmwareInfo[levelType];
+
+            foreach (var data in verResult.PageData)
+            {
+                //鍥轰欢鐗堟湰鏄剧ず锛�
+                //10101 3涓猙yte 鏄剧ず涓猴細ver.1.01.01
+                if (data.FirmwareVersion.Length != 6 && data.FirmwareVersion.Length != 5)
+                {
+                    //闈炴瑙勭殑鍥轰欢鐗堟湰,涓嶅啀鑰冭檻鑼冨洿鍐�
+                    continue;
+                }
+                //纭欢鍒嗙被
+                FirmwareHardInfo hardInfo = null;
+                string hardCode = data.HardwareVersion;
+                if (dicHardData.ContainsKey(hardCode) == false)
+                {
+                    //娣诲姞
+                    hardInfo = new FirmwareHardInfo();
+                    dicHardData[hardCode] = hardInfo;
+                }
+                hardInfo = dicHardData[hardCode];
+
+                //闀滃儚鍒嗙被
+                string imgType = data.DeviceType;
+                Dictionary<string, FirmwareImgTypeInfo> dicimgType = hardInfo.dicImgType;
+                FirmwareImgTypeInfo imgTypeInfo = null;
+                if (dicimgType.ContainsKey(imgType) == false)
+                {
+                    //娣诲姞
+                    imgTypeInfo = new FirmwareImgTypeInfo();
+                    dicimgType[imgType] = imgTypeInfo;
+                }
+                imgTypeInfo = dicimgType[imgType];
+
+                try
+                {
+                    //鍥轰欢鐗堟湰
+                    var info = new FirmwareVersionInfo();
+                    info.DistributedMark = data.DistributedMark;
+                    info.FirmwareVersion = Convert.ToInt32(data.FirmwareVersion);
+                    info.ShowName = data.Name;
+                    info.Name = data.Name;
+                    info.HardwareVersion = hardCode;
+                    info.ImagType = imgType;
+                    info.CreatedOnUtc = data.CreatedOnUtc;
+                    imgTypeInfo.listVeison.Add(info);
+                    //鍥轰欢鐨勪俊鎭鐞�
+                    DoAdjustFirmwareInformation(info, data.Remarks);
+                }
+                catch { continue; }
+            }
+
+            return 1;
+        }
+
         #endregion
 
         #region 鈻� 鑾峰彇鏈�鏂板浐浠剁増鏈俊鎭痏______________
 
-        /// <summary>
-        /// 鑾峰彇鍥轰欢鐨勬渶鏂扮増鏈俊鎭�(濡傛灉杩斿洖Null,鍒欒〃绀烘病鏈夋渶鏂扮増鏈�,鎴栬�呭綋鍓嶅凡缁忔槸鏈�鏂扮増鏈�)
-        /// </summary>
-        /// <param name="levelType">鍥轰欢闃剁骇鍒嗙被</param>
-        /// <param name="HardwareVersion">纭欢鐗堟湰</param>
-        /// <param name="imgType">闀滃儚绫诲瀷</param>
-        /// <param name="nowVersion">鐜板湪鐨勭増鏈�</param>
+        /// <summary>
+        /// 鑾峰彇鍥轰欢鐨勬渶鏂扮増鏈俊鎭�(濡傛灉杩斿洖Null,鍒欒〃绀烘病鏈夋渶鏂扮増鏈�,鎴栬�呭綋鍓嶅凡缁忔槸鏈�鏂扮増鏈�)
+        /// </summary>
+        /// <param name="levelType">鍥轰欢闃剁骇鍒嗙被</param>
+        /// <param name="HardwareVersion">纭欢鐗堟湰</param>
+        /// <param name="imgType">闀滃儚绫诲瀷</param>
+        /// <param name="nowVersion">鐜板湪鐨勭増鏈�</param>
         /// <returns></returns>
-        public static FirmwareVersionInfo GetFirmwareMostVersionInfo(FirmwareLevelType levelType, string HardwareVersion, string imgType, int nowVersion)
-        {
-            //闀滃儚绫诲瀷
-            var listdata = GetFirmwareVersionListInfo(levelType, HardwareVersion, imgType);
-            FirmwareVersionInfo newFirInfo = null;
-            foreach (var verInfo in listdata)
-            {
-                if (verInfo.Name.EndsWith(".bin") == true)
-                {
-                    //瀹冧笉鏄崌绾у浐浠�,  .bin鏄壒娈婄殑
-                    continue;
-                }
-                int testVersion = Convert.ToInt32(verInfo.FirmwareVersion.ToString().PadLeft(6, '0').Substring(2, 2));
-                if (testVersion % 2 != 0)
-                {
-                    //涓棿閭d釜byte涓哄鏁版椂锛屼唬琛ㄦ槸娴嬭瘯鐗堟湰,鍦ㄦ樉绀烘渶鏂扮増鏈椂,涓嶉渶瑕佹樉绀猴紝浣嗘槸鍦ㄥ巻鍙茬増鏈偅閲屽彲浠ユ樉绀�
-                    //涓棿閭d釜byte涓哄伓鏁版椂,浠h〃鏄寮忕増鏈�
-                    continue;
-                }
-
-                if (verInfo.FirmwareVersion > nowVersion)
-                {
-                    nowVersion = verInfo.FirmwareVersion;
-                    newFirInfo = verInfo;
-                }
-            }
-            return newFirInfo;
-        }
-
-        /// <summary>
-        /// 鑾峰彇鍥轰欢鍒楄〃鐨勫浐浠剁増鏈俊鎭�
-        /// </summary>
-        /// <param name="levelType">鍥轰欢闃剁骇鍒嗙被</param>
-        /// <param name="HardwareVersion">纭欢鐗堟湰</param>
-        /// <param name="imgType">闀滃儚绫诲瀷</param>
+        public static FirmwareVersionInfo GetFirmwareMostVersionInfo(FirmwareLevelType levelType, string HardwareVersion, string imgType, int nowVersion)
+        {
+            //闀滃儚绫诲瀷
+            var listdata = GetFirmwareVersionListInfo(levelType, HardwareVersion, imgType);
+            FirmwareVersionInfo newFirInfo = null;
+            foreach (var verInfo in listdata)
+            {
+                if (verInfo.Name.EndsWith(".bin") == true)
+                {
+                    //瀹冧笉鏄崌绾у浐浠�,  .bin鏄壒娈婄殑
+                    continue;
+                }
+                int testVersion = Convert.ToInt32(verInfo.FirmwareVersion.ToString().PadLeft(6, '0').Substring(2, 2));
+                if (testVersion % 2 != 0)
+                {
+                    //涓棿閭d釜byte涓哄鏁版椂锛屼唬琛ㄦ槸娴嬭瘯鐗堟湰,鍦ㄦ樉绀烘渶鏂扮増鏈椂,涓嶉渶瑕佹樉绀猴紝浣嗘槸鍦ㄥ巻鍙茬増鏈偅閲屽彲浠ユ樉绀�
+                    //涓棿閭d釜byte涓哄伓鏁版椂,浠h〃鏄寮忕増鏈�
+                    continue;
+                }
+
+                if (verInfo.FirmwareVersion > nowVersion)
+                {
+                    nowVersion = verInfo.FirmwareVersion;
+                    newFirInfo = verInfo;
+                }
+            }
+            return newFirInfo;
+        }
+
+        /// <summary>
+        /// 鑾峰彇鍥轰欢鍒楄〃鐨勫浐浠剁増鏈俊鎭�
+        /// </summary>
+        /// <param name="levelType">鍥轰欢闃剁骇鍒嗙被</param>
+        /// <param name="HardwareVersion">纭欢鐗堟湰</param>
+        /// <param name="imgType">闀滃儚绫诲瀷</param>
         /// <returns></returns>
-        public static List<FirmwareVersionInfo> GetFirmwareVersionListInfo(FirmwareLevelType levelType, string HardwareVersion, string imgType)
-        {
-            if (FirmwareUpdateResourse.dicFirmwareInfo == null || FirmwareUpdateResourse.dicFirmwareInfo.ContainsKey(levelType) == false)
-            {
-                return new List<FirmwareVersionInfo>();
-            }
-            //纭欢鐗堟湰鍙风骇鍒�
-            var dicHard = FirmwareUpdateResourse.dicFirmwareInfo[levelType];
-
-            //纭欢鐗堟湰
-            if (dicHard.ContainsKey(HardwareVersion) == false)
-            {
-                return new List<FirmwareVersionInfo>();
-            }
-            //闀滃儚绫诲瀷
-            var dicImgInfo = GetImageVersionListInfo(levelType, HardwareVersion);
-            if (dicImgInfo.ContainsKey(imgType) == false)
-            {
-                return new List<FirmwareVersionInfo>();
-            }
-
-            var listData = new List<FirmwareVersionInfo>();
-            var imgInfo = dicImgInfo[imgType];
-            foreach (var verInfo in imgInfo.listVeison)
-            {
-                listData.Add(verInfo);
-            }
-
-            return listData;
-        }
-
-        /// <summary>
-        /// 鑾峰彇鍥轰欢鍒楄〃鐨勯暅鍍忕増鏈俊鎭�
-        /// </summary>
-        /// <param name="levelType">鍥轰欢闃剁骇鍒嗙被</param>
-        /// <param name="HardwareVersion">纭欢鐗堟湰</param>
+        public static List<FirmwareVersionInfo> GetFirmwareVersionListInfo(FirmwareLevelType levelType, string HardwareVersion, string imgType)
+        {
+            if (FirmwareUpdateResourse.dicFirmwareInfo == null || FirmwareUpdateResourse.dicFirmwareInfo.ContainsKey(levelType) == false)
+            {
+                return new List<FirmwareVersionInfo>();
+            }
+            //纭欢鐗堟湰鍙风骇鍒�
+            var dicHard = FirmwareUpdateResourse.dicFirmwareInfo[levelType];
+
+            //纭欢鐗堟湰
+            if (dicHard.ContainsKey(HardwareVersion) == false)
+            {
+                return new List<FirmwareVersionInfo>();
+            }
+            //闀滃儚绫诲瀷
+            var dicImgInfo = GetImageVersionListInfo(levelType, HardwareVersion);
+            if (dicImgInfo.ContainsKey(imgType) == false)
+            {
+                return new List<FirmwareVersionInfo>();
+            }
+
+            var listData = new List<FirmwareVersionInfo>();
+            var imgInfo = dicImgInfo[imgType];
+            foreach (var verInfo in imgInfo.listVeison)
+            {
+                listData.Add(verInfo);
+            }
+
+            return listData;
+        }
+
+        /// <summary>
+        /// 鑾峰彇鍥轰欢鍒楄〃鐨勯暅鍍忕増鏈俊鎭�
+        /// </summary>
+        /// <param name="levelType">鍥轰欢闃剁骇鍒嗙被</param>
+        /// <param name="HardwareVersion">纭欢鐗堟湰</param>
         /// <returns></returns>
-        public static Dictionary<string, FirmwareImgTypeInfo> GetImageVersionListInfo(FirmwareLevelType levelType, string HardwareVersion)
-        {
-            if (FirmwareUpdateResourse.dicFirmwareInfo == null || FirmwareUpdateResourse.dicFirmwareInfo.ContainsKey(levelType) == false)
-            {
-                return new Dictionary<string, FirmwareImgTypeInfo>();
-            }
-            //纭欢鐗堟湰鍙风骇鍒�
-            var dicHard = FirmwareUpdateResourse.dicFirmwareInfo[levelType];
-
-            //纭欢鐗堟湰
-            if (dicHard.ContainsKey(HardwareVersion) == false)
-            {
-                return new Dictionary<string, FirmwareImgTypeInfo>();
-            }
-            //闀滃儚绫诲瀷
-            return dicHard[HardwareVersion].dicImgType;
-        }
-
-        #endregion
-
-        #region 鈻� 鑾峰彇鎸囧畾鍥轰欢鐗堟湰淇℃伅_______________
-
-        /// <summary>
-        /// 鑾峰彇鎸囧畾鍥轰欢鐨勭増鏈俊鎭�(濡傛灉杩斿洖Null,鍒欒〃绀烘病鏈夎繖涓浐浠�)
-        /// </summary>
-        /// <param name="levelType">鍥轰欢闃剁骇鍒嗙被</param>
-        /// <param name="HardwareVersion">纭欢鐗堟湰</param>
-        /// <param name="imgType">闀滃儚绫诲瀷</param>
-        /// <param name="nowVersion">鐜板湪鐨勭増鏈�</param>
-        /// <returns></returns>
-        public static FirmwareVersionInfo GetFirmwareVersionInfo(FirmwareLevelType levelType, string HardwareVersion, string imgType, int nowVersion)
-        {
-            //闀滃儚绫诲瀷
-            var listdata = GetFirmwareVersionListInfo(levelType, HardwareVersion, imgType);
-            foreach (var verInfo in listdata)
-            {
-                if (verInfo.Name.EndsWith(".bin") == true)
-                {
-                    //瀹冧笉鏄崌绾у浐浠�,  .bin鏄壒娈婄殑
-                    continue;
-                }
-                if (verInfo.FirmwareVersion == nowVersion)
-                {
-                    return verInfo;
-                }
-            }
-            return null; ;
-        }
-
-        #endregion
-
-        #region 鈻� 鍥轰欢瀛樺湪妫�娴媉______________________
-
-        /// <summary>
-        /// 鍥轰欢缂撳瓨瀛樺湪妫�娴�
-        /// </summary>
-        /// <param name="levelType">鍥轰欢闃剁骇鍒嗙被</param>
-        /// <param name="HardwareVersion">纭欢鐗堟湰</param>
-        /// <param name="imgType">闀滃儚绫诲瀷</param>
-        /// <returns></returns>
-        private static bool IsEsixtFirmwareVersionInfo(FirmwareLevelType levelType, string HardwareVersion, string imgType)
-        {
-            //绗竴澶х被
-            if (FirmwareUpdateResourse.dicFirmwareInfo == null || FirmwareUpdateResourse.dicFirmwareInfo.ContainsKey(levelType) == false)
-            {
-                return false;
-            }
-            //纭欢
-            if (FirmwareUpdateResourse.dicFirmwareInfo[levelType].ContainsKey(HardwareVersion) == false)
-            {
-                return false;
-            }
-            //闀滃儚
-            if (FirmwareUpdateResourse.dicFirmwareInfo[levelType][HardwareVersion].dicImgType.ContainsKey(imgType) == false)
-            {
-                return false;
-            }
-            return true;
-        }
-
-        /// <summary>
-        /// 妫�娴嬭Ota璁惧鐨勫崌绾у浐浠舵槸鍚﹀瓨鍦�
-        /// </summary>
-        /// <param name="device">璁惧瀵硅薄</param>
-        /// <returns></returns>
-        public static bool IsEsixtDeviceFirmwareFile(OTADevice device)
-        {
-            var fileFullName = GetDeviceFirmwareFile(device);
-            return System.IO.File.Exists(fileFullName);
-        }
-
-        /// <summary>
-        /// 鑾峰彇ota鎸囧畾鐨勫崌绾у浐浠跺悕瀛�(鍏ㄨ矾寰�)
-        /// </summary>
-        /// <param name="device">璁惧瀵硅薄</param>
-        /// <returns></returns>
-        public static string GetDeviceFirmwareFile(OTADevice device)
-        {
-            //纭欢鐗堟湰_闀滃儚ID_鍥轰欢鐗堟湰
-            string fileName = device.HwVersion + "_" + device.ImgTypeId + "_" + device.ImgVersion;
-            return System.IO.Path.Combine(DirNameResourse.FirmwareUpdateDirectory, "Device_" + fileName + ".ota");
-        }
-
-        /// <summary>
-        /// 鑾峰彇缃戝叧Linux鐨勫崌绾у浐浠跺悕瀛�(鍏ㄨ矾寰�)
-        /// </summary>
-        /// <param name="zbGateway">缃戝叧瀵硅薄</param>
-        /// <returns></returns>
-        public static string GetGatewayLinuxFirmwareFile(ZbGateway zbGateway)
-        {
-            string fileName = zbGateway.LinuxHardVersion + "_" + zbGateway.LinuxImageType + "_" + zbGateway.LinuxFirmwareVersion;
-            return System.IO.Path.Combine(DirNameResourse.FirmwareUpdateDirectory, "Linux_" + fileName + ".ota");
-        }
-
-        /// <summary>
-        /// 鑾峰彇缃戝叧鍗忚皟鍣ㄧ殑鍗囩骇鍥轰欢鍚嶅瓧(鍏ㄨ矾寰�)
-        /// </summary>
-        /// <param name="zbGateway">缃戝叧瀵硅薄</param>
-        /// <returns></returns>
-        public static string GetGatewayCoordinatorFirmwareFile(ZbGateway zbGateway)
-        {
-            string fileName = zbGateway.CoordinatorHardVersion + "_" + zbGateway.CoordinatorImageId + "_" + zbGateway.CoordinatorFirmwareVersion;
-            return System.IO.Path.Combine(DirNameResourse.FirmwareUpdateDirectory, "Coordinator_" + fileName + ".ota");
-        }
-
-        /// <summary>
-        /// 鑾峰彇缃戝叧铏氭嫙椹卞姩鐨勫崌绾у浐浠跺悕瀛�(鍏ㄨ矾寰�)
-        /// </summary>
-        /// <param name="codeObj">铏氭嫙椹卞姩鏁版嵁</param>
-        /// <returns></returns>
-        public static string GetGatewayDriveCodeFirmwareFile(ZbGatewayData.DriveCodeObj codeObj)
-        {
-            string fileName = codeObj.DriveHwVersion + "_" + codeObj.DriveImageType + "_" + codeObj.DriveFwVersion;
-            return System.IO.Path.Combine(DirNameResourse.FirmwareUpdateDirectory, "DriveCode_" + fileName + ".ota");
-        }
-
-        #endregion
-
-        #region 鈻� 涓嬭浇妯℃澘鍥轰欢_______________________
-
-        /// <summary>
-        /// 涓嬭浇妯℃澘涓綉鍏冲拰璁惧鐨勫浐浠�
-        /// </summary>
-        /// <param name="fullFileName"></param>
-        /// <param name="i_Msg"></param>
-        public static int DownLoadTemplateDeviceFirmware(string fullFileName, string i_Msg)
-        {
-            //浠庢ā鏉垮綋涓幏鍙栬澶囧拰缃戝叧瀵硅薄
-            var listTempDevice = new List<OTADevice>();
-            var listTempGateway = new List<ZbGateway>();
-            TemplateData.TemplateCommonLogic.Current.GetDeviceObjectFromTemplate(fullFileName, ref listTempDevice, ref listTempGateway);
-
-            //鑾峰彇闇�瑕佷笅杞界殑鍥轰欢鏁版嵁
-            var listVersion = GetNeedToDownLoadVersionData(listTempDevice, listTempGateway);
-            if (listVersion.Count == 0)
-            {
-                return 0;
-            }
-            //鎵撳紑杩涘害鏉�
-            ProgressFormBar.Current.Start();
-            ProgressFormBar.Current.SetMsg(i_Msg);
-            ProgressFormBar.Current.SetValue(0, 1);
-
-            System.Threading.Thread.Sleep(1000);
-
-            var dicFirmwareName = new Dictionary<string, string>();
-            var fileData = HdlFileLogic.Current.ReadFileTextContent(DirNameResourse.FirmwareUpdateList);
-            if (fileData != null)
-            {
-                //鏈湴瀛樻斁鐨勫浐浠跺師鏉ョ殑鍚嶅瓧(鍥犱负璁惧鍗囩骇鏃�,瀹冮渶瑕佽瘑鍒枃浠跺悕瀛楅噷闈㈠寘鍚殑鐗规畩瀛楃)
-                //key:鍏ㄨ矾寰�,纭欢鐗堟湰_闀滃儚ID_鍥轰欢鐗堟湰  value:鍥轰欢鍘熸潵鐨勫悕瀛�
-                dicFirmwareName = Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<string, string>>(fileData);
-            }
-
-            //鍥轰欢瀛樺偍璺緞
-            string firmwareDir = DirNameResourse.FirmwareUpdateDirectory;
-            int nowCount = 0;
-            foreach (var versionData in listVersion)
-            {
-                nowCount++;
-                //鑾峰彇鍗囩骇鍥轰欢淇℃伅
-                var result = AddFirmwareVersionInfo(versionData.levelType, versionData.HwVersion, versionData.ImageType);
-                if (result == -1)
-                {
-                    ProgressFormBar.Current.Close();
-                    return -1;
-                }
-                //鑾峰彇褰撳墠杩欎釜鐗堟湰鐨勫浐浠朵俊鎭�
-                var versionFirmware = GetFirmwareVersionInfo(versionData.levelType, versionData.HwVersion, versionData.ImageType, versionData.FirmwareVersion);
-                if (versionFirmware == null)
-                {
-                    //浜戠娌℃湁杩欎釜鐗堟湰  杩涘害鍊�
-                    ProgressFormBar.Current.SetValue(nowCount, listVersion.Count);
-                    continue;
-                }
-                //鍘讳笅杞借繖涓浐浠�
-                var pra = new { RequestVersion = Common.CommonPage.RequestVersion, DistributedMark = versionFirmware.DistributedMark };
-                var byteData = UserCenterLogic.GetByteResponseDataByRequestHttps("FirmwareMana/DownloadPlatformUploadFirmware", false, pra, null, true);
-                if (byteData == null)
-                {
-                    ProgressFormBar.Current.Close();
-                    return -1;
-                }
-                //淇濆瓨鍥轰欢
-                var saveFile = System.IO.Path.Combine(firmwareDir, versionData.FileDiv + versionData.HwVersion + "_" + versionData.ImageType + "_" + versionData.FirmwareVersion + ".ota");
-                HdlFileLogic.Current.SaveByteToFile(saveFile, byteData);
-                dicFirmwareName[saveFile] = versionFirmware.Name;
-
-                //杩涘害鍊�
-                ProgressFormBar.Current.SetValue(nowCount, listVersion.Count);
-            }
-            //淇濆瓨鍒楄〃鍚嶅瓧
-            HdlFileLogic.Current.SaveFileContent(DirNameResourse.FirmwareUpdateList, dicFirmwareName);
-            ProgressFormBar.Current.Close();
-
-            return 1;
-        }
-
-        /// <summary>
-        /// 鑾峰彇闇�瑕佷笅杞界殑鍥轰欢鏁版嵁
-        /// </summary>
-        /// <param name="listDevice">璁惧鍒楄〃</param>
-        /// <param name="listGateway">缃戝叧鍒楄〃</param>
-        /// <returns></returns>
-        private static List<TemplateDeviceVersion> GetNeedToDownLoadVersionData(List<OTADevice> listDevice, List<ZbGateway> listGateway)
-        {
-            //瀛樺偍璺緞
-            string firmwareDir = DirNameResourse.FirmwareUpdateDirectory;
-            HdlFileLogic.Current.CreateDirectory(firmwareDir);
-
-            var listVersion = new List<TemplateDeviceVersion>();
-            var listCheck = new HashSet<string>();
-            foreach (var device in listDevice)
-            {
-                //璁惧鐨勫崌绾у浐浠跺悕瀛�
-                var fileFullName = GetDeviceFirmwareFile(device);
-                if (System.IO.File.Exists(fileFullName) == false && listCheck.Contains(fileFullName) == false)
-                {
-                    listCheck.Add(fileFullName);
-                    //璁惧
-                    listVersion.Add(new TemplateDeviceVersion
-                    {
-                        FileDiv = "Device_",
-                        levelType = FirmwareLevelType.A璁惧,
-                        HwVersion = device.HwVersion.ToString(),
-                        ImageType = device.ImgTypeId.ToString(),
-                        FirmwareVersion = device.ImgVersion
-                    });
-                }
-            }
-            foreach (var gateway in listGateway)
-            {
-                //Linux鐨勫崌绾у浐浠跺悕瀛�
-                var fileFullName = GetGatewayLinuxFirmwareFile(gateway);
-                if (System.IO.File.Exists(fileFullName) == false && listCheck.Contains(fileFullName) == false)
-                {
-                    listCheck.Add(fileFullName);
-                    //Linux
-                    listVersion.Add(new TemplateDeviceVersion
-                    {
-                        FileDiv = "Linux_",
-                        levelType = FirmwareLevelType.Linux,
-                        HwVersion = gateway.LinuxHardVersion.ToString(),
-                        ImageType = gateway.LinuxImageType.ToString(),
-                        FirmwareVersion = gateway.LinuxFirmwareVersion
-                    });
-                }
-                //鍗忚皟鍣ㄧ殑鍗囩骇鍥轰欢鍚嶅瓧
-                fileFullName = GetGatewayCoordinatorFirmwareFile(gateway);
-                if (System.IO.File.Exists(fileFullName) == false && listCheck.Contains(fileFullName) == false)
-                {
-                    listCheck.Add(fileFullName);
-                    //鍗忚皟鍣�
-                    listVersion.Add(new TemplateDeviceVersion
-                    {
-                        FileDiv = "Coordinator_",
-                        levelType = FirmwareLevelType.A鍗忚皟鍣�,
-                        HwVersion = gateway.CoordinatorHardVersion.ToString(),
-                        ImageType = gateway.CoordinatorImageId.ToString(),
-                        FirmwareVersion = gateway.CoordinatorFirmwareVersion
-                    });
-                }
-                //杩欎釜缃戝叧闇�瑕佹湁铏氭嫙椹卞姩杩欎釜涓滆タ鎵嶈
-                if (gateway.LinuxImageType != 6)
-                {
-                    //铏氭嫙椹卞姩鍙�
-                    foreach (var data in gateway.DriveCodeList)
-                    {
-                        //铏氭嫙椹卞姩鍙风殑鍗囩骇鍥轰欢鍚嶅瓧
-                        fileFullName = GetGatewayDriveCodeFirmwareFile(data);
-                        if (System.IO.File.Exists(fileFullName) == false && listCheck.Contains(fileFullName) == false)
-                        {
-                            listCheck.Add(fileFullName);
-                            //铏氭嫙椹卞姩鍙�
-                            listVersion.Add(new TemplateDeviceVersion
-                            {
-                                FileDiv = "DriveCode_",
-                                levelType = FirmwareLevelType.A铏氭嫙椹卞姩,
-                                HwVersion = data.DriveHwVersion.ToString(),
-                                ImageType = data.DriveImageType.ToString(),
-                                FirmwareVersion = data.DriveFwVersion
-                            });
-                        }
-                    }
-                }
-            }
-            return listVersion;
-        }
-
-        /// <summary>
-        /// 妯℃澘璁惧鐨勭増鏈俊鎭�
-        /// </summary>
-        private class TemplateDeviceVersion
-        {
-            /// <summary>
-            /// 鏂囦欢鍖哄垎
-            /// </summary>
-            public string FileDiv = string.Empty;
-            /// <summary>
-            /// 鍥轰欢闃剁骇鍖哄垎
-            /// </summary>
-            public FirmwareLevelType levelType;
-            /// <summary>
-            /// 纭欢鐗堟湰
-            /// </summary>
-            public string HwVersion = string.Empty;
-            /// <summary>
-            /// 闀滃儚ID
-            /// </summary>
-            public string ImageType = string.Empty;
-            /// <summary>
-            /// 鍥轰欢鐗堟湰
-            /// </summary>
-            public int FirmwareVersion = 0;
-        }
-
-        #endregion
-
-        #region 鈻� 涓�鑸柟娉昣__________________________
-
-        /// <summary>
-        /// 鍥轰欢鐨勪俊鎭鐞�
-        /// </summary>
-        /// <param name="Info"></param>
-        /// <param name="remark"></param>
-        private static void DoAdjustFirmwareInformation(FirmwareVersionInfo Info, string remark)
-        {
-            if (string.IsNullOrEmpty(remark) == true)
-            {
-                return;
-            }
-            //鏇存柊鍐呭
-            string[] Arry = remark.Split(new string[] { "\r\n", "\r", "\n" }, StringSplitOptions.None);
-            Info.UpdateContent.AddRange(Arry);
-        }
-
-        #endregion
-    }
-}
+        public static Dictionary<string, FirmwareImgTypeInfo> GetImageVersionListInfo(FirmwareLevelType levelType, string HardwareVersion)
+        {
+            if (FirmwareUpdateResourse.dicFirmwareInfo == null || FirmwareUpdateResourse.dicFirmwareInfo.ContainsKey(levelType) == false)
+            {
+                return new Dictionary<string, FirmwareImgTypeInfo>();
+            }
+            //纭欢鐗堟湰鍙风骇鍒�
+            var dicHard = FirmwareUpdateResourse.dicFirmwareInfo[levelType];
+
+            //纭欢鐗堟湰
+            if (dicHard.ContainsKey(HardwareVersion) == false)
+            {
+                return new Dictionary<string, FirmwareImgTypeInfo>();
+            }
+            //闀滃儚绫诲瀷
+            return dicHard[HardwareVersion].dicImgType;
+        }
+
+        #endregion
+
+        #region 鈻� 鑾峰彇鎸囧畾鍥轰欢鐗堟湰淇℃伅_______________
+
+        /// <summary>
+        /// 鑾峰彇鎸囧畾鍥轰欢鐨勭増鏈俊鎭�(濡傛灉杩斿洖Null,鍒欒〃绀烘病鏈夎繖涓浐浠�)
+        /// </summary>
+        /// <param name="levelType">鍥轰欢闃剁骇鍒嗙被</param>
+        /// <param name="HardwareVersion">纭欢鐗堟湰</param>
+        /// <param name="imgType">闀滃儚绫诲瀷</param>
+        /// <param name="nowVersion">鐜板湪鐨勭増鏈�</param>
+        /// <returns></returns>
+        public static FirmwareVersionInfo GetFirmwareVersionInfo(FirmwareLevelType levelType, string HardwareVersion, string imgType, int nowVersion)
+        {
+            //闀滃儚绫诲瀷
+            var listdata = GetFirmwareVersionListInfo(levelType, HardwareVersion, imgType);
+            foreach (var verInfo in listdata)
+            {
+                if (verInfo.Name.EndsWith(".bin") == true)
+                {
+                    //瀹冧笉鏄崌绾у浐浠�,  .bin鏄壒娈婄殑
+                    continue;
+                }
+                if (verInfo.FirmwareVersion == nowVersion)
+                {
+                    return verInfo;
+                }
+            }
+            return null; ;
+        }
+
+        #endregion
+
+        #region 鈻� 鍥轰欢瀛樺湪妫�娴媉______________________
+
+        /// <summary>
+        /// 鍥轰欢缂撳瓨瀛樺湪妫�娴�
+        /// </summary>
+        /// <param name="levelType">鍥轰欢闃剁骇鍒嗙被</param>
+        /// <param name="HardwareVersion">纭欢鐗堟湰</param>
+        /// <param name="imgType">闀滃儚绫诲瀷</param>
+        /// <returns></returns>
+        private static bool IsEsixtFirmwareVersionInfo(FirmwareLevelType levelType, string HardwareVersion, string imgType)
+        {
+            //绗竴澶х被
+            if (FirmwareUpdateResourse.dicFirmwareInfo == null || FirmwareUpdateResourse.dicFirmwareInfo.ContainsKey(levelType) == false)
+            {
+                return false;
+            }
+            //纭欢
+            if (FirmwareUpdateResourse.dicFirmwareInfo[levelType].ContainsKey(HardwareVersion) == false)
+            {
+                return false;
+            }
+            //闀滃儚
+            if (FirmwareUpdateResourse.dicFirmwareInfo[levelType][HardwareVersion].dicImgType.ContainsKey(imgType) == false)
+            {
+                return false;
+            }
+            return true;
+        }
+
+        /// <summary>
+        /// 妫�娴嬭Ota璁惧鐨勫崌绾у浐浠舵槸鍚﹀瓨鍦�
+        /// </summary>
+        /// <param name="device">璁惧瀵硅薄</param>
+        /// <returns></returns>
+        public static bool IsEsixtDeviceFirmwareFile(OTADevice device)
+        {
+            var fileFullName = GetDeviceFirmwareFile(device);
+            return System.IO.File.Exists(fileFullName);
+        }
+
+        /// <summary>
+        /// 鑾峰彇ota鎸囧畾鐨勫崌绾у浐浠跺悕瀛�(鍏ㄨ矾寰�)
+        /// </summary>
+        /// <param name="device">璁惧瀵硅薄</param>
+        /// <returns></returns>
+        public static string GetDeviceFirmwareFile(OTADevice device)
+        {
+            //纭欢鐗堟湰_闀滃儚ID_鍥轰欢鐗堟湰
+            string fileName = device.HwVersion + "_" + device.ImgTypeId + "_" + device.ImgVersion;
+            return System.IO.Path.Combine(DirNameResourse.FirmwareUpdateDirectory, "Device_" + fileName + ".ota");
+        }
+
+        /// <summary>
+        /// 鑾峰彇缃戝叧Linux鐨勫崌绾у浐浠跺悕瀛�(鍏ㄨ矾寰�)
+        /// </summary>
+        /// <param name="zbGateway">缃戝叧瀵硅薄</param>
+        /// <returns></returns>
+        public static string GetGatewayLinuxFirmwareFile(ZbGateway zbGateway)
+        {
+            string fileName = zbGateway.LinuxHardVersion + "_" + zbGateway.LinuxImageType + "_" + zbGateway.LinuxFirmwareVersion;
+            return System.IO.Path.Combine(DirNameResourse.FirmwareUpdateDirectory, "Linux_" + fileName + ".ota");
+        }
+
+        /// <summary>
+        /// 鑾峰彇缃戝叧鍗忚皟鍣ㄧ殑鍗囩骇鍥轰欢鍚嶅瓧(鍏ㄨ矾寰�)
+        /// </summary>
+        /// <param name="zbGateway">缃戝叧瀵硅薄</param>
+        /// <returns></returns>
+        public static string GetGatewayCoordinatorFirmwareFile(ZbGateway zbGateway)
+        {
+            string fileName = zbGateway.CoordinatorHardVersion + "_" + zbGateway.CoordinatorImageId + "_" + zbGateway.CoordinatorFirmwareVersion;
+            return System.IO.Path.Combine(DirNameResourse.FirmwareUpdateDirectory, "Coordinator_" + fileName + ".ota");
+        }
+
+        /// <summary>
+        /// 鑾峰彇缃戝叧铏氭嫙椹卞姩鐨勫崌绾у浐浠跺悕瀛�(鍏ㄨ矾寰�)
+        /// </summary>
+        /// <param name="codeObj">铏氭嫙椹卞姩鏁版嵁</param>
+        /// <returns></returns>
+        public static string GetGatewayDriveCodeFirmwareFile(ZbGatewayData.DriveCodeObj codeObj)
+        {
+            string fileName = codeObj.DriveHwVersion + "_" + codeObj.DriveImageType + "_" + codeObj.DriveFwVersion;
+            return System.IO.Path.Combine(DirNameResourse.FirmwareUpdateDirectory, "DriveCode_" + fileName + ".ota");
+        }
+
+        #endregion
+
+        #region 鈻� 涓嬭浇妯℃澘鍥轰欢_______________________
+
+        /// <summary>
+        /// 涓嬭浇妯℃澘涓綉鍏冲拰璁惧鐨勫浐浠�
+        /// </summary>
+        /// <param name="fullFileName"></param>
+        /// <param name="i_Msg"></param>
+        public static int DownLoadTemplateDeviceFirmware(string fullFileName, string i_Msg)
+        {
+            //浠庢ā鏉垮綋涓幏鍙栬澶囧拰缃戝叧瀵硅薄
+            var listTempDevice = new List<OTADevice>();
+            var listTempGateway = new List<ZbGateway>();
+            TemplateData.TemplateCommonLogic.Current.GetDeviceObjectFromTemplate(fullFileName, ref listTempDevice, ref listTempGateway);
+
+            //鑾峰彇闇�瑕佷笅杞界殑鍥轰欢鏁版嵁
+            var listVersion = GetNeedToDownLoadVersionData(listTempDevice, listTempGateway);
+            //鑾峰彇闇�瑕佷笅杞界殑绌鸿皟妯″潡
+            var listAcOta = new List<OTADevice>();
+            var listAcUpdate = GetNeedDownLoadAirConditionerModule(listTempDevice, ref listAcOta);
+
+            if (listVersion.Count == 0 && listAcUpdate.Count == 0)
+            {
+                return 0;
+            }
+            //鎵撳紑杩涘害鏉�
+            ProgressFormBar.Current.Start();
+            ProgressFormBar.Current.SetMsg(i_Msg);
+            ProgressFormBar.Current.SetValue(0, 1);
+
+            System.Threading.Thread.Sleep(1000);
+
+            var dicFirmwareName = new Dictionary<string, string>();
+            var fileData = HdlFileLogic.Current.ReadFileTextContent(DirNameResourse.FirmwareUpdateList);
+            if (fileData != null)
+            {
+                //鏈湴瀛樻斁鐨勫浐浠跺師鏉ョ殑鍚嶅瓧(鍥犱负璁惧鍗囩骇鏃�,瀹冮渶瑕佽瘑鍒枃浠跺悕瀛楅噷闈㈠寘鍚殑鐗规畩瀛楃)
+                //key:鍏ㄨ矾寰�,纭欢鐗堟湰_闀滃儚ID_鍥轰欢鐗堟湰  value:鍥轰欢鍘熸潵鐨勫悕瀛�
+                dicFirmwareName = Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<string, string>>(fileData);
+            }
+
+            //鍥轰欢瀛樺偍璺緞
+            string firmwareDir = DirNameResourse.FirmwareUpdateDirectory;
+            int nowCount = 0;
+            int macCount = listVersion.Count + listAcUpdate.Count;
+
+            foreach (var versionData in listVersion)
+            {
+                nowCount++;
+                //鑾峰彇鍗囩骇鍥轰欢淇℃伅
+                var result = AddFirmwareVersionInfo(versionData.levelType, versionData.HwVersion, versionData.ImageType);
+                if (result == -1)
+                {
+                    ProgressFormBar.Current.Close();
+                    //淇濆瓨鍒楄〃鍚嶅瓧
+                    HdlFileLogic.Current.SaveFileContent(DirNameResourse.FirmwareUpdateList, dicFirmwareName);
+                    return -1;
+                }
+                //鑾峰彇褰撳墠杩欎釜鐗堟湰鐨勫浐浠朵俊鎭�
+                var versionFirmware = GetFirmwareVersionInfo(versionData.levelType, versionData.HwVersion, versionData.ImageType, versionData.FirmwareVersion);
+                if (versionFirmware == null)
+                {
+                    //浜戠娌℃湁杩欎釜鐗堟湰  杩涘害鍊�
+                    ProgressFormBar.Current.SetValue(nowCount, macCount);
+                    continue;
+                }
+                //鍘讳笅杞借繖涓浐浠�
+                var pra = new { RequestVersion = Common.CommonPage.RequestVersion, DistributedMark = versionFirmware.DistributedMark };
+                var byteData = UserCenterLogic.GetByteResponseDataByRequestHttps("FirmwareMana/DownloadPlatformUploadFirmware", false, pra, new List<string> { "NotCheck" }, true);
+                if (byteData == null)
+                {
+                    ProgressFormBar.Current.Close();
+                    //淇濆瓨鍒楄〃鍚嶅瓧
+                    HdlFileLogic.Current.SaveFileContent(DirNameResourse.FirmwareUpdateList, dicFirmwareName);
+                    return -1;
+                }
+                //淇濆瓨鍥轰欢
+                var saveFile = System.IO.Path.Combine(firmwareDir, versionData.FileDiv + versionData.HwVersion + "_" + versionData.ImageType + "_" + versionData.FirmwareVersion + ".ota");
+                HdlFileLogic.Current.SaveByteToFile(saveFile, byteData);
+                dicFirmwareName[saveFile] = versionFirmware.Name;
+
+                //杩涘害鍊�
+                ProgressFormBar.Current.SetValue(nowCount, macCount);
+            }
+            for (int i = 0; i < listAcUpdate.Count; i++)
+            {
+                //涓嬭浇绌鸿皟妯″潡
+                var pra = new { RequestVersion = Common.CommonPage.RequestVersion, DistributedMark = listAcUpdate[i].DistributedMark };
+                var deviceFirmwareByte = UserCenterLogic.GetByteResponseDataByRequestHttps("FirmwareMana/DownloadPlatformUploadFirmware", false, pra, new List<string> { "NotCheck" }, true);
+                if (deviceFirmwareByte == null)
+                {
+                    ProgressFormBar.Current.Close();
+                    //淇濆瓨鍒楄〃鍚嶅瓧
+                    HdlFileLogic.Current.SaveFileContent(DirNameResourse.FirmwareUpdateList, dicFirmwareName);
+                    return -1;
+                }
+                //淇濆瓨鍥轰欢
+                string fileName = "AC_" + listAcOta[i].HwVersion + "_" + listAcOta[i].ImgTypeId + "_" + listAcUpdate[i].Name;
+                var saveFile = System.IO.Path.Combine(firmwareDir, fileName);
+                HdlFileLogic.Current.SaveByteToFile(saveFile, deviceFirmwareByte);
+
+                //杩涘害鍊�
+                ProgressFormBar.Current.SetValue(nowCount, macCount);
+            }
+
+            //淇濆瓨鍒楄〃鍚嶅瓧
+            HdlFileLogic.Current.SaveFileContent(DirNameResourse.FirmwareUpdateList, dicFirmwareName);
+            ProgressFormBar.Current.Close();
+
+            return 1;
+        }
+
+        /// <summary>
+        /// 鑾峰彇闇�瑕佷笅杞界殑鍥轰欢鏁版嵁
+        /// </summary>
+        /// <param name="listDevice">璁惧鍒楄〃</param>
+        /// <param name="listGateway">缃戝叧鍒楄〃</param>
+        /// <returns></returns>
+        private static List<TemplateDeviceVersion> GetNeedToDownLoadVersionData(List<OTADevice> listDevice, List<ZbGateway> listGateway)
+        {
+            //瀛樺偍璺緞
+            string firmwareDir = DirNameResourse.FirmwareUpdateDirectory;
+            HdlFileLogic.Current.CreateDirectory(firmwareDir);
+
+            var listVersion = new List<TemplateDeviceVersion>();
+            var listCheck = new HashSet<string>();
+            foreach (var device in listDevice)
+            {
+                //璁惧鐨勫崌绾у浐浠跺悕瀛�
+                var fileFullName = GetDeviceFirmwareFile(device);
+                if (System.IO.File.Exists(fileFullName) == false && listCheck.Contains(fileFullName) == false)
+                {
+                    listCheck.Add(fileFullName);
+                    //璁惧
+                    listVersion.Add(new TemplateDeviceVersion
+                    {
+                        FileDiv = "Device_",
+                        levelType = FirmwareLevelType.A璁惧,
+                        HwVersion = device.HwVersion.ToString(),
+                        ImageType = device.ImgTypeId.ToString(),
+                        FirmwareVersion = device.ImgVersion
+                    });
+                }
+            }
+            foreach (var gateway in listGateway)
+            {
+                //Linux鐨勫崌绾у浐浠跺悕瀛�
+                var fileFullName = GetGatewayLinuxFirmwareFile(gateway);
+                if (System.IO.File.Exists(fileFullName) == false && listCheck.Contains(fileFullName) == false)
+                {
+                    listCheck.Add(fileFullName);
+                    //Linux
+                    listVersion.Add(new TemplateDeviceVersion
+                    {
+                        FileDiv = "Linux_",
+                        levelType = FirmwareLevelType.Linux,
+                        HwVersion = gateway.LinuxHardVersion.ToString(),
+                        ImageType = gateway.LinuxImageType.ToString(),
+                        FirmwareVersion = gateway.LinuxFirmwareVersion
+                    });
+                }
+                //鍗忚皟鍣ㄧ殑鍗囩骇鍥轰欢鍚嶅瓧
+                fileFullName = GetGatewayCoordinatorFirmwareFile(gateway);
+                if (System.IO.File.Exists(fileFullName) == false && listCheck.Contains(fileFullName) == false)
+                {
+                    listCheck.Add(fileFullName);
+                    //鍗忚皟鍣�
+                    listVersion.Add(new TemplateDeviceVersion
+                    {
+                        FileDiv = "Coordinator_",
+                        levelType = FirmwareLevelType.A鍗忚皟鍣�,
+                        HwVersion = gateway.CoordinatorHardVersion.ToString(),
+                        ImageType = gateway.CoordinatorImageId.ToString(),
+                        FirmwareVersion = gateway.CoordinatorFirmwareVersion
+                    });
+                }
+                //杩欎釜缃戝叧闇�瑕佹湁铏氭嫙椹卞姩杩欎釜涓滆タ鎵嶈
+                if (HdlGatewayLogic.Current.CheckGatewayHadDriveCode(gateway) == true)
+                {
+                    //铏氭嫙椹卞姩鍙�
+                    foreach (var data in gateway.DriveCodeList)
+                    {
+                        //铏氭嫙椹卞姩鍙风殑鍗囩骇鍥轰欢鍚嶅瓧
+                        fileFullName = GetGatewayDriveCodeFirmwareFile(data);
+                        if (System.IO.File.Exists(fileFullName) == false && listCheck.Contains(fileFullName) == false)
+                        {
+                            listCheck.Add(fileFullName);
+                            //铏氭嫙椹卞姩鍙�
+                            listVersion.Add(new TemplateDeviceVersion
+                            {
+                                FileDiv = "DriveCode_",
+                                levelType = FirmwareLevelType.A铏氭嫙椹卞姩,
+                                HwVersion = data.DriveHwVersion.ToString(),
+                                ImageType = data.DriveImageType.ToString(),
+                                FirmwareVersion = data.DriveFwVersion
+                            });
+                        }
+                    }
+                }
+            }
+            return listVersion;
+        }
+
+        /// <summary>
+        /// 鑾峰彇闇�瑕佷笅杞界殑绌鸿皟妯″潡
+        /// </summary>
+        /// <param name="listDevice">璁惧鍒楄〃</param>
+        /// <param name="listTaget">涓庤繑鍥炲�煎搴旂殑涓滆タ</param>
+        private static List<FirmwareVersionInfo> GetNeedDownLoadAirConditionerModule(List<OTADevice> listDevice, ref List<OTADevice> listTaget)
+        {
+            var listUpdate = new List<FirmwareVersionInfo>();
+            //鍥轰欢瀛樺偍璺緞
+            string firmwareDir = DirNameResourse.FirmwareUpdateDirectory;
+
+            foreach (var otaDevice in listDevice)
+            {
+                var myType = Common.LocalDevice.Current.GetMyDeviceEnumInfo(new List<CommonDevice> { otaDevice });
+                if (myType.ConcreteType != Common.DeviceConcreteType.AirConditioner_ZbGateway)
+                {
+                    //鍙鐞嗕腑澶┖璋�
+                    continue;
+                }
+                var list = GetFirmwareVersionListInfo(FirmwareLevelType.A璁惧, otaDevice.HwVersion.ToString(), otaDevice.ImgTypeId.ToString());
+                foreach (var data in list)
+                {
+                    if (data.Name.EndsWith(".bin") == true && System.IO.File.Exists(firmwareDir) == false)
+                    {
+                        //鍙.bin鏂囦欢
+                        listUpdate.Add(data);
+                        listTaget.Add(otaDevice);
+                    }
+                }
+            }
+            return listUpdate;
+        }
+
+        /// <summary>
+        /// 妯℃澘璁惧鐨勭増鏈俊鎭�
+        /// </summary>
+        private class TemplateDeviceVersion
+        {
+            /// <summary>
+            /// 鏂囦欢鍖哄垎
+            /// </summary>
+            public string FileDiv = string.Empty;
+            /// <summary>
+            /// 鍥轰欢闃剁骇鍖哄垎
+            /// </summary>
+            public FirmwareLevelType levelType;
+            /// <summary>
+            /// 纭欢鐗堟湰
+            /// </summary>
+            public string HwVersion = string.Empty;
+            /// <summary>
+            /// 闀滃儚ID
+            /// </summary>
+            public string ImageType = string.Empty;
+            /// <summary>
+            /// 鍥轰欢鐗堟湰
+            /// </summary>
+            public int FirmwareVersion = 0;
+        }
+
+        #endregion
+
+        #region 鈻� 璇诲彇App鏈�浣庣増鏈琠___________________
+
+        /// <summary>
+        /// 璇诲彇App鏈�浣庣増鏈�
+        /// </summary>
+        public static void ReadAppLestVersion()
+        {
+            if (FirmwareUpdateResourse.AppNeedUpdateUrl != null)
+            {
+                //宸茬粡璇诲彇杩囦簡,鍒欎笉鍐嶈鍙�
+                return;
+            }
+            var pra = new Dictionary<string, string>();
+            pra["version"] = Common.CommonPage.CodeIDString;
+            pra["appName"] = "EvoyoHome";
+            var bodyData = GetSignRequestJson(Newtonsoft.Json.JsonConvert.SerializeObject(pra));
+            //var url = "https://china-gateway.hdlcontrol.com/smart-footstone/app/appVersion/check";
+            var url = "https://test-gz.hdlcontrol.com/smart-footstone/app/appVersion/check";
+            var byteData = Common.CommonPage.Instance.DoRequestZigbeeHttpsInterface(url, Encoding.UTF8.GetBytes(bodyData), null);
+            if (byteData == null)
+            {
+                return;
+            }
+            try
+            {
+                var jobject = Newtonsoft.Json.Linq.JObject.Parse(Encoding.UTF8.GetString(byteData));
+                if (jobject["code"].ToString() != "0")
+                {
+                    return;
+                }
+                var strData = jobject["data"].ToString();
+                FirmwareUpdateResourse.AppNeedUpdateUrl = string.Empty;
+                if (string.IsNullOrEmpty(strData) == true) { return; }
+
+                var jobData = Newtonsoft.Json.Linq.JObject.Parse(strData);
+                //濡傛灉鏄己鍒跺崌绾х殑璇�
+                if (jobData["isEnforce"].ToString().ToLower() == "true")
+                {
+#if iOS
+                    FirmwareUpdateResourse.AppNeedUpdateUrl = jobData["iosUrl"].ToString();
+#endif
+#if Android
+                    FirmwareUpdateResourse.AppNeedUpdateUrl = jobData["androidUrl"].ToString();
+#endif
+                }
+            }
+            catch { }
+        }
+
+        #endregion
+
+        #region 鈻� 璇诲彇缃戝叧鏈�浣庣増鏈琠__________________
+
+        /// <summary>
+        /// 璇诲彇缃戝叧鏈�浣庣増鏈�
+        /// </summary>
+        public static void ReadGatewayLestVersion()
+        {
+            //姣忔鍒囨崲浣忓畢,閮戒細鍘昏鍙栦竴娆�
+            FirmwareUpdateResourse.ListGatewayNeedUpdate = new List<string>();
+
+            var listGateway = HdlGatewayLogic.Current.GetAllLocalGateway();
+            foreach (var gw in listGateway)
+            {
+                var pra = new Dictionary<string, string>();
+                pra["hardwareId"] = gw.LinuxHardVersion.ToString();
+                pra["imagesId"] = gw.LinuxImageType.ToString();
+                pra["version"] = gw.LinuxFirmwareVersion.ToString();
+                var bodyData = GetSignRequestJson(Newtonsoft.Json.JsonConvert.SerializeObject(pra));
+                //var url = "https://china-gateway.hdlcontrol.com/smart-footstone/app/appVersion/check";
+                var url = "https://test-gz.hdlcontrol.com/smart-footstone/app/gateway-hardware/check";
+                var byteData = Common.CommonPage.Instance.DoRequestZigbeeHttpsInterface(url, Encoding.UTF8.GetBytes(bodyData), null);
+                if (byteData == null)
+                {
+                    return;
+                }
+                try
+                {
+                    var jobject = Newtonsoft.Json.Linq.JObject.Parse(Encoding.UTF8.GetString(byteData));
+                    if (jobject["code"].ToString() != "0")
+                    {
+                        continue;
+                    }
+                    var strData = jobject["data"].ToString();
+                    if (string.IsNullOrEmpty(strData) == true) { return; }
+
+                    var jobData = Newtonsoft.Json.Linq.JObject.Parse(strData);
+                    //濡傛灉鏄己鍒跺崌绾х殑璇�
+                    if (jobData["isEnforce"].ToString().ToLower() == "true")
+                    {
+                        FirmwareUpdateResourse.ListGatewayNeedUpdate.Add(gw.GwId);
+                    }
+                }
+                catch { }
+            }
+        }
+
+        #endregion
+
+        #region 鈻� 妫�娴嬭兘澶熸樉绀哄叕鍛奯__________________
+
+        /// <summary>
+        /// 妫�娴嬭兘澶熸樉绀哄叕鍛�
+        /// </summary>
+        public static bool CheckCanShowNotice()
+        {
+            //涓嶇鎴愪笉鎴愬姛,璇昏繃涓�娆′箣鍚庡氨涓嶅啀璇诲彇
+            if (FirmwareUpdateResourse.ReadedNotice == true)
+            {
+                return false;
+            }
+            FirmwareUpdateResourse.ReadedNotice = true;
+#if Android
+            var url = "https://developer.hdlcontrol.com/AnnouncementAndriod.html";
+#endif
+#if iOS
+            var url = "https://developer.hdlcontrol.com/AnnouncementIos.html";
+#endif
+
+            var byteData = Common.CommonPage.Instance.DoRequestZigbeeHttpsInterface(url, null, null, "GET");
+            if (byteData == null)
+            {
+                //濡傛灉鏄�404,鍒欒繑鍥瀎alse
+                return false;
+            }
+            //鍔犺浇绯荤粺鍏憡
+            var fileData = HdlFileLogic.Current.ReadFileTextContent(DirNameResourse.AppNoticeFile);
+            if (fileData == null) { fileData = string.Empty; }
+
+            //鍔犱笂褰撳ぉ鏃ユ湡
+            var strNotice = DateTime.Now.ToString("yyyyMMdd") + "\r\n" + Encoding.UTF8.GetString(byteData);
+            if (fileData == strNotice)
+            {
+                //鍏憡鍐呭涓�鑷�,鍒欎笉鎻愮ず
+                return false;
+            }
+            //濡傛灉鍏憡涓嶄竴鑷�,鎴栬�呭凡缁忚繃浜嗕竴澶�,鍒欐樉绀�
+            HdlFileLogic.Current.SaveTextToFile(DirNameResourse.AppNoticeFile, strNotice);
+
+            return true;
+        }
+
+        #endregion
+
+        #region 鈻� 鏂颁簯绔闂瘑鍖檁____________________
+
+        /// <summary>
+        /// appKey(璁块棶浜戠鍥哄畾鐨勪笢瑗�)
+        /// </summary>
+        private const string APP_KEY = "HDL-HOME-APP-TEST";
+        /// <summary>
+        /// 鎴戜篃涓嶇煡閬撹繖鏄粈涔堥涓滆タ
+        /// </summary>
+        private const string SECRET_KEY = "WeJ8TY88vbakCcnvH8G1tDUqzLWY8yss";
+        /// <summary>
+        /// 鑾峰彇褰撳墠鏃堕棿鎴冲��(璁块棶浜戠浣跨敤)
+        /// </summary>
+        /// <returns></returns>
+        private static string GetTimestamp()
+        {
+            System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1)); // 褰撳湴鏃跺尯
+            return ((long)(DateTime.Now - startTime).TotalSeconds).ToString(); // 鐩稿樊绉掓暟
+        }
+
+        /// <summary>
+        /// MD5鍔犲瘑
+        /// </summary>
+        /// <param name="signstr"></param>
+        /// <returns></returns>
+        private static string SignMD5Encrypt(string s)
+        {
+            byte[] sign = System.Security.Cryptography.MD5.Create().ComputeHash(Encoding.UTF8.GetBytes(s));
+            string signstr = string.Empty;
+            foreach (byte item in sign)
+            {
+                signstr += item.ToString("X2");
+            }
+            return signstr.ToLower();
+        }
+
+        /// <summary>
+        /// 鍩虹鏈嶅姟鐨勬帴鍙i兘瑕佹牎楠宻ign,璁$畻sign绛惧悕
+        /// </summary>
+        /// <param name="i_BodyData">body鐨勬暟鎹�</param>
+        /// <returns></returns>
+        private static string GetSignRequestJson(string i_BodyData)
+        {
+            try
+            {
+                //1. 灏唌odel瀹炰綋杞负Dictionary<string, object>
+                var paramDictionary = Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<string, object>>(i_BodyData);
+                //2. 璁$畻sign
+                if (paramDictionary != null)
+                {
+                    paramDictionary.Add("appKey", APP_KEY);
+                    paramDictionary.Add("timestamp", GetTimestamp());
+                    //2.1 瀛楀吀鍗囧簭
+                    paramDictionary = paramDictionary.OrderBy(o => o.Key).ToDictionary(o => o.Key, p => p.Value);
+                    //2.2 鎷兼帴鎸塙RL閿�煎
+                    string str = string.Empty;
+                    foreach (KeyValuePair<string, object> item in paramDictionary)
+                    {
+                        if (item.Value == null)
+                        {
+                            //涓嶆牎楠�
+                            continue;
+                        }
+                        string myValue = item.Value.ToString();
+                        if (myValue == string.Empty)
+                        {
+                            //绌哄瓧绗︿篃涓嶆牎楠�
+                            continue;
+                        }
+                        if (item.Value is bool)
+                        {
+                            //浜戠閭e府娌欓洉璇碽ool绫诲瀷蹇呴』鐢ㄥ皬鍐�
+                            myValue = myValue.ToLower();
+                        }
+                        str += item.Key + "=" + myValue + "&";
+                    }
+                    //2.3 鎷兼帴SECRET_KEY
+                    str = str.Substring(0, str.Length - 1) + SECRET_KEY;
+                    //2.4 MD5杞崲+杞皬鍐�
+                    var signstr = SignMD5Encrypt(str);
+                    paramDictionary.Add("sign", signstr);
+                    return Newtonsoft.Json.JsonConvert.SerializeObject(paramDictionary);
+                }
+                else
+                {
+                    return "";
+                }
+            }
+            catch
+            {
+                return "";
+            }
+        }
+
+        #endregion
+
+        #region 鈻� 涓�鑸柟娉昣__________________________
+
+        /// <summary>
+        /// 鍥轰欢鐨勪俊鎭鐞�
+        /// </summary>
+        /// <param name="Info"></param>
+        /// <param name="remark"></param>
+        private static void DoAdjustFirmwareInformation(FirmwareVersionInfo Info, string remark)
+        {
+            if (string.IsNullOrEmpty(remark) == true)
+            {
+                return;
+            }
+            //鏇存柊鍐呭
+            string[] Arry = remark.Split(new string[] { "\r\n", "\r", "\n" }, StringSplitOptions.None);
+            Info.UpdateContent.AddRange(Arry);
+        }
+
+#endregion
+    }
+}

--
Gitblit v1.8.0