From 63a1e0dd7fcda5948c26490d5d7e4c84d6dbf99f Mon Sep 17 00:00:00 2001
From: wei <kaede@kaededeMacBook-Air.local>
Date: 星期二, 16 三月 2021 17:06:19 +0800
Subject: [PATCH] 4

---
 HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/PirSend.cs |  250 ++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 212 insertions(+), 38 deletions(-)

diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/PirSend.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/PirSend.cs
index 17262bf..9d51783 100644
--- a/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/PirSend.cs
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/PirSend.cs
@@ -5,12 +5,14 @@
 using Newtonsoft.Json.Linq;
 using System.Collections.Generic;
 using Shared;
+using HDL_ON.Entity;
 
 namespace HDL_ON.UI.UI2.PersonalCenter.PirDevice
 {
 
     public class PirSend
     {
+
         /// <summary>
         /// 浣忓畢ID
         /// </summary>
@@ -32,61 +34,233 @@
             }
         }
         /// <summary>
-        /// 閬ユ帶鍣ㄧ孩澶栫爜瀛︿範
+        /// 鑾峰彇璁惧鍒楄〃
         /// </summary>
         /// <returns></returns>
-        public static ResponsePackNew CodeStudy(ButtonObj buttonObj)
+        public static ResponsePackNew GetDeviceList(string spk)
         {
-            var jArray = new JArray { };
-            var job = new JObject { };
-            job.Add("key", buttonObj.Key);
-            job.Add("value", buttonObj.value);
-            jArray.Add(job);
-            var jObject = new JObject { { "homeId", HomeId }, { "deviceId", "0" }, { "status", jArray } };
-            var responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_Ir_CodeStudy);
+            var jObject = new JObject { };
+            jObject.Add("homeId", HomeId);
+            jObject.Add("spk", spk);
+            //d.Add("gatewayId", DB_ResidenceData.residenceData.HomeGateway.gatewayId);
+            //d.Add("roomId", DB_ResidenceData.residenceData.residecenInfo.RegionID);//鍙帶鍙傛暟锛屽綋闇�瑕佸垎椤佃幏鍙栵紝鎬庝箞鐭ラ亾鍒嗛〉鎬绘暟
+            //d.Add("searchType", DB_ResidenceData.residenceData.residecenInfo.RegionID);
+            //d.Add("pageSize", DB_ResidenceData.residenceData.residecenInfo.RegionID);
+            //d.Add("pageNo", DB_ResidenceData.residenceData.residecenInfo.RegionID);
+            var responsePackNew = RequestServerhomeId(jObject, NewAPI.Api_Post_GetDevcieList);
             return responsePackNew;
         }
         /// <summary>
-        /// 鑾峰彇閫昏緫
+        /// 鑾峰彇璁惧璇︽儏閫氳繃(spk,sid)
         /// </summary>
-        /// <param name="listIdList">閫昏緫ID鍒楄〃</param>
         /// <returns></returns>
