From a4924de3136289d10cabbf2f61a228387d44ded7 Mon Sep 17 00:00:00 2001
From: gxc <guoxuecheng@guoxuechengdeMacBook-Pro.local>
Date: 星期四, 07 十一月 2019 13:48:36 +0800
Subject: [PATCH] Merge branch 'dev-tzy' into DEV_GXC

---
 ZigbeeApp/Shared/Phone/UserCenter/Gateway/Add/GatewayProductInfoForm.cs |  221 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 221 insertions(+), 0 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Gateway/Add/GatewayProductInfoForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Gateway/Add/GatewayProductInfoForm.cs
new file mode 100755
index 0000000..1eca0ed
--- /dev/null
+++ b/ZigbeeApp/Shared/Phone/UserCenter/Gateway/Add/GatewayProductInfoForm.cs
@@ -0,0 +1,221 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Text;
+using ZigBee.Device;
+
+namespace Shared.Phone.UserCenter.GatewayAdd
+{
+    /// <summary>
+    /// 缃戝叧浜у搧淇℃伅鐨勭晫闈�
+    /// </summary>
+    public class GatewayProductInfoForm : EditorCommonForm
+    {
+        #region 鈻� 鍙橀噺澹版槑___________________________
+
+        /// <summary>
+        /// 褰撳墠閫夋嫨鐨勭綉鍏�
+        /// </summary>
+        private ZbGateway zbGateway = null;
+
+        #endregion
+
+        #region 鈻� 鍒濆鍖朹____________________________
+
+        /// <summary>
+        /// 鐢婚潰鏄剧ず(搴曞眰浼氬浐瀹氳皟鐢ㄦ鏂规硶锛屽�熶互瀹屾垚鐢婚潰鍒涘缓)
+        /// </summary>
+        /// <param name="i_zbGateway">褰撳墠閫夋嫨鐨勭綉鍏�</param>
+        public void ShowForm(ZbGateway i_zbGateway)
+        {
+            this.zbGateway = i_zbGateway;
+
+            //璁剧疆鏍囬淇℃伅
+            base.SetTitleText(Language.StringByID(R.MyInternationalizationString.uAddGateway));
+
+            //鍒濆鍖栦腑閮ㄦ帶浠�
+            this.InitMiddleFrame();
+        }
+
+        /// <summary>
+        /// 鍒濆鍖栦腑閮ㄦ帶浠�
+        /// </summary>
+        private void InitMiddleFrame()
+        {
+            //娓呯┖bodyFrame
+            this.ClearBodyFrame();
+
+            bool gateWayExist = HdlGatewayLogic.Current.IsGatewayExist(zbGateway);
+
+            //鍥剧墖
+            var btnImage = new PicViewControl(855, 570, true);
+            btnImage.Y = Application.GetRealHeight(58);
+            btnImage.Gravity = Gravity.CenterHorizontal;
+            HdlGatewayLogic.Current.SetRealGatewayPictrue(btnImage, zbGateway);
+            bodyFrameLayout.AddChidren(btnImage);
+
+            //鍒濆鍖栨甯�
+            var tableContr = new InformationEditorControl();
+            var listview = tableContr.InitControl(bodyFrameLayout, Language.StringByID(R.MyInternationalizationString.uDeviceEditor), 708, 1028);
+
+            //璁惧澶囨敞(濡傛灉杩欎釜缃戝叧娌℃湁缁戝畾鐨勮瘽,鍙厑璁告煡鐪�,涓嶈兘鏇存敼)
+            string caption = Language.StringByID(R.MyInternationalizationString.uDeviceNote);
+            string deviceName = HdlGatewayLogic.Current.GetGatewayName(zbGateway);
+            FrameCaptionInputControl btnGateName = null;
+            if (gateWayExist == true)
+            {
+                btnGateName = new FrameCaptionInputControl(caption, deviceName, listview.rowSpace / 2);
+                listview.AddChidren(btnGateName);
+                btnGateName.InitControl();
+                //鍒掔嚎
+                btnGateName.AddBottomLine();
+                btnGateName.txtInput.FinishInputEvent += () =>
+                {
+                    string oldName = HdlGatewayLogic.Current.GetGatewayName(zbGateway);
+                    if (btnGateName.Text == string.Empty)
+                    {
+                        btnGateName.Text = oldName;
+                    }
+                    if (oldName != btnGateName.Text)
+                    {
+                        //淇敼鍚嶅瓧
+                        this.SetGatewayName(btnGateName.Text, false);
+                    }
+                };
+            }
+            else
+            {
+                var btnNote = new FrameCaptionViewControl(caption, deviceName, listview.rowSpace / 2);
+                btnNote.UseClickStatu = false;
+                listview.AddChidren(btnNote);
+                btnNote.InitControl();
+                //鍒掔嚎
+                btnNote.AddBottomLine();
+            }
+
+            //璁惧绫诲瀷
+            caption = Language.StringByID(R.MyInternationalizationString.uDeviceType);
+            var btnType = new FrameCaptionViewControl(caption, string.Empty, listview.rowSpace / 2);
+            btnType.UseClickStatu = false;
+            listview.AddChidren(btnType);
+            btnType.InitControl();
+            //鍒掔嚎
+            btnType.AddBottomLine();
+            HdlGatewayLogic.Current.SetGatewayImageText(btnType.txtView, zbGateway);
+
+            //鎵�灞炲尯鍩�
+            caption = Language.StringByID(R.MyInternationalizationString.uBelongArea);
+            var btnBeloneArea = new FrameCaptionViewControl(caption, Common.Config.Instance.Home.Name, listview.rowSpace / 2);
+            btnBeloneArea.UseClickStatu = false;
+            listview.AddChidren(btnBeloneArea);
+            btnBeloneArea.InitControl();
+            //鍒掔嚎
+            btnBeloneArea.AddBottomLine();
+
+            //瀹屾垚鍒濆鍖栨甯�
+            tableContr.FinishInitControl(bodyFrameLayout, listview);
+
+            if (gateWayExist == true)
+            {
+                //鏇村閰嶇疆
+                var btnHelp = new NormalViewControl(bodyFrameLayout.Width, Application.GetRealHeight(49), false);
+                btnHelp.Y = Application.GetRealHeight(1388);
+                btnHelp.TextSize = 12;
+                btnHelp.TextAlignment = TextAlignment.Center;
+                btnHelp.TextColor = UserCenterColor.Current.TextOrangeColor;
+                btnHelp.Text = Language.StringByID(R.MyInternationalizationString.uMoreSettion);
+                btnHelp.ButtonClickEvent += (sender, e) =>
+                {
+                    var form = new GatewayManage.GatewayInfoEditorForm();
+                    this.AddFromAndRemoveNowForm(form, zbGateway);
+                };
+                bodyFrameLayout.AddChidren(btnHelp);
+                //搴曠嚎
+                int lineWidth = btnHelp.GetRealWidthByText(12);
+                var btnLine = new NormalViewControl(lineWidth, ControlCommonResourse.BottomLineHeight, false);
+                btnLine.BackgroundColor = UserCenterColor.Current.TextOrangeColor;
+                btnLine.Gravity = Gravity.CenterHorizontal;
+                btnLine.Y = btnHelp.Bottom - Application.GetRealHeight(8);
+                bodyFrameLayout.AddChidren(btnLine);
+            }
+
+            //瀹屾垚鎸夐挳
+            var btnFinish = new BottomClickButton();
+            btnFinish.TextID = R.MyInternationalizationString.uFinish;
+            bodyFrameLayout.AddChidren(btnFinish);
+            btnFinish.MouseUpEventHandler += (sender, e) =>
+            {
+                if (gateWayExist == false)
+                {
+                    //濡傛灉杩欎釜缃戝叧杩樻病鏈夌粦瀹�,鍒欑洿鎺ュ叧闂晫闈�
+                    this.CloseForm();
+                }
+                //瀹屾垚鎸夐挳鎸変笅
+                this.FinishButtonClick(btnGateName.Text);
+            };
+        }
+
+        #endregion
+
+        #region 鈻� 瀹屾垚鎸夐挳鎸変笅_______________________
+
+        /// <summary>
+        /// 瀹屾垚鎸夐挳鎸変笅
+        /// </summary>
+        /// <param name="gwName">缃戝叧鍚嶅瓧</param>
+        private void FinishButtonClick(string gwName)
+        {
+            if (string.IsNullOrEmpty(gwName) == true)
+            {
+                //璇疯緭鍏ョ綉鍏冲悕绉�
+                string msg = Language.StringByID(R.MyInternationalizationString.uGatewayNameMastInput);
+                this.ShowMassage(ShowMsgType.Error, msg);
+                return;
+            }
+            HdlThreadLogic.Current.RunThread(() =>
+            {
+                //淇敼鍚嶅瓧
+                this.SetGatewayName(gwName, true);
+            });
+        }
+
+        #endregion
+
+        #region 鈻� 淇敼鍚嶅瓧___________________________
+
+        /// <summary>
+        /// 璁剧疆缃戝叧鍚嶅瓧
+        /// </summary>
+        /// <param name="gatewayName">缃戝叧鍚嶇О</param>
+        /// <param name="closeForm">鍏抽棴鐣岄潰</param>
+        private async void SetGatewayName(string gatewayName, bool closeForm)
+        {
+            //鎵撳紑杩涘害鏉�
+            this.ShowProgressBar();
+            //淇敼鏈湴缃戝叧鍚�
+            var result = await HdlGatewayLogic.Current.ReName(zbGateway, gatewayName);
+            //鍏抽棴杩涘害鏉�
+            this.CloseProgressBar();
+
+            //缃戝叧淇敼澶辫触
+            if (result == false)
+            {
+                return;
+            }
+            if (closeForm == true)
+            {
+                HdlThreadLogic.Current.RunMain(() =>
+                {
+                    //鍏抽棴鑷韩
+                    this.CloseForm();
+                    //鏄惁鏄富椤垫坊鍔�
+                    if (UserCenterResourse.DicActionForm.ContainsKey("GatewayListForm") == false)
+                    {
+                        var form = new GatewayAddSuccessForm();
+                        form.AddForm();
+                    }
+                });
+            }
+        }
+        #endregion
+    }
+}

--
Gitblit v1.8.0