黄学彪
2020-12-17 9f326f4000847e6167d8166fa2f6a66f53cb3734
ZigbeeApp/Shared/Phone/UserCenter/Gateway/Update/GatewayHistoryFirmwareVersionForm.cs
@@ -77,29 +77,30 @@
            bodyFrameLayout.AddChidren(listView);
            //网关
            var listData1 = HdlFirmwareUpdateLogic.GetFirmwareVersionListInfo(FirmwareLevelType.Linux,
                 upDatezbGateway.getGwInfo.LinuxHWVersion.ToString(),
                 upDatezbGateway.getGwInfo.LinuxImageType.ToString());
            var listData1 = HdlFirmwareUpdateLogic.Current.GetFirmwareVersionListInfo(FirmwareLevelType.Linux,
                 upDatezbGateway.LinuxHardVersion.ToString(),
                 upDatezbGateway.LinuxImageType.ToString());
            //协调器
            var listData2 = HdlFirmwareUpdateLogic.GetFirmwareVersionListInfo(FirmwareLevelType.Coordinator,
                 upDatezbGateway.getGwInfo.ZbHWVersion.ToString(),
                 upDatezbGateway.getGwInfo.ZbImageType.ToString());
            var listData2 = HdlFirmwareUpdateLogic.Current.GetFirmwareVersionListInfo(FirmwareLevelType.A协调器,
                 upDatezbGateway.CoordinatorHardVersion.ToString(),
                 upDatezbGateway.CoordinatorImageId.ToString());
            //虚拟驱动
            var listData3 = new List<FirmwareVersionInfo>();
            if (this.listVode != null && this.listVode.Count > 0)
            {
                //如果这个网关要有虚拟驱动这个东西的时候才考虑
                listData3 = HdlFirmwareUpdateLogic.GetFirmwareVersionListInfo(FirmwareLevelType.VirtualDevice,
                listData3 = HdlFirmwareUpdateLogic.Current.GetFirmwareVersionListInfo(FirmwareLevelType.A虚拟驱动,
                     this.listVode[0].DriveHwVersion.ToString(),
                     this.listVode[0].DriveImageType.ToString());
            }
            HdlThreadLogic.Current.RunMainInThread(() =>
            {
                int fVersion1 = upDatezbGateway.getGwInfo.LinuxFWVersion;
                string imageType1 = upDatezbGateway.getGwInfo.LinuxImageType.ToString();
                bool canAddTitle = true;
                int fVersion1 = upDatezbGateway.LinuxFirmwareVersion;
                string imageType1 = upDatezbGateway.LinuxImageType.ToString();
                foreach (var data in listData1)
                {
                    if (data.ImagType == imageType1 && fVersion1 == data.FirmwareVersion)
@@ -107,11 +108,17 @@
                        //同一个东西,不显示出来
                        continue;
                    }
                    if (canAddTitle == true)
                    {
                        this.AddTitleRowlayout("Linux模块");
                        canAddTitle = false;
                    }
                    this.AddRowlayout(data, FirmwareLevelType.Linux);
                }
                int fVersion2 = upDatezbGateway.getGwInfo.ZbFWVersion;
                string imageType2 = upDatezbGateway.getGwInfo.ZbImageType.ToString();
                canAddTitle = true;
                int fVersion2 = upDatezbGateway.CoordinatorFirmwareVersion;
                string imageType2 = upDatezbGateway.CoordinatorImageId.ToString();
                foreach (var data in listData2)
                {
                    if (data.ImagType == imageType2 && fVersion2 == data.FirmwareVersion)
@@ -119,9 +126,15 @@
                        //同一个东西,不显示出来
                        continue;
                    }
                    this.AddRowlayout(data, FirmwareLevelType.Coordinator);
                    if (canAddTitle == true)
                    {
                        this.AddTitleRowlayout("协调器模块");
                        canAddTitle = false;
                    }
                    this.AddRowlayout(data, FirmwareLevelType.A协调器);
                }
                canAddTitle = true;
                string imageType3 = this.listVode[0].DriveImageType.ToString();
                foreach (var data in listData3)
                {
@@ -130,7 +143,12 @@
                        //同一个东西,不显示出来
                        continue;
                    }
                    this.AddRowlayout(data, FirmwareLevelType.VirtualDevice);
                    if (canAddTitle == true)
                    {
                        this.AddTitleRowlayout("虚拟设备模块");
                        canAddTitle = false;
                    }
                    this.AddRowlayout(data, FirmwareLevelType.A虚拟驱动);
                }
                listView.AdjustRealHeight(Application.GetRealHeight(23));
            });
@@ -152,13 +170,12 @@
            rowlayout.AddChidren(btnIcon);
            //指定的网关
            var btnGateway = rowlayout.AddLeftCaption(info.ShowName, Application.GetRealWidth(800), rowlayout.Height / 2, false);
            rowlayout.AddChidren(btnGateway);
            rowlayout.AddTopView(info.ShowName, 800);
            //固件信息
            var btnVersion = rowlayout.AddLeftCaption(Common.LocalDevice.Current.AppendVersion(info.FirmwareVersion), Application.GetRealWidth(800), rowlayout.Height / 2, false);
            btnVersion.Y = btnGateway.Bottom;
            rowlayout.AddChidren(btnVersion);
            string firmwareText = HdlDeviceCommonLogic.Current.AppendVersion(info.FirmwareVersion);
            firmwareText += "        " + HdlCommonLogic.Current.ConvertUtcTimeToLocalTime(info.CreatedOnUtc).ToString("yyyy/MM/dd HH:mm:ss");
            rowlayout.AddBottomView(firmwareText, 800);
            //向右的图标
            rowlayout.AddRightArrow();
@@ -166,8 +183,7 @@
            rowlayout.ButtonClickEvent += (sender, e) =>
            {
                string gwID = HdlGatewayLogic.Current.GetGatewayId(upDatezbGateway);
                if (FirmwareUpdateResourse.dicUpdateList.ContainsKey(gwID) == true)
                if (HdlFirmwareUpdateResourse.dicUpdateList.ContainsKey(upDatezbGateway.GwId) == true)
                {
                    this.CloseForm();
                    return;
@@ -176,11 +192,11 @@
                {
                    this.gatewayFirmware = info;
                }
                else if (levelType == FirmwareLevelType.Coordinator)
                else if (levelType == FirmwareLevelType.A协调器)
                {
                    this.coordinatorFirmware = info;
                }
                else if (levelType == FirmwareLevelType.VirtualDevice)
                else if (levelType == FirmwareLevelType.A虚拟驱动)
                {
                    this.virtualFirmware = info;
                    this.virtualFirmware.VirtualCode = this.listVode[0].DriveCode;
@@ -193,6 +209,19 @@
        }
        /// <summary>
        /// 添加标题行
        /// </summary>
        /// <param name="title"></param>
        private void AddTitleRowlayout(string title)
        {
            var rowlayout = new FrameRowControl();
            rowlayout.UseClickStatu = false;
            this.listView.AddChidren(rowlayout);
            rowlayout.AddLeftCaption(title, 800);
        }
        /// <summary>
        /// 界面关闭
        /// </summary>
        public override void CloseFormBefore()