From c7df85937f73fb347ee0b19e9c052d2d00a6df6c Mon Sep 17 00:00:00 2001
From: 黄学彪 <hxb@hdlchina.com.cn>
Date: 星期五, 18 九月 2020 13:58:19 +0800
Subject: [PATCH] 新版本

---
 ZigbeeApp/Shared/Phone/TemplateData/TemplateDataCommon.cs |  301 +++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 259 insertions(+), 42 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/TemplateData/TemplateDataCommon.cs b/ZigbeeApp/Shared/Phone/TemplateData/TemplateDataCommon.cs
index ec0d985..645568d 100755
--- a/ZigbeeApp/Shared/Phone/TemplateData/TemplateDataCommon.cs
+++ b/ZigbeeApp/Shared/Phone/TemplateData/TemplateDataCommon.cs
@@ -110,6 +110,22 @@
         {
             return 0;
         }
+
+        /// <summary>
+        /// 鑾峰彇澶辫触鏃剁殑Msg(log鏄剧ず浣跨敤)
+        /// </summary>
+        /// <returns></returns>
+        public virtual List<string> GetFailMsg()
+        {
+            return new List<string>();
+        }
+
+        /// <summary>
+        /// 鍙樻洿Mac缂撳瓨(鍦ㄧ綉鍏虫墽琛屽畬鎴愬鍏ヤ箣鍚庢墽琛�)
+        /// </summary>
+        public virtual void ChangedMacMemmory()
+        {
+        }
     }
 
     /// <summary>
@@ -216,6 +232,25 @@
     }
 
     /// <summary>
+    /// 浜戠妯℃澘鐨勫熀鏈俊鎭�
+    /// </summary>
+    public class CloundModelBaseInfo
+    {
+        /// <summary>
+        /// 妯℃澘鍚嶅瓧
+        /// </summary>
+        public string TemplateName = string.Empty;
+        /// <summary>
+        /// 缂栬緫鏃堕棿 2020.01.04 19:55鏍煎紡
+        /// </summary>
+        public string CreatedOnUtc = string.Empty;
+        /// <summary>
+        /// 涓婚敭
+        /// </summary>
+        public string Id = string.Empty;
+    }
+
+    /// <summary>
     /// 妯℃澘浣忓畢鐨勪俊鎭�
     /// </summary>
     public class TemplateHomeInfo
@@ -262,6 +297,15 @@
             //鎵ц杩欎釜鍛戒护澶х害闇�瑕�5绉�
             return 5;
         }
+        /// <summary>
+        ///  鑾峰彇澶辫触鏃剁殑Msg(log鏄剧ず浣跨敤)
+        /// </summary>
+        /// <returns></returns>
+        public override List<string> GetFailMsg()
+        {
+            //鍒囨崲鎵嬫媺鎺у埗澶辫触
+            return new List<string> { Language.StringByID(R.MyInternationalizationString.uChangeHandPullControlFail) };
+        }
     }
 
     /// <summary>
@@ -307,6 +351,15 @@
             //鎵ц杩欎釜鍛戒护澶х害闇�瑕�5绉�
             return 5;
         }
+        /// <summary>
+        ///  鑾峰彇澶辫触鏃剁殑Msg(log鏄剧ず浣跨敤)
+        /// </summary>
+        /// <returns></returns>
+        public override List<string> GetFailMsg()
+        {
+            //璁剧疆绐楀笜闄愪綅鐐瑰け璐�
+            return new List<string> { Language.StringByID(R.MyInternationalizationString.uCommitCurtainLimitFail) };
+        }
     }
 
     #endregion
@@ -341,6 +394,15 @@
             //鎵ц杩欎釜鍛戒护澶х害闇�瑕�5绉�
             return 5;
         }
+        /// <summary>
+        ///  鑾峰彇澶辫触鏃剁殑Msg(log鏄剧ず浣跨敤)
+        /// </summary>
+        /// <returns></returns>
+        public override List<string> GetFailMsg()
+        {
+            //璁剧疆绌鸿皟妯″紡澶辫触
+            return new List<string> { Language.StringByID(R.MyInternationalizationString.uSetAcModeFail) };
+        }
     }
 
     /// <summary>
