gxc
2020-01-02 00ab3ddb140ba8bb88b5cf572b004a85e1da85e9
ZigbeeApp/Shared/Phone/Device/Logic/DoorLockLogic/LockAddDevice.cs
@@ -46,6 +46,7 @@
                Height = Application.GetRealHeight(69),
                Y = Application.GetRealHeight(92),
                TextID = MyInternationalizationString.devicestate,
                IsBold = true,
            };
            topRowLayout.AddChidren(titleName);
@@ -134,7 +135,7 @@
            };
            this.AddChidren(devicetypehorizontalScrol);
            devicetypehorizontalScrol.SetCornerWithSameRadius(20,HDLUtils.RectCornerBottomLeft);
            devicetypehorizontalScrol.SetCornerWithSameRadius(Application.GetRealHeight(58),HDLUtils.RectCornerBottomLeft);
            middle = new VerticalScrolViewLayout();
            middle.Y = devicetypehorizontalScrol.Bottom + Application.GetRealHeight(40);
@@ -143,7 +144,7 @@
            middle.X = Application.GetRealWidth(58);
            //middle.Radius = (uint)Application.GetRealHeight(50);
            this.AddChidren(middle);
            middle.SetCornerWithSameRadius(20, HDLUtils.RectCornerTopLeft);
            middle.SetCornerWithSameRadius(Application.GetRealHeight(58), HDLUtils.RectCornerTopLeft);
            ///目前支持的设备
            List<DeviceType> deviceTypeList = new List<DeviceType> {
@@ -695,7 +696,8 @@
                Radius = (uint)Application.GetRealHeight(60),
            };
            flMain.AddChidren(devicefra);
            devicefra.SetCornerWithSameRadius(20, HDLUtils.RectCornerTopLeft | HDLUtils.RectCornerTopRight);
            devicefra.SetCornerWithSameRadius(Application.GetRealHeight(58), HDLUtils.RectCornerTopLeft | HDLUtils.RectCornerTopRight);
            #region  -------取消   完成
            var timetype = new RowLayout
            {
@@ -745,7 +747,6 @@
            };
            timetype.AddChidren(Btncomplete);
            #endregion
            string SelectedDeviceStatusaction = "no";
            actionsInfo.Add("LinkType", 0);
@@ -1054,20 +1055,22 @@
                            LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor,
                        };
                        openframelayout.AddChidren(horizontalSeekBarRow);
                        var horizontalSeekBarVol = new HorizontalSeekBar
                        var horizontalSeekBarVol = new DiyImageSeekBar
                        {
                            Y = openrowlayout.Bottom,
                            X = Application.GetRealWidth(80),
                            Width = Application.GetRealWidth(920),
                            Height = Application.GetRealHeight(80),
                            Radius = (uint)Application.GetRealHeight(25),
                            Y = Application.GetRealHeight(25),
                            //Gravity = Gravity.CenterVertical,
                            ProgressColor = ZigbeeColor.Current.LogicProgressColorSelected,
                            Max = 100,
                            SleepTime = 1000,
                            ThumbRadius = 9,
                            IsCanMove = false
                            Height = Application.GetRealHeight(160),
                            IsProgressTextShow = true,//显示百分比
                            IsClickable = false,//进度条是否滑动
                            ProgressBarColor = ZigbeeColor.Current.LogicProgressColorSelected,//选中进度条颜色
                            ThumbImagePath = "ZigeeLogic/progressbtn2.png",//进度条按钮图标
                            ThumbImageHeight = Application.GetRealHeight(56),//进度条按钮图标的高度(默认正方形:宽和高一样)
                            ProgressTextColor = ZigbeeColor.Current.LogicBtnCancelColor,//进度条原颜色
                            ProgressTextSize = 12,//显示百分比字体大小
                            SeekBarViewHeight = Application.GetRealHeight(10),//进度条的高度
                        };
                        horizontalSeekBarRow.AddChidren(horizontalSeekBarVol);
                        openframelayout.AddChidren(horizontalSeekBarVol);
                        #endregion