-        public static ResponsePackNew GetLogic(List<string> listIdList)
+        public static ResponsePackNew GetinfoBySid(Control control)
         {
+            var jObject = new JObject { };
+            jObject.Add("homeId", HomeId);
+            jObject.Add("spk", control.spk);
+            jObject.Add("sid", control.sid);
+            var responsePackNew = RequestServerhomeId(jObject, NewAPI.Api_Post_GetinfoBySid);
+            return responsePackNew;
+        }
+        /// <summary>
+        /// 鑾峰彇閬ユ帶鍣ㄥ垪琛�
+        /// </summary>
+        public static ResponsePackNew ControlList(Pir pir)
+        {
+            var jObject = new JObject { { "homeId", HomeId }, { "deviceId", pir.deviceId } };
+            var responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_Ir_List);
+            return responsePackNew;
+        }
+        /// <summary>
+        /// 閬ユ帶鍣ㄦ坊鍔�
+        /// </summary>
+        /// <returns></returns>
+        /// <param name="control"></param>
+        /// <returns></returns>
+        public static ResponsePackNew Add(Control control)
+        {
+            var jObject = new JObject { }; 
+            jObject.Add("homeId", HomeId);
+            jObject.Add("deviceId", control.deviceId);
+            jObject.Add("name", control.name);
+            jObject.Add("spk", control.spk);
+            jObject.Add("type", control.type);
+            if (control.type=="library")
+            {
+                jObject.Add("groupId", control.groupId);
+                var libraryjay = new JArray { };
+                for (int i = 0; i < control.library.Count; i++)
+                {
+                    libraryjay.Add(control.library[i]);
+                }
+                jObject.Add("library", libraryjay);
+            }
+          
+            var responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_Ir_Add);
+            return responsePackNew;
+        }
+        /// <summary>
+        ///绾㈠鐮佸簱璇曠爜
+        /// </summary>
+        /// <returns></returns>
+        public static ResponsePackNew CodeTest(Control control)
+        {
+            var jObject = new JObject { }; 
+            jObject.Add("homeId", HomeId);
+            jObject.Add("deviceId", control.deviceId);
+            jObject.Add("spk", control.spk);
+            if (control.spk== SPK.AcIr) {
+                jObject.Add("groupId", control.groupId);
+            }
+            var libraryJay = new JArray { }; 
+            for (int i = 0; i < control.library.Count; i++)
+            {
+                libraryJay.Add(control.library[i]);
+            }
+            var statusJay = new JArray { };
+            for (int i = 0; i < control.status.Count; i++)
+            {
+                var statusJob = new JObject { };
+                var job = control.status[i];
+                statusJob.Add("key", job.key);
+                statusJob.Add("value", job.value);
+                statusJay.Add(statusJob);
+            }
+            jObject.Add("library", libraryJay);
+            jObject.Add("status", statusJay);
+            var responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_Ir_CodeTest);
+            return responsePackNew;
+        }
+        /// <summary>
+        /// <summary>
+        /// 绾㈠鐮佸涔�
+        /// </summary>
+        /// <returns></returns>
+        public static void CodeStudy(Control control,AttributesStatus buttonObj,Action<ResponsePackNew> action)
+        {
+            //var whichDayJson = jay["whichDay"].ToString();
+            //var whichDayAry = Newtonsoft.Json.Linq.JArray.Parse(whichDayJson);
+            //for (int b = 0; b < whichDayAry.Count; b++)
+            //{
+            //    var days = whichDayAry[b].ToString();
+            //    timer.whichDay.Add(int.Parse(days));
+            //}
+            var job = new JObject { };
+            job.Add("key", buttonObj.key);
+            job.Add("data_type", "string");
+            var valuejArray = new JArray { };
+            valuejArray.Add(buttonObj.value);
+            job.Add("value", valuejArray);
             var jArray = new JArray { };
-            for (int i = 0; i < listIdList.Count; i++)
+            jArray.Add(job);
+            var jObject = new JObject { { "homeId", HomeId }, { "deviceId", control.deviceId }, { "attributes", jArray } };
+            ResponsePackNew responsePackNew = null;
+            new System.Threading.Thread(() =>
             {
-                jArray.Add(listIdList[i]);
-            }
-            var jObject = new JObject { { "userLogicIds", jArray } };
-            var responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_Logic_Info);
-            //濡傛灉鏄痶oken杩囨湡鍒欏埛鏂皌oken
-            if (responsePackNew.Code == StateCode.TOKEN_EXPIRED)
-            {
-                RefreshToken();
-                GetLogic(listIdList);
-            }
+
+                try
+                {
+                    //鍙戦�佺孩澶栫爜瀛︿範鍛戒护
+                    responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_Ir_CodeStudy);
+                }
+                catch { }
+                finally
+                {
+                    Application.RunOnMainThread(() =>
+                    {
+                        action(responsePackNew);
+                    });
+                }
+
+            })
+            { IsBackground = true }.Start();
+        }
+        /// <summary>
+        /// 鑷鎸夐敭鍒犻櫎
+        /// </summary>
+        /// <returns></returns>
+        public static ResponsePackNew CodeRemove(AttributesStatus buttonObj,string deviceId)
+        {
+            var job = new JObject { };
+            job.Add("key", buttonObj.key);
+            job.Add("data_type", "string");
+            var valuejArray = new JArray { };
+            valuejArray.Add(buttonObj.value);
+            job.Add("value", valuejArray);
+            var jArray = new JArray { };
+            jArray.Add(job);
+            var jObject = new JObject { { "homeId", HomeId }, { "deviceId", deviceId }, { "attributes", jArray } };
+            var responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_Ir_CodeRemove);
             return responsePackNew;
         }
 