@@ -371,6 +433,15 @@
             //鎵ц杩欎釜鍛戒护澶х害闇�瑕�5绉�
             return 5;
         }
+        /// <summary>
+        ///  鑾峰彇澶辫触鏃剁殑Msg(log鏄剧ず浣跨敤)
+        /// </summary>
+        /// <returns></returns>
+        public override List<string> GetFailMsg()
+        {
+            //璁剧疆绌鸿皟鎽嗛澶辫触
+            return new List<string> { Language.StringByID(R.MyInternationalizationString.uSetAirConditionerSwingFunctionFail) };
+        }
     }
 
     #endregion
@@ -394,7 +465,7 @@
         /// 缁戝畾鍒楄〃
         /// </summary>
         public List<ZigBee.Device.BindObj.BindListResponseObj> BindList = new List<ZigBee.Device.BindObj.BindListResponseObj>();
-        
+
         /// <summary>
         /// 鑾峰彇鏇存敼璁惧閰嶇疆鐨勫懡浠ゅ瓧绗�
         /// </summary>
@@ -442,8 +513,13 @@
             }
             var listCommand = new List<string>();
             //娓呯┖缁戝畾
-            var jObject = new Newtonsoft.Json.Linq.JObject { { "DeviceAddr", this.DeviceMac }, { "Epoint", this.DeviceEpoint }, { "Cluster_ID", 0 }, { "Command", 5006 } };
-            listCommand.Add(jObject.ToString());
+            listCommand.Add(string.Empty);
+            //杩欎釜鍒ゆ柇鏄负浜嗛拡瀵逛竴璺皟鍏夊櫒鍜屼笁璺户鐢靛櫒鐨勯偅涓涓冨洖璺�
+            if (this.ListReceiveResult.Count > 0 && string.IsNullOrEmpty(this.ListReceiveResult[0]) == false)
+            {
+                var jObject = new Newtonsoft.Json.Linq.JObject { { "DeviceAddr", this.DeviceMac }, { "Epoint", this.DeviceEpoint }, { "Cluster_ID", 0 }, { "Command", 5006 } };
+                listCommand[0] = jObject.ToString();
+            }
 
             //鍔熻兘閰嶇疆
             listCommand.Add(string.Empty);
@@ -471,6 +547,48 @@
         {
             //鎵ц杩欎釜鍛戒护澶х害闇�瑕�15绉�
             return 15;
+        }
+
+        /// <summary>
+        ///  鑾峰彇澶辫触鏃剁殑Msg(log鏄剧ず浣跨敤)
+        /// </summary>
+        /// <returns></returns>
+        public override List<string> GetFailMsg()
+        {
+            //娓呯┖缁戝畾鍒楄〃澶辫触 , 璁惧灞炴�у彉鏇村け璐� , 缁戝畾鐩爣璁剧疆澶辫触
+            return new List<string> {"娓呯┖缁戝畾鍒楄〃澶辫触"
+                ,Language.StringByID(R.MyInternationalizationString.uDeviceAttributeChangedFail)
+                ,Language.StringByID(R.MyInternationalizationString.uSetBindTargetsFail)};
+        }
+
+        /// <summary>
+        /// 鍙樻洿缁戝畾鐩爣鐨凪ac
+        /// </summary>
+        public override void ChangedMacMemmory()
+        {
+            //褰撳墠閫夋嫨鐨勬ā鏉垮璞�
+            var dicChangedMac = new Dictionary<string, string>();
+            var dicNowSelect = TemplateCommonLogic.Current.modelData.dicDeviceTemplateSelect;
+            foreach (var localMac in dicNowSelect.Keys)
+            {
+                dicChangedMac[dicNowSelect[localMac]] = localMac;
+            }
+            foreach (var data in BindList)
+            {
+                //璁惧
+                if (data.BindType != 2)
+                {
+                    if (dicChangedMac.ContainsKey(data.BindMacAddr) == false)
+                    {
+                        //杩欎釜涓滆タ娌℃湁閫夋嫨妯℃澘,鍒欎笉鎵ц
+                        continue;
+                    }
+                    //鏇挎崲mac
+                    data.BindMacAddr = dicChangedMac[data.BindMacAddr];
+                }
+            }
+            //鍙樻洿缂撳瓨
+            TemplateCommonLogic.Current.SaveDeviceMemmoryData(this.DeviceMac, this.DeviceEpoint);
         }
     }
 