@@ -1140,7 +1143,7 @@
                        #endregion
                        int Progressvalue = 100;
                        horizontalSeekBarVol.ProgressChanged += (sender, e) =>
                        EventHandler<int> progressclick = (sender, e) =>
                        {
                            SelectedDeviceStatusaction = "yes";
                            Progressvalue = horizontalSeekBarVol.Progress;
@@ -1158,12 +1161,14 @@
                            switchdictionary.Add("Data1", lightbrightnessvalue.ToString());
                        };
                        horizontalSeekBarVol.OnProgressChangedEvent += progressclick;
                        horizontalSeekBarVol.OnStopTrackingTouchEvent += progressclick;
                        ///确认事件
                        EventHandler<MouseEventArgs> openclick = (sender, e) =>
                        {
                            SelectedDeviceStatusaction = "yes";
                            horizontalSeekBarVol.IsCanMove = true;
                            horizontalSeekBarVol.ProgressColor = ZigbeeColor.Current.LogicProgressColorSelected;
                            horizontalSeekBarVol.IsClickable = true;
                            horizontalSeekBarVol.ProgressBarColor = ZigbeeColor.Current.LogicProgressColorSelected;
                            openBtnSelected.Visible = true;
                            closeBtnSelected.Visible = false;
                            takebackBtnSelected.Visible = false;
@@ -1190,8 +1195,8 @@
                        EventHandler<MouseEventArgs> closeclick = (sender, e) =>
                        {
                            SelectedDeviceStatusaction = "yes";
                            horizontalSeekBarVol.IsCanMove = false;
                            horizontalSeekBarVol.ProgressColor = ZigbeeColor.Current.LogicProgressColor;
                            horizontalSeekBarVol.IsClickable = false;
                            horizontalSeekBarVol.ProgressBarColor = ZigbeeColor.Current.LogicProgressColor;
                            openBtnSelected.Visible = false;
                            closeBtnSelected.Visible = true;
                            takebackBtnSelected.Visible = false;
@@ -1215,8 +1220,8 @@
                        EventHandler<MouseEventArgs> takebackclick = (sender, e) =>
                        {
                            SelectedDeviceStatusaction = "yes";
                            horizontalSeekBarVol.IsCanMove = false;
                            horizontalSeekBarVol.ProgressColor = ZigbeeColor.Current.LogicProgressColor;
                            horizontalSeekBarVol.IsClickable = false;
                            horizontalSeekBarVol.ProgressBarColor = ZigbeeColor.Current.LogicProgressColor;
                            openBtnSelected.Visible = false;
                            closeBtnSelected.Visible = false;
                            takebackBtnSelected.Visible = true;
@@ -1258,8 +1263,8 @@
                                        openBtnSelected.Visible = false;
                                        closeBtnSelected.Visible = true;
                                        takebackBtnSelected.Visible = false;
                                        horizontalSeekBarVol.IsCanMove = false;
                                        horizontalSeekBarVol.ProgressColor = ZigbeeColor.Current.LogicProgressColor;
                                        horizontalSeekBarVol.IsClickable = false;
                                        horizontalSeekBarVol.ProgressBarColor = ZigbeeColor.Current.LogicProgressColor;
                                    }
                                    else if (value["Data1"] == "2")
                                    {
@@ -1267,8 +1272,8 @@
                                        openBtnSelected.Visible = false;
                                        closeBtnSelected.Visible = false;
                                        takebackBtnSelected.Visible = true;
                                        horizontalSeekBarVol.IsCanMove = false;
                                        horizontalSeekBarVol.ProgressColor = ZigbeeColor.Current.LogicProgressColor;
                                        horizontalSeekBarVol.IsClickable = false;
                                        horizontalSeekBarVol.ProgressBarColor = ZigbeeColor.Current.LogicProgressColor;
                                    }
                                }
@@ -1279,8 +1284,8 @@
                                    openBtnSelected.Visible = true;
                                    closeBtnSelected.Visible = false;
                                    takebackBtnSelected.Visible = false;
                                    horizontalSeekBarVol.IsCanMove = true;
                                    horizontalSeekBarVol.ProgressColor = ZigbeeColor.Current.LogicProgressColorSelected;
                                    horizontalSeekBarVol.IsClickable = true;
                                    horizontalSeekBarVol.ProgressBarColor = ZigbeeColor.Current.LogicProgressColorSelected;
                                    horizontalSeekBarVol.Progress = int.Parse(value["Data1"]) * 100 / 254;
                                    Progressvalue = horizontalSeekBarVol.Progress;
@@ -1352,20 +1357,22 @@
                            LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor,
                        };
                        openframelayout.AddChidren(horizontalSeekBarRow);
                        var horizontalSeekBarVol = new HorizontalSeekBar
                        var horizontalSeekBarVol = new DiyImageSeekBar
                        {
                            Y = openrowlayout.Bottom,
                            X = Application.GetRealWidth(80),
                            Width = Application.GetRealWidth(920),
                            Height = Application.GetRealHeight(80),
                            Radius = (uint)Application.GetRealHeight(25),
                            Y = Application.GetRealHeight(25),
                            //Gravity = Gravity.CenterVertical,
                            ProgressColor = ZigbeeColor.Current.LogicProgressColorSelected,
                            Max = 100,
                            SleepTime = 1000,
                            ThumbRadius = 9,
                            IsCanMove = false
                            Height = Application.GetRealHeight(160),
                            IsProgressTextShow = true,//显示百分比
                            IsClickable = false,//进度条是否滑动
                            ProgressBarColor = ZigbeeColor.Current.LogicProgressColorSelected,//选中进度条颜色
                            ThumbImagePath = "ZigeeLogic/progressbtn2.png",//进度条按钮图标
                            ThumbImageHeight = Application.GetRealHeight(56),//进度条按钮图标的高度(默认正方形:宽和高一样)
                            ProgressTextColor = ZigbeeColor.Current.LogicBtnCancelColor,//进度条原颜色
                            ProgressTextSize = 12,//显示百分比字体大小
                            SeekBarViewHeight = Application.GetRealHeight(10),//进度条的高度
                        };
                        horizontalSeekBarRow.AddChidren(horizontalSeekBarVol);
                        openframelayout.AddChidren(horizontalSeekBarVol);
                        #endregion
