From f71e74b5f0d2716fbf05da016cdaa18d64e09f80 Mon Sep 17 00:00:00 2001
From: xm <1271024303@qq.com>
Date: 星期四, 31 十二月 2020 17:01:18 +0800
Subject: [PATCH] 又换完成最新门锁。空气质量传感器完成数据和基本配置功能。开发图表和自动化的同事可下载此代码

---
 ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceFunctionSettionForm.cs |  135 ++++++++++++++++++++++++++++++++------------
 1 files changed, 97 insertions(+), 38 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceFunctionSettionForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceFunctionSettionForm.cs
index 36d7d65..aa9393b 100644
--- a/ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceFunctionSettionForm.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/Device/DeviceFunctionSettionForm.cs
@@ -1,7 +1,6 @@
 锘縰sing System;
 using System.Collections.Generic;
 using System.Text;
-using Java.Util;
 using ZigBee.Device;
 
 namespace Shared.Phone.UserCenter.Device
@@ -95,7 +94,17 @@
         this.deviceObj.DeviceEpoint = 1;
         this.listview = tableContr.InitControl(listBackControl.frameTable, Language.StringByID(R.MyInternationalizationString.uDeviceEditor), 1342);
       }
-
+      else if (this.deviceObj.Type == DeviceType.TemperatureSensor)
+      {
+        //绌烘皵璐ㄩ噺浼犳劅鍣� 
+        //鑾峰彇璁惧绫诲瀷
+        var deviceEnumInfo = Common.LocalDevice.Current.GetMyDeviceEnumInfo(new List<CommonDevice>() { this.deviceObj });
+        //绌烘皵璐ㄩ噺浼犳劅鍣�
+        if (deviceEnumInfo.ConcreteType == Common.DeviceConcreteType.AirQualitySensor)
+        {
+          this.listview = tableContr.InitControl(listBackControl.frameTable, Language.StringByID(R.MyInternationalizationString.uDeviceEditor), 1368);
+        }
+      }
       else
       {
         this.listview = tableContr.InitControl(listBackControl.frameTable, Language.StringByID(R.MyInternationalizationString.uDeviceEditor), 1128);
@@ -133,17 +142,17 @@
           }
         }
 
-        //濡傛灉鏄櫨琛f灦
-        if (deviceObj.Type == DeviceType.Airer)
-        {
-          var airer = deviceObj as Airer;
-          SetAirerFunTimeDevice(airer);
-        }
-        else
-        {
-          //鍏抽棴鑷韩
-          this.CloseForm();
-        }
+        //濡傛灉鏄櫨琛f灦銆屾椂闂村厛涓嶅鐞嗐��
+        //if (deviceObj.Type == DeviceType.Airer)
+        //{
+        //  var airer = deviceObj as Airer;
+        //  SetAirerFunTimeDevice(airer);
+        //}
+        //else
+        //{
+        //鍏抽棴鑷韩
+        this.CloseForm();
+        //}
 
       };
       //濡傛灉褰撳墠鏄睍绀烘ā鏉�,鍒欎笉鑳界紪杈�
@@ -163,10 +172,7 @@
       //鍥炶矾澶囨敞
       string caption = Language.StringByID(R.MyInternationalizationString.uDeviceEpointNote);
       string nameValue = Common.LocalDevice.Current.GetDeviceEpointName(nowSelectDevice);
-      if (this.deviceObj.Type == DeviceType.Airer)
-      {
-        nameValue = Common.LocalDevice.Current.GetDeviceMacName(nowSelectDevice);
-      }
+
       if (dicDeviceSaveName.ContainsKey(nowSelectDevice.DeviceEpoint) == true)
       {
         nameValue = dicDeviceSaveName[nowSelectDevice.DeviceEpoint];
@@ -214,6 +220,19 @@
         //鍙樻洿鎴块棿
         HdlRoomLogic.Current.ChangedRoom(nowSelectDevice, roomKeys);
       };
+
+      if (this.deviceObj.Type == DeviceType.TemperatureSensor)
+      {
+        //鑾峰彇璁惧绫诲瀷
+        var deviceEnumInfo = Common.LocalDevice.Current.GetMyDeviceEnumInfo(new List<CommonDevice>() { this.deviceObj });
+        //绌烘皵璐ㄩ噺浼犳劅鍣�
+        if (deviceEnumInfo.ConcreteType == Common.DeviceConcreteType.AirQualitySensor)
+        {
+          //璁惧绫诲瀷
+          this.AddDeviceTypeRow();
+        }
+      }
+
       //娣诲姞鍔熻兘绫诲瀷琛�
       this.AddFunctionTypeRow();
 
@@ -312,11 +331,31 @@
     }
     #endregion
 