-
-        public static bool Error(ResponsePackNew responsePackNew)
+        /// <summary>
+        /// 绾㈠瀹�/閬ユ帶鍣ㄥ垹闄�
+        /// </summary>
+        /// <returns></returns>
+        public static ResponsePackNew DeleteDevice(string deviceId)
+        {
+            var jObject = new JObject { { "homeId", HomeId }, { "deviceId", deviceId } };
+            var responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_Ir_DeviceDel);
+            return responsePackNew;
+        }
+        /// <summary>
+        /// 淇敼绾㈠瀹�/璁惧鍚嶇О
+        /// </summary>
+        /// <returns></returns>
+        public static ResponsePackNew DeviceRename(string deviceId,string name)
+        {
+            var jObject = new JObject { { "homeId", HomeId }, { "deviceId", deviceId }, { "name", name} };
+            var responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_Ir_DeviceRename);
+            return responsePackNew;
+        }
+        /// <summary>
+        /// 鏌ヨ绾㈠璁惧绫诲瀷鍒楄〃/鍝佺墝鍒楄〃/鍝佺墝绾㈠鐮佸簱鍒楄〃
+        /// </summary>
+        /// <param name="frameLayout">鍔犺浇log鐨勭埗鎺т欢</param>
+        /// <param name="action">鍥炶皟鍑芥暟</param>
+        public static void GetDeviceTypesList(FrameLayout frameLayout, Action<ResponsePackNew> action, string id, string if_str)
         {
 
-            if (responsePackNew != null && responsePackNew.Code == "0" && responsePackNew.Data.ToString() != "")
+            DAL.Server.ResponsePackNew responsePackNew = null;
+            Loading loading = new Loading();
+            frameLayout.AddChidren(loading);
+            loading.Start();
+            new System.Threading.Thread(() =>
             {
-                return true;
-            }
-            else if (responsePackNew != null && responsePackNew.Code == "14005")
-            {
-                // new Intelligence.Automation.LogicView.TipPopView().FlashingBox(Language.StringByID(StringId.gatewayNotOnline));
-                return false;
-            }
-            else
-            {
-                // new Intelligence.Automation.LogicView.TipPopView().FlashingBox(Language.StringByID(StringId.saveFail));
-                return false;
-            }
+                try
+                {
+                    string url = "";
+                    var jObject = new JObject { };
+                    if (if_str == "璁惧绫诲瀷鍒楄〃")
+                    {
+                        url = "/smart-footstone/app/ir/device-type/list";
+                    }
+                    else if (if_str == "鍝佺墝鍒楄〃")
+                    {
+                        url = "/smart-footstone/app/ir/brand/list";
+                        jObject.Add("deviceTypeId", id);
+                    }
+                    else if (if_str == "鍝佺墝绾㈠鐮佸簱鍒楄〃")
+                    {
+                        url = "/smart-footstone/app/ir/code/list";
+                        jObject.Add("brandId", id);
+                    }
+                    responsePackNew = RequestServerhomeId(jObject, url,5);
+                }
+                catch { }
+                finally
+                {
+                    Application.RunOnMainThread(() =>
+                    {
+                        loading.Hide();
+                        action(responsePackNew);
+                    });
+                }
+            })
+            { IsBackground = true }.Start();
+
         }
 
         /// <summary>

--
Gitblit v1.8.0