@@ -506,6 +624,15 @@
             //鎵ц杩欎釜鍛戒护澶х害闇�瑕�5绉�
             return 5;
         }
+        /// <summary>
+        ///  鑾峰彇澶辫触鏃剁殑Msg(log鏄剧ず浣跨敤)
+        /// </summary>
+        /// <returns></returns>
+        public override List<string> GetFailMsg()
+        {
+            //璁剧疆浼犳劅鍣ㄩ厤缃俊鎭け璐�
+            return new List<string> {Language.StringByID(R.MyInternationalizationString.uSetPirSensorSettionFail)};
+        }
     }
 
     #endregion
@@ -540,21 +667,108 @@
             //鎵ц杩欎釜鍛戒护澶х害闇�瑕�5绉�
             return 5;
         }
+        /// <summary>
+        ///  鑾峰彇澶辫触鏃剁殑Msg(log鏄剧ず浣跨敤)
+        /// </summary>
+        /// <returns></returns>
+        public override List<string> GetFailMsg()
+        {
+            //璁剧疆闇囧姩鍙嶉閰嶇疆淇℃伅澶辫触
+            return new List<string> { Language.StringByID(R.MyInternationalizationString.uSetVibrationFeedbackSettionFail) };
+        }
     }
 
     /// <summary>
-    /// 闈㈡澘鑳屽厜鐏ā鏉挎暟鎹畾涔�
+    /// 闈㈡澘浜害璋冭妭妯℃澘鏁版嵁瀹氫箟
     /// </summary>