-    #region 鈻� 鏅捐。鏋朵笓鐢╛________________________ 
-    #region 鈻� 鐑樺共鏃堕棿_________________________ 
-    /// <summary>
-    ///  鐑樺共鏃堕棿琛�
-    /// </summary>
+    #region 鈻� 璁惧绫诲瀷___________________________
+
+    /// <summary>
+    /// 娣诲姞鍔熻兘绫诲瀷琛�
+    /// </summary>
+    private void AddDeviceTypeRow()
+    {
+      var caption = Language.StringByID(R.MyInternationalizationString.uDeviceType);
+      var listNewDevice = new List<CommonDevice>();
+      listNewDevice.Add(deviceObj);
+      var deviceName = Common.LocalDevice.Current.GetDeviceObjectText(listNewDevice);
+      var btnType = new FrameCaptionViewControl(caption, deviceName, listview.rowSpace / 2);
+      btnType.UseClickStatu = false;
+      listview.AddChidren(btnType);
+      btnType.InitControl();
+      //鍒掔嚎
+      btnType.AddBottomLine();
+    }
+    #endregion
+
+    #region 鈻� 鏅捐。鏋朵笓鐢╛________________________ 
+    #region 鈻� 鐑樺共鏃堕棿_________________________ 
+    /// <summary>
+    ///  鐑樺共鏃堕棿琛�
+    /// </summary>
     private void AddAirerDryTimeRow(Airer airer)
     {
       var rowAirer = new AiererTimeControl(listview.rowSpace / 2);
@@ -327,7 +366,7 @@
         double result = airer.DryTime / 60.0;
         var hour = Math.Round(result, 2);
         text = hour + Language.StringByID(R.MyInternationalizationString.AirerHour);
-      }
+      }
       rowAirer.InitControl(airer, bodyFrameLayout, Language.StringByID(R.MyInternationalizationString.AirerDryTime), text, 1);
       //搴曠嚎
       rowAirer.AddBottomLine();
@@ -342,10 +381,10 @@
     }
     #endregion
 
-    #region 鈻� 椋庡共鏃堕棿_________________________ 
-    /// <summary>
-    ///  椋庡共鏃堕棿琛�
-    /// </summary>
+    #region 鈻� 椋庡共鏃堕棿_________________________ 
+    /// <summary>
+    ///  椋庡共鏃堕棿琛�
+    /// </summary>
     private void AddAirerWindTimeRow(Airer airer)
     {
       var rowAirer = new AiererTimeControl(listview.rowSpace / 2);
@@ -370,19 +409,19 @@
     }
     #endregion
 
-    #region 鈻� 娑堟瘨鏃堕棿_________________________ 
-    /// <summary>
-    ///  娑堟瘨鏃堕棿琛�
-    /// </summary>
+    #region 鈻� 娑堟瘨鏃堕棿_________________________ 
+    /// <summary>
+    ///  娑堟瘨鏃堕棿琛�
+    /// </summary>
     private void AddAirerDisinfectTimeRow(Airer airer)
     {
       var rowAirer = new AiererTimeControl(listview.rowSpace / 2);
       listview.AddChidren(rowAirer);
-      var text = Language.StringByID(R.MyInternationalizationString.AirerDefault) + 30 + Language.StringByID(R.MyInternationalizationString.AirerMin);
+      var text = Language.StringByID(R.MyInternationalizationString.AirerDefault) + 30 + Language.StringByID(R.MyInternationalizationString.AirerMin);
       if (airer.DisinfectTime != 0)
       {
         text = airer.DisinfectTime + Language.StringByID(R.MyInternationalizationString.AirerMin);
-      }
+      }
       rowAirer.InitControl(airer, bodyFrameLayout, Language.StringByID(R.MyInternationalizationString.AirerDisinfectTime), text, 3);
       //搴曠嚎
       rowAirer.AddBottomLine();
@@ -393,11 +432,11 @@
     }
     #endregion
 
-    #region 鈻�  璇诲彇鏃堕棿鍛戒护___________________
+    #region 鈻�  璇诲彇鏃堕棿鍛戒护___________________
 
-    /// <summary>
-    /// 璇诲彇鏃堕棿鍛戒护
-    /// </summary>
+    /// <summary>
+    /// 璇诲彇鏃堕棿鍛戒护
+    /// </summary>
     public void ReadAirerFunTimeDevice()
     {
 
@@ -538,13 +577,33 @@
           {
             frame.RemoveFromParent();
             frameBorder.Y = Application.GetRealHeight(0);
-            frameBorder.Height = Application.GetRealHeight(709);
+            frameBorder.Height = Application.GetRealHeight(299);
             frameBack.BackgroundImagePath = "Airer/Airer216.png";
             frameBack.Width = this.GetPictrueRealSize(207);
             frameBack.Height = this.GetPictrueRealSize(207);
             frameBack.Y = Application.GetRealHeight(92);
             frameBack.Gravity = Gravity.CenterHorizontal;
           }
+
+          //濡傛灉鏄┖姘旇川閲忎紶鎰熷櫒
+          if (this.deviceObj.Type == DeviceType.TemperatureSensor)
+          {//绌烘皵璐ㄩ噺浼犳劅鍣� 
+           //鑾峰彇璁惧绫诲瀷
+            var deviceEnumInfo = Common.LocalDevice.Current.GetMyDeviceEnumInfo(new List<CommonDevice>() { this.deviceObj });
+            //绌烘皵璐ㄩ噺浼犳劅鍣�
+            if (deviceEnumInfo.ConcreteType == Common.DeviceConcreteType.AirQualitySensor)
+            {
+              frame.RemoveFromParent();
+              frameBorder.Y = Application.GetRealHeight(0);
+              frameBorder.Height = Application.GetRealHeight(299);
+              //鍔犺浇鍥炬爣鎺т欢
+              var btnPic = new DeviceInfoIconControl();
+              btnPic.Y = Application.GetRealHeight(104);
+              btnPic.Gravity = Gravity.CenterHorizontal;
+              listBackControl.frameTable.AddChidren(btnPic);
+              btnPic.InitControl(deviceObj);
+            }
+          }
         }
         else
         {

--
Gitblit v1.8.0