黄学彪
2020-12-16 0d9f64668fd7350d6a21fd157e32009a96d98134
ZigbeeApp/Shared/Phone/Common/Logic/HdlDeviceUpdateLogic.cs
File was renamed from ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlDeviceUpdateLogic.cs
@@ -3,12 +3,12 @@
using System.Text;
using ZigBee.Device;
namespace Shared.Phone.UserCenter
namespace Shared.Phone
{
    /// <summary>
    /// HDL设备升级的逻辑
    /// </summary>
    public class HdlDeviceUpdateLogic : HdlDeviceUpdateCommonLogic
    public class HdlDeviceUpdateLogic : DeviceUpdateCommon
    {
        #region ■ 变量声明___________________________
@@ -83,9 +83,9 @@
            if (this.UpdateStatu == UpdateStatuMode.Wait)
            {
                //如果是等待模式,再次点击时,移除列表
                if (FirmwareUpdateResourse.dicUpdateList.ContainsKey(otaDevice.DeviceAddr) == true)
                if (HdlFirmwareUpdateResourse.dicUpdateList.ContainsKey(otaDevice.DeviceAddr) == true)
                {
                    FirmwareUpdateResourse.dicUpdateList.Remove(otaDevice.DeviceAddr);
                    HdlFirmwareUpdateResourse.dicUpdateList.Remove(otaDevice.DeviceAddr);
                }
                //取消
                this.UpdateStatu = UpdateStatuMode.None;
@@ -101,13 +101,13 @@
            //进入等待模式
            this.UpdateStatu = UpdateStatuMode.Wait;
            FirmwareUpdateResourse.dicUpdateList[otaDevice.DeviceAddr] = this;
            HdlFirmwareUpdateResourse.dicUpdateList[otaDevice.DeviceAddr] = this;
            //等待中…
            this.UpdateStatuChangedEvent?.Invoke(0, Language.StringByID(R.MyInternationalizationString.uWaitting));
            //执行下一个可更新的固件的更新操作
            HdlFirmwareUpdateLogic.DoUpdateNextFirmware();
            HdlFirmwareUpdateLogic.Current.DoUpdateNextFirmware();
        }
        /// <summary>
@@ -499,7 +499,7 @@
            this.UpdateStatuChangedEvent?.Invoke(0, Language.StringByID(R.MyInternationalizationString.uDeviceUpdating));
            this.SetProgressValue(0);
            FirmwareUpdateResourse.dicUpdateList[otaDevice.DeviceAddr] = this;
            HdlFirmwareUpdateResourse.dicUpdateList[otaDevice.DeviceAddr] = this;
            //同步进度
            this.zbGateway.ReportAction += UpdateDeviceProgress;
        }
@@ -534,7 +534,7 @@
                this.UpdateStatu = UpdateStatuMode.None;
                //执行下一个可更新的固件的更新操作
                HdlFirmwareUpdateLogic.DoUpdateNextFirmware();
                HdlFirmwareUpdateLogic.Current.DoUpdateNextFirmware();
                this.UpdateStatuChangedEvent?.Invoke(2, "");
            };
            contr.Show();
@@ -556,12 +556,12 @@
            {
                System.Threading.Thread.Sleep(3000);
                string checkKey = Common.LocalDevice.Current.GetDeviceMainKeys(otaDevice.DeviceAddr, otaDevice.DeviceEpoint);
                string checkKey = HdlDeviceCommonLogic.Current.GetDeviceMainKeys(otaDevice.DeviceAddr, otaDevice.DeviceEpoint);
                HdlGatewayReceiveLogic.Current.AddAttributeEvent("HdlDeviceUpdate" + otaDevice.DeviceAddr, ReceiveComandDiv.A设备属性上报, (report) =>
                 {
                     if (report.DeviceStatusReport.CluterID == (int)Cluster_ID.Ota)
                     {
                         string mainKey = Common.LocalDevice.Current.GetDeviceMainKeys(report.DeviceAddr, report.DeviceEpoint);
                         string mainKey = HdlDeviceCommonLogic.Current.GetDeviceMainKeys(report.DeviceAddr, report.DeviceEpoint);
                         if (checkKey == mainKey)
                         {
                            //已经接收得到
@@ -571,13 +571,13 @@
                 });
                //发送命令
                HdlDeviceImageInfoLogic.Current.SetFirmwareVersionComand(otaDevice);
                HdlDeviceAttributeLogic.Current.ReadDeviceFirmwareVersion(otaDevice);
                System.Threading.Thread.Sleep(1500);
                int count = 12;
                while (this.IsFinishUpdate == false && count > 0)
                {
                    HdlDeviceImageInfoLogic.Current.SetFirmwareVersionComand(otaDevice);
                    HdlDeviceAttributeLogic.Current.ReadDeviceFirmwareVersion(otaDevice);
                    //等待一下设备信息的反馈
                    System.Threading.Thread.Sleep(2000);
                    count--;
@@ -592,7 +592,7 @@
                //升级完成
                this.UpdateStatu = UpdateStatuMode.UpdateFinish;
                HdlFirmwareUpdateLogic.DoUpdateNextFirmware();
                HdlFirmwareUpdateLogic.Current.DoUpdateNextFirmware();
                //设备升级成功!
                this.UpdateStatuChangedEvent?.Invoke(1, Language.StringByID(R.MyInternationalizationString.uDeviceUpdateSuccess));
@@ -611,7 +611,7 @@
            //状态变更
            this.IsFinishUpdate = true;
            //执行下一个升级
            HdlFirmwareUpdateLogic.DoUpdateNextFirmware();
            HdlFirmwareUpdateLogic.Current.DoUpdateNextFirmware();
        }
        /// <summary>
@@ -622,7 +622,7 @@
            //状态变更
            this.IsFinishUpdate = true;
            //执行下一个升级
            HdlFirmwareUpdateLogic.DoUpdateNextFirmware();
            HdlFirmwareUpdateLogic.Current.DoUpdateNextFirmware();
        }
        #endregion