@@ -1405,7 +1412,7 @@
                        #endregion
                        int Progressvalue = 100;
                        horizontalSeekBarVol.ProgressChanged += (sender, e) =>
                        EventHandler<int> progressclick = (sender, e) =>
                        {
                            SelectedDeviceStatusaction = "yes";
                            Progressvalue = horizontalSeekBarVol.Progress;
@@ -1421,12 +1428,14 @@
                            switchdictionary.Add("Data2", horizontalSeekBarVol.Progress.ToString());
                        };
                        horizontalSeekBarVol.OnProgressChangedEvent += progressclick;
                        horizontalSeekBarVol.OnStopTrackingTouchEvent += progressclick;
                        ///确认事件
                        EventHandler<MouseEventArgs> openclick = (sender, e) =>
                        {
                            SelectedDeviceStatusaction = "yes";
                            horizontalSeekBarVol.IsCanMove = true;
                            horizontalSeekBarVol.ProgressColor = ZigbeeColor.Current.LogicProgressColorSelected;
                            horizontalSeekBarVol.IsClickable = true;
                            horizontalSeekBarVol.ProgressBarColor = ZigbeeColor.Current.LogicProgressColorSelected;
                            openBtnSelected.Visible = true;
                            closeBtnSelected.Visible = false;
                            horizontalSeekBarVol.Progress = Progressvalue;
@@ -1450,8 +1459,8 @@
                        EventHandler<MouseEventArgs> closeclick = (sender, e) =>
                        {
                            SelectedDeviceStatusaction = "yes";
                            horizontalSeekBarVol.IsCanMove = false;
                            horizontalSeekBarVol.ProgressColor = ZigbeeColor.Current.LogicProgressColor;
                            horizontalSeekBarVol.IsClickable = false;
                            horizontalSeekBarVol.ProgressBarColor = ZigbeeColor.Current.LogicProgressColor;
                            openBtnSelected.Visible = false;
                            closeBtnSelected.Visible = true;
@@ -1492,8 +1501,8 @@
                                        }
                                        switchdictionary.Add("Data1", "5");
                                        switchdictionary.Add("Data2", value["Data2"]);
                                        horizontalSeekBarVol.IsCanMove = true;
                                        horizontalSeekBarVol.ProgressColor = ZigbeeColor.Current.LogicProgressColorSelected;
                                        horizontalSeekBarVol.IsClickable = true;
                                        horizontalSeekBarVol.ProgressBarColor = ZigbeeColor.Current.LogicProgressColorSelected;
                                        openBtnSelected.Visible = true;
                                        closeBtnSelected.Visible = false;
                                        horizontalSeekBarVol.Progress = int.Parse(value["Data2"]);
@@ -1508,8 +1517,8 @@
                                        switchdictionary.Add("Data1", "1");
                                        openBtnSelected.Visible = false;
                                        closeBtnSelected.Visible = true;
                                        horizontalSeekBarVol.IsCanMove = false;
                                        horizontalSeekBarVol.ProgressColor = ZigbeeColor.Current.LogicProgressColor;
                                        horizontalSeekBarVol.IsClickable = false;
                                        horizontalSeekBarVol.ProgressBarColor = ZigbeeColor.Current.LogicProgressColor;
                                    }
                                }
