From baaa4b4054b5ba216c5936742de8e5c9ba97b01c Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期二, 20 二月 2024 09:26:06 +0800
Subject: [PATCH] 厦门大云谷项目优化
---
HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs | 148 +++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 130 insertions(+), 18 deletions(-)
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs
index 0c1a78e..a843941 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs
@@ -23,6 +23,7 @@
}
}
public List<Face> faceList = new List<Face>();
+ public List<Face> VideoDoorLockUserListInfo = new List<Face>();
/// <summary>
/// 璋冪敤鑾峰彇浣忓畢瀛愯处鍙峰垪琛�
/// </summary>
@@ -46,7 +47,7 @@
/// 鑾峰彇閫昏緫ID鍒楄〃
/// </summary>
/// <returns></returns>
- public ResponsePackNew GetLogicIdList(bool isTip = false)
+ public List<LogicIdData> GetLogicIdList(bool isTip = false)
{
var jObject = new JObject { { "homeId", LogicMethod.Current.HomeId } };
var responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_Logic_List, "鑾峰彇閫昏緫ID鍒楄〃");
@@ -60,14 +61,15 @@
{
return null;
}
- return responsePackNew;
+ var dateList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<LogicIdData>>(responsePackNew.Data.ToString());
+ return dateList;
}
/// <summary>
/// 鑾峰彇鑷姩鍖栬鎯�
/// </summary>
/// <param name="listIdList">鑷姩鍖朓D鍒楄〃</param>
/// <returns></returns>
- public ResponsePackNew GetLogic(List<string> listIdList, bool isTip = false)
+ public ResponsePackNew GetLogic1(List<string> listIdList, bool isTip = false)
{
var jArray = new JArray { };
for (int i = 0; i < listIdList.Count; i++)
@@ -88,6 +90,35 @@
}
return responsePackNew;
}
+
+ /// <summary>
+ /// 鑾峰彇鑷姩鍖栬鎯�
+ /// </summary>
+ /// <param name="listIdList">鑷姩鍖朓D鍒楄〃</param>
+ /// <returns></returns>
+ public List<Logic> GetLogic(List<string> listIdList, bool isTip = false)
+ {
+ var jArray = new JArray { };
+ for (int i = 0; i < listIdList.Count; i++)
+ {
+ 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, isTip);
+ }
+ if (Check(responsePackNew, isTip) == false)
+ {
+ return null;
+ }
+ var logicList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Logic>>(responsePackNew.Data.ToString());
+ return logicList;
+ }
+
/// <summary>
/// 娣诲姞鑷姩鍖栧懡浠�
/// </summary>
@@ -113,6 +144,14 @@
{
var inputTypeJOb = new JObject { };
inputTypeJOb.Add("sid", dictionary.sid);
+ if (!string.IsNullOrEmpty(dictionary.hold_time))
+ {
+ inputTypeJOb.Add("hold_time", dictionary.hold_time);
+ }
+ if (!string.IsNullOrEmpty(dictionary.detect_type))
+ {
+ inputTypeJOb.Add("detect_type", dictionary.detect_type);
+ }
inputTypeJOb.Add("condition_type", dictionary.condition_type);
if (dictionary.condition_type=="9") {
inputTypeJOb.Add("identifier", dictionary.identifier);
@@ -197,6 +236,7 @@
logicIfon.Add("pushConfigs", pushConfigsArray);
logicjArray.Add(logicIfon);
var jObject = new JObject { { "homeId", LogicMethod.Current.HomeId }, { "logics", logicjArray } };
+ string str = jObject.ToString();
responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_Logic_Add, "娣诲姞鑷姩鍖�", 5);
//濡傛灉鏄痶oken杩囨湡鍒欏埛鏂皌oken
if (responsePackNew.Code == StateCode.TOKEN_EXPIRED)
@@ -239,8 +279,19 @@
{
var inputTypeJOb = new JObject { };
inputTypeJOb.Add("sid", dictionary.sid);
+ if (!string.IsNullOrEmpty(dictionary.hold_time))
+ {
+ inputTypeJOb.Add("hold_time", dictionary.hold_time);
+ }
+ if (!string.IsNullOrEmpty(dictionary.detect_type))
+ {
+ inputTypeJOb.Add("detect_type", dictionary.detect_type);
+ }
inputTypeJOb.Add("condition_type", dictionary.condition_type);
-
+ if (dictionary.condition_type == "9")
+ {
+ inputTypeJOb.Add("identifier", dictionary.identifier);
+ }
var conditionArray = new JArray { };
foreach (var dic in dictionary.condition)
{
@@ -327,7 +378,6 @@
logicjArray.Add(logicIfon);
var jObject = new JObject { { "homeId", LogicMethod.Current.HomeId }, { "logics", logicjArray } };
-
string str = jObject.ToString();
responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_Logic_Update, "缂栬緫鏇存柊鑷姩鍖�", 5);
//濡傛灉鏄痶oken杩囨湡鍒欏埛鏂皌oken
@@ -459,16 +509,75 @@
}
+ /// <summary>
+ /// 鑾峰彇浣忓畢宸插綍鍏ヤ汉鑴镐俊鎭�
+ /// </summary>
+ /// <param name="deviceId">鍙瀵硅璁惧id</param>
+ /// <returns></returns>
+ public List<Face> GetHomeFaceList(string deviceId, bool isTip)
+ {
+ var jObject = new JObject();
+ jObject.Add("homeId", LogicMethod.Current.HomeId);
+ jObject.Add("deviceId", deviceId);
+ var responsePackNew = RequestServerhomeId(jObject, NewAPI.Api_Post_GetListHomeFace, "鑾峰彇浣忓畢宸插綍鍏ヤ汉鑴镐俊鎭�");
+ //濡傛灉鏄痶oken杩囨湡鍒欏埛鏂皌oken
+ if (responsePackNew.Code == StateCode.TOKEN_EXPIRED)
+ {
+ RefreshToken();
+ GetListHomeFace(deviceId, isTip);
+ }
+ if (Check(responsePackNew, isTip) == false)
+ {
+ return new List<Face>();
+ }
+ var list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Face>>(responsePackNew.Data.ToString());
+ if (list == null)
+ {
+ list = new List<Face>();
+ }
+ faceList.Clear();
+ faceList.AddRange(list);
+ return list;
+
+ }
+
+ /// <summary>
+ /// 鑾峰彇闂ㄩ攣鐢ㄦ埛鍒楄〃(钀ょ煶瑙嗛闂ㄩ攣)
+ /// </summary>
+ /// <param name="deviceId">璁惧</param>
+ /// <returns></returns>
+ public List<Face> GetVideoDoorLockUserListInfo(Function device)
+ {
+ var userList = FuntionControlView.VideoDoorLock.VideDoorLockSend.Current.GetVideoDoorLockUserListInfo(device);
+ List<Face> faceIdList = new List<Face>();
+ for (int i = 0; i < userList.Count; i++)
+ {
+ Face face = new Face();
+ var user = userList[i];
+ face.userId = user.extUserId;
+ face.userName = user.extUserName;
+ faceIdList.Add(face);
+ }
+ VideoDoorLockUserListInfo.Clear();
+ VideoDoorLockUserListInfo.AddRange(faceIdList);
+ return faceIdList;
+ }
+
+
+
/// <summary>
///璇锋眰鏈嶅姟鍣紙涓庝綇瀹呮湁鍏�:渚嬪锛沨omeId锛�
/// </summary>
+ /// <param name="o">鍙戦�佹暟鎹�</param>
+ /// <param name="api_Url">璇锋眰鍦板潃(涓嶆槸缁濆鍦板潃)</param>
+ /// <param name="tag">鏍囪->鎻忚堪鎺ュ彛(鑷畾涔�)</param>
/// <returns></returns>
- public ResponsePackNew RequestServerhomeId(object o, string api_Url, string tag,int mTimeout = 3)
+ public ResponsePackNew RequestServerhomeId(object o, string api_Url, string tag,int mTimeout = 3)
{
- Log($"{DateTime.Now}->鍙戦��->{tag}", o.ToString());
+ Log($"{DateTime.Now}->鍙戦��->{tag}", api_Url,o.ToString());
var requestJson = HttpUtil.GetSignRequestJson(o);
var r= HttpUtil.RequestHttpsPostFroHome(api_Url, requestJson, mTimeout);
- Log($"{DateTime.Now}->鍥炲->{tag}", Newtonsoft.Json.JsonConvert.SerializeObject(r));
+ Log($"{DateTime.Now}->鍥炲->{tag}", "", Newtonsoft.Json.JsonConvert.SerializeObject(r));
return r;
}
@@ -481,10 +590,10 @@
/// <returns></returns>
public ResponsePackNew RequestServer(object o, string api_Url,string tag)
{
- Log($"鍙戦��->{tag}", o.ToString());
+ Log($"鍙戦�佹暟鎹�->{tag}", api_Url, o.ToString());
var requestJson = HttpUtil.GetSignRequestJson(o);
var r = HttpUtil.RequestHttpsPost(api_Url, requestJson);
- Log($"鍥炲->{tag}", Newtonsoft.Json.JsonConvert.SerializeObject(r));
+ Log($"鍥炲鏁版嵁->{tag}", "", Newtonsoft.Json.JsonConvert.SerializeObject(r));
return r;
}
/// <summary>
@@ -502,29 +611,32 @@
/// <returns></returns>
public bool Check(ResponsePackNew r, bool isTip)
{
+ if (r == null)
+ {
+ r = new ResponsePackNew { message = "娌″洖澶�,璇风‘璁ょ綉缁滄槸鍚︽甯�.", Code = "-1", };
+ }
if (r.Code == "0" && r.Data != null && r.Data.ToString() != "")
{
return true;
}
- if (r.Code != "0")
+ //澶辫触鏃舵槸鍚﹁鎻愮ず
+ if (isTip)
{
- //澶辫触鏃舵槸鍚﹁鎻愮ず
- if (isTip)
- {
- new LogicView.TipPopView().FlashingBox(r.message + $"({r.Code})");
- }
+ new LogicView.TipPopView().FlashingBox(r.message + $"({r.Code})");
}
return false;
}
+
+
/// <summary>
/// 鎵撳嵃鏃ュ織
/// </summary>
/// <param name="tag">鎵撳嵃鏍囪</param>
/// <param name="content">鎵撳嵃鍐呭</param>
- public void Log(string tag, string content)
+ public void Log(string tag,string url, string content)
{
#if DEBUG
- Console.WriteLine(tag + $"\r\n鏁版嵁鍐呭->->{content}");
+ Console.WriteLine(tag + $"\r\n{url}\r\n{content}");
#endif
}
--
Gitblit v1.8.0