黄学彪
2020-02-21 bd46c57c77c276014db3192a4e2cc96e23c93202
ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceMacInfoEditorForm.cs
@@ -45,6 +45,11 @@
        public void ShowForm(string deviceMac)
        {
            this.listNewDevice = Common.LocalDevice.Current.GetDevicesByMac(deviceMac);
            if (listNewDevice.Count == 0)
            {
                //针对单纯只有一个200端点的设备
                listNewDevice.Add(Common.LocalDevice.Current.GetOTADevice(deviceMac));
            }
            this.listDeviceType.Clear();
            foreach (var device in listNewDevice)
@@ -131,6 +136,11 @@
            {
                foreach (var device in this.listNewDevice)
                {
                    if (device is OTADevice)
                    {
                        //针对单纯只有一个200端点的设备
                        continue;
                    }
                    var room = Room.CurrentRoom.GetRoomByDevice(device);
                    string mainKeys = LocalDevice.Current.GetDeviceMainKeys(device);
                    if (room == null)
@@ -217,8 +227,12 @@
                this.AddDirectionAndLimitRow();
                //添加【手拉控制】行(开合帘专用)
                this.AddHandPullControlRow();
                //添加【按键设置】行(面板专用)
                this.AddPanelSettionRow();
                //添加【按键设置】行(方悦专用) --这个有可能和面板重叠
                if (this.AddFangyuePanelSettionRow() == false)
                {
                    //添加【按键设置】行(面板专用)
                    this.AddPanelSettionRow();
                }
                //添加【功能设置】行
                this.AddFunctionSettionRow();
                //添加【干接点设置】行
@@ -442,7 +456,7 @@
        #region ■ 按键设置(面板)_____________________
        /// <summary>
        /// 添加【按键设置】行
        /// 添加【按键设置】行(面板)
        /// </summary>
        private void AddPanelSettionRow()
        {
@@ -465,6 +479,56 @@
                var form = new DevicePanel.PanelButtonSettionForm();
                form.AddForm(listNewDevice[0]);
            };
        }
        #endregion
        #region ■ 按键设置(方悦)_____________________
        /// <summary>
        /// 添加【按键设置】行(方悦)
        /// </summary>
        private bool AddFangyuePanelSettionRow()
        {
            if (deviceEnumInfo.ConcreteType == DeviceConcreteType.ButtonPanel_FangyueTwo
                || deviceEnumInfo.ConcreteType == DeviceConcreteType.ButtonPanel_FangyueFour
                || deviceEnumInfo.ConcreteType == DeviceConcreteType.ButtonPanel_FangyueEight
                || deviceEnumInfo.ConcreteType == DeviceConcreteType.ButtonPanel_FangyueEnvironment
                || deviceEnumInfo.ConcreteType == DeviceConcreteType.ButtonPanel_FangyueNewWind)
            {
                //按键设置
                string caption = Language.StringByID(R.MyInternationalizationString.uPanelSettion);
                var btnFunction = new FrameRowControl(listview.rowSpace / 2);
                listview.AddChidren(btnFunction);
                btnFunction.AddLeftCaption(caption, 600);
                //向右图标
                btnFunction.AddRightArrow();
                //底线
                btnFunction.AddBottomLine();
                btnFunction.ButtonClickEvent += (sender, e) =>
                {
                    if (deviceEnumInfo.ConcreteType == DeviceConcreteType.ButtonPanel_FangyueTwo
                    || deviceEnumInfo.ConcreteType == DeviceConcreteType.ButtonPanel_FangyueFour
                    || deviceEnumInfo.ConcreteType == DeviceConcreteType.ButtonPanel_FangyueEight)
                    {
                        //方悦面板的按键配置
                        var form = new DevicePanel.PanelFangyueButtonSettionForm();
                        form.AddForm(listNewDevice[0]);
                    }
                    else if (deviceEnumInfo.ConcreteType == DeviceConcreteType.ButtonPanel_FangyueEnvironment)
                    {
                        //方悦环境面板的按键配置
                        var form = new DevicePanel.PanelFangyueEnvironmentButtonSettionForm();
                        form.AddForm(listNewDevice[0]);
                    }
                    else
                    {
                        //方悦新风面板的按键配置
                    }
                };
                return true;
            }
            return false;
        }
        #endregion
@@ -577,6 +641,12 @@
            {
                return;
            }
            if (deviceEnumInfo.ConcreteType == DeviceConcreteType.ButtonPanel_FangyueEnvironment
                || deviceEnumInfo.ConcreteType == DeviceConcreteType.ButtonPanel_FangyueNewWind)
            {
                //环境面板没有功能设置
                return;
            }
            //功能设置
            string caption = Language.StringByID(R.MyInternationalizationString.uFunctionSettingUp);
@@ -589,8 +659,16 @@
            btnFunction.AddBottomLine();
            btnFunction.ButtonClickEvent += (sender, e) =>
            {
                //方悦面板
                if (deviceEnumInfo.ConcreteType == DeviceConcreteType.ButtonPanel_FangyueTwo
                    || deviceEnumInfo.ConcreteType == DeviceConcreteType.ButtonPanel_FangyueFour
                    || deviceEnumInfo.ConcreteType == DeviceConcreteType.ButtonPanel_FangyueEight)
                {
                    var form = new DevicePanel.PanelFangyueFunctionSettionForm();
                    form.AddForm(listNewDevice[0]);
                }
                //河东的面板设备
                if (deviceEnumInfo.BeloneType == DeviceBeloneType.A按键面板 && deviceEnumInfo.IsHdlDevice == true)
                else if (deviceEnumInfo.BeloneType == DeviceBeloneType.A按键面板 && deviceEnumInfo.IsHdlDevice == true)
                {
                    var form = new DevicePanel.PanelFunctionSettionForm();
                    form.AddForm(listNewDevice[0]);
@@ -724,10 +802,12 @@
        /// </summary>
        private void AddIndoorUnitSettionRow()
        {
            if (this.deviceEnumInfo.ConcreteType != DeviceConcreteType.AirConditioner_ZbGateway)
            if (this.deviceEnumInfo.ConcreteType != DeviceConcreteType.AirConditioner_ZbGateway
                || this.listNewDevice[0] is OTADevice)//追加:单纯只有200端点的话,不显示这个菜单
            {
                return;
            }
            //室内机设置
            string caption = Language.StringByID(R.MyInternationalizationString.uIndoorUnitSettion);
            var btnFunction = new FrameRowControl(listview.rowSpace / 2);
@@ -937,7 +1017,7 @@
                {
                    //中央空调的升级的话,是特殊的
                    var form = new DeviceAirConditioner.ACZbGatewayUpdateMenuForm();
                    form.AddForm((AC)listNewDevice[0], btnNewVersion.Visible);
                    form.AddForm(listNewDevice[0], btnNewVersion.Visible);
                }
                btnNewVersion.Visible = false;
            };
@@ -1196,7 +1276,7 @@
            HdlThreadLogic.Current.RunThread(async () =>
            {
                //读取空调模块版本
                var result = await ((AC)listNewDevice[0]).ReadACFirewareVersionAsync();
                var result = await HdlDeviceAirConditionerLogic.Current.ReadACFirewareVersionAsync(listNewDevice[0]);
                if (result == null || result.readACFirewareVersionResponData == null || result.readACFirewareVersionResponData.Status != 0)
                {
                    HdlThreadLogic.Current.RunMain(() =>