-    public class ModelPanelBackLightInfo : TemplateDeviceDataCommon
+    public class ModelPanelBrightnessAdjustInfo : TemplateDeviceDataCommon
     {
         /// <summary>
-        /// 浜害璋冭妭鐨勪俊鎭�
+        /// 鎸夐敭寮�鐘舵�侊紙鎸囩ず锛変寒搴�(杩欎釜鏄偣鍑诲悗鐨勫��,鎴栬�� 1-6骞叉帴鐐圭殑鑳屽厜鐏�)
         /// </summary>
-        public ModelPanelSwitchLevelInfo linghtLevelInfo = new ModelPanelSwitchLevelInfo();
+        public int panelDirectionsLevel = -1;
+        /// <summary>
+        /// 鎸夐敭鍏崇姸鎬侊紙鑳屽厜锛変寒搴�(杩欎釜鏄偣鍑诲墠鐨勫��,鎴栬�� 绗竷骞叉帴鐐圭殑鑳屽厜鐏�)
+        /// </summary>
+        public int panelBacklightLevel = -1;
+
+        /// <summary>
+        /// 鑾峰彇鏇存敼璁惧閰嶇疆鐨勫懡浠ゅ瓧绗�
+        /// </summary>
+        /// <returns></returns>
+        public override List<string> GetSendGatewayValue()
+        {
+            //浜害璋冭妭
+            var command1 = HdlDevicePanelLogic.Current.GetPanelLevelCommadText(DeviceMac, panelDirectionsLevel, panelBacklightLevel);
+            return new List<string>() { command1 };
+        }
+
+        /// <summary>
+        /// 鑾峰彇鍙戦�佸懡浠ゅぇ姒傞渶瑕佺殑鏃堕棿(绉�)
+        /// </summary>
+        /// <returns></returns>
+        public override int GetSendTime()
+        {
+            //鎵ц杩欎釜鍛戒护澶х害闇�瑕�8绉�
+            return 3;
+        }
+        /// <summary>
+        ///  鑾峰彇澶辫触鏃剁殑Msg(log鏄剧ず浣跨敤)
+        /// </summary>
+        /// <returns></returns>
+        public override List<string> GetFailMsg()
+        {
+            //璁剧疆浜害璋冭妭澶辫触
+            return new List<string> { Language.StringByID(R.MyInternationalizationString.uSetLightRegulationFail) };
+        }
+    }
+
+    /// <summary>
+    /// 闈㈡澘鑺傝兘妯″紡妯℃澘鏁版嵁瀹氫箟
+    /// </summary>
+    public class ModelPanelEnergyModeInfo : TemplateDeviceDataCommon
+    {
         /// <summary>
         /// 鑺傝兘妯″紡
         /// </summary>
         public ZigBee.Device.Panel.PanelSaveEnergyModeInfo energyModeInfo = new ZigBee.Device.Panel.PanelSaveEnergyModeInfo();
+        /// <summary>
+        /// 鑾峰彇鏇存敼璁惧閰嶇疆鐨勫懡浠ゅ瓧绗�
+        /// </summary>
+        /// <returns></returns>
+        public override List<string> GetSendGatewayValue()
+        {
+            //鑺傝兘妯″紡
+            var command1 = HdlDevicePanelLogic.Current.GetDeviceEnergyConservationModeCommandText(DeviceMac, energyModeInfo.enable, energyModeInfo.time, energyModeInfo.level);
+
+            return new List<string>() { command1 };
+        }
+
+        /// <summary>
+        /// 鑾峰彇鍙戦�佸懡浠ゅぇ姒傞渶瑕佺殑鏃堕棿(绉�)
+        /// </summary>
+        /// <returns></returns>
+        public override int GetSendTime()
+        {
+            //鎵ц杩欎釜鍛戒护澶х害闇�瑕�8绉�
+            return 3;
+        }
+        /// <summary>
+        ///  鑾峰彇澶辫触鏃剁殑Msg(log鏄剧ず浣跨敤)
+        /// </summary>
+        /// <returns></returns>
+        public override List<string> GetFailMsg()
+        {
+            //鑺傝兘妯″紡閰嶇疆澶辫触
+            return new List<string> { Language.StringByID(R.MyInternationalizationString.uSetEnergyConservationFail) };
+        }
+    }
+
+    /// <summary>
+    /// 闈㈡澘鎸囩ず鐏ā鏉挎暟鎹畾涔�(涔熷彨鑳屽厜鐏�)
+    /// </summary>
+    public class ModelPanelIndicatorLightInfo : TemplateDeviceDataCommon
+    {
         /// <summary>
         /// 鎸夐敭鐨勯鑹叉暟鎹�
         /// </summary>
@@ -569,15 +783,10 @@
         /// <returns></returns>
         public override List<string> GetSendGatewayValue()
         {
-            //杩欎笁涓笢瑗跨殑椤哄簭涓嶈兘鍙�
-            //浜害璋冭妭
-            var command1 = HdlDevicePanelLogic.Current.GetPanelLevelCommadText(DeviceMac, linghtLevelInfo.panelDirectionsLevel, linghtLevelInfo.panelBacklightLevel);
-            //鑺傝兘妯″紡
-            var command2 = HdlDevicePanelLogic.Current.GetDeviceEnergyConservationModeCommandText(DeviceMac, energyModeInfo.enable, energyModeInfo.time, energyModeInfo.level);
             //鎸夐敭鎸囩ず鐏鑹�
-            var command3 = HdlDevicePanelLogic.Current.GetPanelColorCommandText(DeviceMac, keyColorData, KeyNum);
+            var command1 = HdlDevicePanelLogic.Current.GetPanelColorCommandText(DeviceMac, keyColorData, KeyNum);
 
-            return new List<string>() { command1, command2, command3 };
+            return new List<string>() { command1 };
         }
 
         /// <summary>
@@ -587,24 +796,17 @@
         public override int GetSendTime()
         {
             //鎵ц杩欎釜鍛戒护澶х害闇�瑕�8绉�
-            return 8;
+            return 3;
         }
-    }
-
-    /// <summary>
-    /// 鎸夐敭鎸囩ず鐏潰鏉垮紑鍏充寒搴﹂厤缃洖澶�
-    /// </summary>
-    public class ModelPanelSwitchLevelInfo
-    {
         /// <summary>
-        ///鎸夐敭寮�鐘舵�侊紙鎸囩ず锛変寒搴�(杩欎釜鏄偣鍑诲悗鐨勫��)
+        ///  鑾峰彇澶辫触鏃剁殑Msg(log鏄剧ず浣跨敤)
         /// </summary>
-        public int panelDirectionsLevel = -1;
-
-        /// <summary>
-        /// 鎸夐敭鍏崇姸鎬侊紙鑳屽厜锛変寒搴�(杩欎釜鏄偣鍑诲墠鐨勫��)
-        /// </summary>
-        public int panelBacklightLevel = -1;
+        /// <returns></returns>
+        public override List<string> GetFailMsg()
+        {
+            //璁剧疆鎸夐敭闈㈡澘鎸囩ず鐏鑹插け璐�
+            return new List<string> { Language.StringByID(R.MyInternationalizationString.uSetPanelPilolightSettionFail) };
+        }
     }
 
     #endregion
