黄学彪
2019-12-20 23fb45dd846ed8b62304c408c6bbe64265d4ac8b
ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlFirmwareUpdateLogic.cs
@@ -18,38 +18,33 @@
        public static void DoUpdateNextFirmware()
        {
            //下一个要执行更新的网关
            HdlGatewayUpdateLogic gwControl = null;
            foreach (var contr in FirmwareUpdateResourse.dicGatewayUpdateList.Values)
            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)
                {
                    //下一个升级的就是它了
                    gwControl = contr;
                    if (contr.ClassDiv == 1 && gwControl == null)
                    {
                        //下一个升级的就是它了
                        gwControl = contr;
                    }
                    else if (contr.ClassDiv == 2 && deviceControl == null)
                    {
                        //下一个升级的就是它了
                        deviceControl = contr;
                    }
                }
            }
            HdlDeviceUpdateLogic deviceControl = null;
            foreach (var contr in FirmwareUpdateResourse.dicDeviceUpdateList.Values)
            {
                //如果别的还在升级中,则不再处理
                if (contr.IsFinishUpdate == false)
                {
                    return;
                }
                //如果这个设备是在等待列表的话
                if (contr.UpdateStatu == UpdateStatuMode.Wait && deviceControl == null)
                {
                    //下一个升级的就是它了
                    deviceControl = contr;
                }
            }
            HdlThreadLogic.Current.RunMain(() =>
            HdlThreadLogic.Current.RunThread(() =>
            {
                if (gwControl != null)
                {
@@ -218,6 +213,11 @@
            FirmwareVersionInfo newFirInfo = null;
            foreach (var verInfo in listdata)
            {
                if (verInfo.Name.EndsWith(".bin") == true)
                {
                    //它不是升级固件,  .bin是特殊的
                    continue;
                }
                if (verInfo.FirmwareVersion > nowVersion)
                {
                    nowVersion = verInfo.FirmwareVersion;