@@ -1740,27 +1749,21 @@
                        }
                    }
                    break;
                case DeviceType.Thermostat:
                    {
                        #region  ----初始化设备功能数据----
                        Dictionary<string, string> switchdictionary = new Dictionary<string, string>();
                        Dictionary<string, string> temperaturedictionary = new Dictionary<string, string>();
                        Dictionary<string, string> modedictionary = new Dictionary<string, string>();
                        Dictionary<string, string> speeddictionary = new Dictionary<string, string>();
                        taskListInfo.Add(switchdictionary);
                        taskListInfo.Add(temperaturedictionary);
                        taskListInfo.Add(modedictionary);
                        taskListInfo.Add(speeddictionary);
                        dictionary(switchdictionary, "TaskType", "1");
                        dictionary(switchdictionary, "Data2", "0");
                        dictionary(temperaturedictionary, "TaskType", "5");
                        dictionary(modedictionary, "TaskType", "5");
                        dictionary(modedictionary, "Data1", "3");
                        dictionary(speeddictionary, "TaskType", "5");
                        dictionary(speeddictionary, "Data1", "6");
                        taskListInfo.Add(temperaturedictionary);
                        taskListInfo.Add(modedictionary);
                        taskListInfo.Add(speeddictionary);
                        #endregion
                        #region  空调View
@@ -1809,15 +1812,14 @@
                        };
                        devicefra.AddChidren(PickerViewfra);
                        //遮挡空调滑动view;
                        var pausePickerViewfra = new FrameLayout
                        {
                            Y = openframelayout.Bottom,
                            Height = Application.GetRealHeight(600),
                            BackgroundColor = 0x60ffffff,
                        };
                        devicefra.AddChidren(pausePickerViewfra);
                        var mUIPickerView = new UIPickerView
                        {
@@ -1852,6 +1854,9 @@
                            mList1.Add(i.ToString() + " " + "℃");
                        }
                        mUIPickerView.setNPicker(mList1, mList2, mList3);
                        mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnCancelColor, 0);
                        mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnCancelColor, 1);
                        mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnCancelColor, 2);
                        ///默认状态