@@ -639,6 +841,15 @@
             //鎵ц杩欎釜鍛戒护澶х害闇�瑕�3绉�
             return 3;
         }
+        /// <summary>
+        ///  鑾峰彇澶辫触鏃剁殑Msg(log鏄剧ず浣跨敤)
+        /// </summary>
+        /// <returns></returns>
+        public override List<string> GetFailMsg()
+        {
+            //璁惧绔偣鍚嶇О淇敼澶辫触
+            return new List<string> { "璁惧绔偣鍚嶇О淇敼澶辫触" };
+        }
     }
 
     /// <summary>
@@ -668,6 +879,15 @@
         {
             //鎵ц杩欎釜鍛戒护澶х害闇�瑕�3绉�
             return 3;
+        }
+        /// <summary>
+        ///  鑾峰彇澶辫触鏃剁殑Msg(log鏄剧ず浣跨敤)
+        /// </summary>
+        /// <returns></returns>
+        public override List<string> GetFailMsg()
+        {
+            //璁惧鍚嶇О淇敼澶辫触
+            return new List<string> { Language.StringByID(R.MyInternationalizationString.uDeviceReNameFail) };
         }
     }
 
@@ -718,20 +938,17 @@
         /// </summary>
         A璁惧缁戝畾鍒楄〃 = 14,
         /// <summary>
-        /// 瀵硅薄绫�:ModelPanelBackLightInfo
+        /// 瀵硅薄绫�:ModelPanelBrightnessAdjustInfo
         /// </summary>
-        A闈㈡澘鑳屽厜鐏� = 15
-    }
-
-    /// <summary>
-    /// 鍙戦�佹ā鏉挎暟鎹殑鍖哄垎
-    /// </summary>
-    public enum ModelDataSendEnum
-    {
-        A鏈畾涔� = -1,
-        A绉佹湁灞炴�� = 1,
-        A绉佹湁鍗忚 = 2,
-        A閫忎紶鏁版嵁 = 3
+        A闈㈡澘浜害璋冭妭 = 15,
+        /// <summary>
+        /// 瀵硅薄绫�:ModelPanelEnergyModeInfo
+        /// </summary>
+        A闈㈡澘鑺傝兘妯″紡 = 16,
+        /// <summary>
+        /// 涔熷彨鑳屽厜鐏� 瀵硅薄绫�:ModelPanelIndicatorLightInfo
+        /// </summary>
+        A闈㈡澘鎸囩ず鐏� = 17
     }
 
     #endregion

--
Gitblit v1.8.0