From a715181089be0d31cd737a5367ffd02690b9d77f Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期四, 12 十一月 2020 13:36:01 +0800
Subject: [PATCH] 20201112

---
 HDL_ON/UI/UI0-Public/UpdataTcpResidenceDataDialog.cs |   29 ++++++++++++++++-------------
 1 files changed, 16 insertions(+), 13 deletions(-)

diff --git a/HDL_ON/UI/UI0-Public/UpdataTcpResidenceDataDialog.cs b/HDL_ON/UI/UI0-Public/UpdataTcpResidenceDataDialog.cs
index b9ccfe6..85ea5ad 100644
--- a/HDL_ON/UI/UI0-Public/UpdataTcpResidenceDataDialog.cs
+++ b/HDL_ON/UI/UI0-Public/UpdataTcpResidenceDataDialog.cs
@@ -7,7 +7,7 @@
 {
     public class UpdataTcpResidenceDataDialog 
     {
-        public void ShowDialog(List<Function> sidObjects,List<FunctionOid> functionOids)
+        public void ShowDialog(List<Function> sidObjects,string oidJsonString)
         {
             Dialog dialog = new Dialog();
             FrameLayout bodyView = new FrameLayout();
@@ -15,20 +15,28 @@
             dialog.AddChidren(bodyView);
 
             Action action = () => {
-                UpdataResidenceData(sidObjects,functionOids);
+                UpdataFunctionList(sidObjects, oidJsonString);
             };
 
             new PublicAssmebly().TipMsg(StringId.Tip, StringId.UpdataTcpResidenceDataTip, action);
 
         }
-
-        public void UpdataResidenceData(List<Function> sidObjects, List<FunctionOid> functionOids)
+        /// <summary>
+        /// 鏇存柊鍔熻兘鍒楄〃
+        /// </summary>
+        /// <param name="sidObjects"></param>
+        /// <param name="functionOids"></param>
+        public void UpdataFunctionList(List<Function> sidObjects, string oidJsonString)//, List<FunctionOid> functionOids)
         {
-            DB_ResidenceData.residenceData.functionOidList = functionOids;
-            DB_ResidenceData.residenceData.functionList.ClearAllDeviceFunctionList();
+            var obj = Newtonsoft.Json.JsonConvert.DeserializeObject<Newtonsoft.Json.Linq.JObject>(oidJsonString);
+            var functionOids = Newtonsoft.Json.JsonConvert.DeserializeObject<List<FunctionOid>>(obj.GetValue("objects").ToString());
+            
+            DB_ResidenceData.SaveFunctionOidJsonDataList(oidJsonString);
+            DB_ResidenceData.functionList.ClearAllDeviceFunctionList();
+            DB_ResidenceData.DelAllFunctionData();
             foreach (var sidObj in sidObjects)
             {
-                var oid = functionOids.Find((obj) => obj.oid == sidObj.sid.Substring(0, 16));
+                var oid = functionOids.Find((o) =>  o.oid == sidObj.sid.Substring(0, 16));
                 if(oid!=null)
                 {
                     sidObj.bus_Data = new BusData();
@@ -36,13 +44,8 @@
                     sidObj.bus_Data.DeviceID = Convert.ToByte(oid.dev_id, 16);
                     sidObj.bus_Data.LoopID = Convert.ToByte(sidObj.sid.Substring(20, 4),16);
                 }
-                DB_ResidenceData.residenceData.functionList.AddDeviceFunction(sidObj);
-
+                DB_ResidenceData.functionList.AddDeviceFunction(sidObj);
             }
-            
-            DB_ResidenceData.residenceData.SaveResidenceData();
-            DB_ResidenceData.residenceData.functionList.GetAllFunction();
-
             MainPage.GoUserPage();
         }
 

--
Gitblit v1.8.0