@@ -1890,9 +1895,13 @@
                        #endregion
                        //默认26,自动,中风
                        int indextemperature = 10, indexmode = 2, indexspeed = 1;
                        mUIPickerView.OnSelectChangeEvent += (s1, s2, s3) =>
                        {
                            indextemperature = s1;
                            indexmode = s2;
                            indexspeed = s3;
                            if (openBtnSelected.Visible)
                            {
                                SelectedDeviceStatusaction = "yes";
@@ -1910,31 +1919,35 @@
                        };
                        #endregion
                        //默认26,自动,中风
                        int indextemperature = 10, indexmode = 2, indexspeed = 1;
                        if (edit && TaskList != null)
                        {
                            foreach (var value in TaskList)
                            {
                                if (value["TaskType"] == "1")
                                if (TaskList.Count == 1)
                                {
                                    dictionary(switchdictionary, "Data1", value["Data1"]);
                                    if (value["Data1"] == "1")
                                    {
                                        openBtnSelected.Visible = true;
                                        closeBtnSelected.Visible = false;
                                        pausePickerViewfra.Height = Application.GetRealHeight(0);
                                    }
                                    else if (value["Data1"] == "0")
                                    {
                                        openBtnSelected.Visible = false;
                                        closeBtnSelected.Visible = true;
                                        pausePickerViewfra.Height = Application.GetRealHeight(600);
                                        break;
                                    }
                                    mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnCancelColor, 0);
                                    mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnCancelColor, 1);
                                    mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnCancelColor, 2);
                                    //数组只有一个元素说明当前空调状态为关;
                                    openBtnSelected.Visible = false;
                                    closeBtnSelected.Visible = true;
                                    pausePickerViewfra.Height = Application.GetRealHeight(600);
                                    //如果空调状态是关;直接跳出for循坏;
                                    break;
                                }
                                else if (value["TaskType"] == "5")
                                else
                                {
                                    mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnSelectedColor, 0);
                                    mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnSelectedColor, 1);
                                    mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnSelectedColor, 2);
                                    openBtnSelected.Visible = true;
                                    closeBtnSelected.Visible = false;
                                    pausePickerViewfra.Height = Application.GetRealHeight(0);
                                }
                                if (value["TaskType"] == "5")
                                {
                                    if (value["Data1"] == "3")
                                    {//3---设置工作模式(1:自动;3:制冷;4:制热;7:送风;8:除湿)
@@ -2022,11 +2035,24 @@
                        ///确认事件
                        EventHandler<MouseEventArgs> openclick = (sender, e) =>
                        {
                            mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnSelectedColor, 0);
                            mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnSelectedColor, 1);
                            mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnSelectedColor, 2);
                            //清除之前数据;
                            taskListInfo.Clear();
                            //加载新数据;
                            dictionary(temperaturedictionary, "TaskType", "5");
                            dictionary(modedictionary, "TaskType", "5");
                            dictionary(modedictionary, "Data1", "3");
                            dictionary(speeddictionary, "TaskType", "5");
                            dictionary(speeddictionary, "Data1", "6");
                            taskListInfo.Add(temperaturedictionary);
                            taskListInfo.Add(modedictionary);
                            taskListInfo.Add(speeddictionary);
                            pausePickerViewfra.Height = Application.GetRealHeight(0);
                            SelectedDeviceStatusaction = "yes";
                            openBtnSelected.Visible = true;
                            closeBtnSelected.Visible = false;
                            dictionary(switchdictionary, "Data1", "1");
                            var temperature = mList1[indextemperature].Split(' ')[0];
                            var modestring = mList2[indexmode].Split(' ')[0];
                            var speedstring = mList3[indexspeed].Split(' ')[0];
@@ -2045,12 +2071,20 @@
                        ///取消事件
                        EventHandler<MouseEventArgs> closeclick = (sender, e) =>
                        {
                            mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnCancelColor, 0);
                            mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnCancelColor, 1);
                            mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnCancelColor, 2);
                            //清除之前数据;
                            taskListInfo.Clear();
                            dictionary(modedictionary, "TaskType", "5");
                            dictionary(modedictionary, "Data1", "3");
                            dictionary(modedictionary, "Data2", "0");
                            //加载新数据;
                            taskListInfo.Add(modedictionary);
                            pausePickerViewfra.Height = Application.GetRealHeight(600);
                            SelectedDeviceStatusaction = "yes";
                            openBtnSelected.Visible = false;
                            closeBtnSelected.Visible = true;
                            dictionary(switchdictionary, "Data1", "0");
                        };
                        closerowlayout.MouseUpEventHandler += closeclick;
                        btnclose.MouseUpEventHandler += closeclick;
@@ -2061,7 +2095,6 @@
            }
            Btncomplete.MouseUpEventHandler += (sender, e) =>
            {
@@ -2073,9 +2106,9 @@
                {
                    if (!edit)
                    {
                        var alert = new Alert(Language.StringByID(MyInternationalizationString.Prompt),
                                               Language.StringByID(MyInternationalizationString.selectdevicestatuscondition),
                                               Language.StringByID(MyInternationalizationString.complete));
                        var alert = new UserCenter.ShowMsgControl(UserCenter.ShowMsgType.Normal,
               Language.StringByID(MyInternationalizationString.selectdevicestatuscondition),
               Language.StringByID(MyInternationalizationString.confrim));
                        alert.Show();
                        return;
                    }