From e44926acb6ab99ea0d5baf758773a0f383e441a9 Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期五, 25 十一月 2022 14:23:54 +0800
Subject: [PATCH] 2022年11月25日14:23:44
---
HDL_ON/UI/UI2/3-Intelligence/Automation/FunTpye.cs | 3
HDL-ON_iOS/Resources/Language.ini | 5 +
HDL-ON_Android/Assets/Language.ini | 6 ++
HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs | 49 ++++++++++++++--
HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs | 18 +++++-
HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs | 55 ++++++++++++++----
HDL_ON/Common/R.cs | 9 ++
7 files changed, 122 insertions(+), 23 deletions(-)
diff --git a/HDL-ON_Android/Assets/Language.ini b/HDL-ON_Android/Assets/Language.ini
index eb4c98f..88932f8 100644
--- a/HDL-ON_Android/Assets/Language.ini
+++ b/HDL-ON_Android/Assets/Language.ini
@@ -1115,6 +1115,9 @@
7162=Face to open the door
7163=Video call
7164=Manipulator
+7165=Area intrusion alarm
+7166=camera
+
@@ -2332,6 +2335,9 @@
7162=浜鸿劯寮�闂�
7163=瑙嗛閫氳瘽鍛煎彨
7164=鏈烘鎵�
+7165=鍖哄煙鍏ヤ镜鍛婅
+7166=鎽勫儚澶�
+
diff --git a/HDL-ON_iOS/Resources/Language.ini b/HDL-ON_iOS/Resources/Language.ini
index eb4c98f..787e3c2 100644
--- a/HDL-ON_iOS/Resources/Language.ini
+++ b/HDL-ON_iOS/Resources/Language.ini
@@ -1115,6 +1115,9 @@
7162=Face to open the door
7163=Video call
7164=Manipulator
+7165=Area intrusion alarm
+7166=camera
+
@@ -2332,6 +2335,8 @@
7162=浜鸿劯寮�闂�
7163=瑙嗛閫氳瘽鍛煎彨
7164=鏈烘鎵�
+7165=鍖哄煙鍏ヤ镜鍛婅
+7166=鎽勫儚澶�
diff --git a/HDL_ON/Common/R.cs b/HDL_ON/Common/R.cs
index ea6da3e..a3e205a 100644
--- a/HDL_ON/Common/R.cs
+++ b/HDL_ON/Common/R.cs
@@ -3038,7 +3038,14 @@
/// 鏈烘鎵�
/// </summary>
public const int jixieshou = 7164;
-
+ /// <summary>
+ /// 鍖哄煙鍏ヤ镜鍛婅
+ /// </summary>
+ public const int quyuruqingaojing = 7165;
+ /// <summary>
+ /// 鎽勫儚澶�
+ /// </summary>
+ public const int shexiangtou = 7166;
#region LE鏂板
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs
index 7554d49..064ddef 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs
@@ -540,8 +540,8 @@
fLayout.AddChidren(view1.FLayoutView());
view1.btnClick.MouseUpEventHandler += (sender, e) =>
{
- identifier = "door_call_cloud_event";
- DeviceView(device, view1.btnState, StringId.shi, StringId.offLogic, 1);
+ this.identifier = "door_call_cloud_event";
+ this.DeviceView(device, view1.btnState, StringId.shi, StringId.offLogic, 1);
};
LogicView.FunTypeView view2 = new LogicView.FunTypeView();
@@ -550,7 +550,7 @@
fLayout.AddChidren(view2.FLayoutView());
view2.btnClick.MouseUpEventHandler += (sender, e) =>
{
- identifier = "door_pedestrian_records";
+ this.identifier = "door_pedestrian_records";
this.FaceAction(this, device, view2.btnState);
};
@@ -580,10 +580,30 @@
}
if (edit)
{
- GetEditState(device, index, view1.btnState, view2.btnState, null, null);
+ this.GetEditState(device, index, view1.btnState, view2.btnState, null, null);
}
}
break;
+ //澶у崕鎽勫儚澶�
+ case SPK.IpCam_Imou:
+ {
+ LogicView.FunTypeView view = new LogicView.FunTypeView();
+ view.btnText.TextID = StringId.quyuruqingaojing;
+ view.btnText.Name = Language.StringByID(StringId.shipintonghuahujiao);
+ fLayout.AddChidren(view.FLayoutView());
+ view.btnClick.MouseUpEventHandler += (sender, e) =>
+ {
+ this.identifier = "ipcam_region_alram_event";
+ this.DeviceView(device, view.btnState, StringId.shi, StringId.offLogic, 1);
+ };
+
+ if (edit)
+ {
+ this.GetEditState(device, index, view.btnState, null, null, null);
+ }
+ }
+ break;
+
}
#region 淇濆瓨
///淇濆瓨View
@@ -593,7 +613,7 @@
this.AddChidren(saveView.FLayoutView());
saveView.btnClick.MouseUpEventHandler += (sen, e) =>
{
- Save(device,index, edit);
+ this.SaveInput(device,index, edit);
};
#endregion
@@ -604,7 +624,7 @@
/// </summary>
/// <param name="index">绱㈠紩鍊�</param>
/// <param name="edit"></param>
- private void Save(Entity.Function device,int index, bool edit)
+ private void SaveInput(Entity.Function device,int index, bool edit)
{
if (selectedState != "unknown")
@@ -623,8 +643,19 @@
inputDevice.condition = new List<Dictionary<string, string>>();
}
}
-
-
+ else if (device.spk == SPK.IpCam_Imou)
+ {
+ //澶у崕鎽勫儚澶�
+ inputDevice.condition_type = "9";
+ inputDevice.identifier = this.identifier;
+ if (this.identifier == "ipcam_region_alram_event")
+ {
+ //condition榛樿[]
+ inputDevice.condition = new List<Dictionary<string, string>>();
+ }
+ }
+
+
if (edit)
{
//绉婚櫎鏃ф暟鎹�
@@ -855,11 +886,11 @@
|| (button.Name == Language.StringByID(StringId.diedaobaojing)))
{
//鍙湁姣背娉紶鎰熷櫒(鑷爺)
- Save(device, mIndex, mEdit);
+ SaveInput(device, mIndex, mEdit);
}
else if (button.Name == Language.StringByID(StringId.shipintonghuahujiao)) {
//鍙湁姣背娉紶鎰熷櫒(鑷爺)
- Save(device, mIndex, mEdit);
+ SaveInput(device, mIndex, mEdit);
}
}
@@ -921,7 +952,7 @@
}
selectedState = device.spk + "_" + value;
AddDictionary(keyValue, value, data_type, comparator);
- Save(device,index, edit);
+ SaveInput(device,index, edit);
});
}
/// PM2.5,Co2,Tvoc璁剧疆鍊�
@@ -979,7 +1010,7 @@
break;
}
AddDictionary(key, values, "integer", "in");
- Save(device, index, edit);
+ SaveInput(device, index, edit);
});
}
/// <summary>
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/FunTpye.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/FunTpye.cs
index 00c2315..e826f65 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/FunTpye.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/FunTpye.cs
@@ -275,9 +275,10 @@
funView.btnLine.X = Application.GetRealWidth(16);
funView.btnLine.Width = Application.GetRealWidth(343);
verticalScrolView.AddChidren(funView.FLayoutView());
- funView.btnIcon.UnSelectedImagePath = LogicMethod.Current.GetIconPath(dev.spk);
+ funView.btnIcon.UnSelectedImagePath = LogicMethod.Current.GetDeviceIconPath(dev);
funView.btnDeviceName.Text = dev.name;
funView.btnRoomName.Text = dev.GetRoomListName();
+
funView.btnClick.MouseUpEventHandler += (sen, e) =>
{
if (if_Type == LogicMethod.condition_if)
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs
index 2a295ff..fdb5883 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs
@@ -140,7 +140,7 @@
//鐢╯id鎵惧埌璁惧锛�
var device = LogicMethod.Current.GetDevice(inputCondition.sid);
//鐢ㄨ澶囩殑functionType绫诲瀷鎵惧埌瀵瑰簲鍥炬爣锛�
- inputView.btnIcon.UnSelectedImagePath = LogicMethod.Current.GetIconPath(device.spk);
+ inputView.btnIcon.UnSelectedImagePath = LogicMethod.Current.GetDeviceIconPath(device);
//鏄剧ず璁惧鍚嶇О
inputView.btnText.Text = device.name;
//鏀瑰彉璁惧鍚嶇О鏄剧ず鎺т欢瀹藉害
@@ -417,6 +417,15 @@
var FaceItem = this.GetFaceItem(userId, device.deviceId);
inputView.btnState.Text = FaceItem.userName;
}
+ }
+ break;
+ case SPK.IpCam_Imou:
+ {
+ if (inputCondition.identifier == "door_caipcam_region_alram_eventll_cloud_event")
+ {
+ inputView.btnState.Text = Language.StringByID(StringId.quyuruqingaojing);
+ }
+
}
break;
}
@@ -914,7 +923,7 @@
//鐢╯id鎵惧埌璁惧锛�
var device = LogicMethod.Current.GetDevice(outputTarget.sid);
//鐢ㄨ澶囩殑functionType绫诲瀷鎵惧埌瀵瑰簲鍥炬爣锛�
- targetView.btnIcon.UnSelectedImagePath = LogicMethod.Current.GetIconPath(device.spk);
+ targetView.btnIcon.UnSelectedImagePath = LogicMethod.Current.GetDeviceIconPath(device);
//鏄剧ず璁惧鍚嶇О
targetView.btnText.Text = device.name;
//鏀瑰彉璁惧鍚嶇О鏄剧ず鎺т欢瀹藉害
@@ -2106,6 +2115,7 @@
button2.Text = this.GetFaceItem(value, device.deviceId).userName;
}
break;
+
}
}
/// <summary>
@@ -2399,7 +2409,9 @@
/// <returns></returns>
private string GetTimeText(string strTimeValue)
{
- var timeValue = int.Parse(strTimeValue);
+ //鍥犱负璋冭瘯杞欢涓婁紶涓虹┖杩�;
+ string intTimeValue = string.IsNullOrEmpty(strTimeValue) ? "0" : strTimeValue;
+ var timeValue = int.Parse(intTimeValue);
string state = "";
var minutes = timeValue / 60;
var seconds = timeValue % 60;
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs
index 4c0e435..796dd22 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs
@@ -343,17 +343,39 @@
return roomName.TrimEnd(',');
}
- #region 鍔ㄤ竴鏀瑰洓
+
/// <summary>
/// 鑾峰彇璁惧绫诲瀷鍥炬爣
/// </summary>
+ /// <param name="device">璁惧</param>
+ /// <returns></returns>
+ public string GetDeviceIconPath(Function device)
+ {
+
+ if (SPK.MusicStandard == device.spk
+ || SPK.AvMusic == device.spk)
+ {
+ return "MusicIcon/localMusic.png";
+ }
+ //LogicIcon/heatlogic.png"
+ return $"FunctionIcon/Icon/{device.IconName}.png";
+
+ }
+ /// <summary>
+ /// 鑾峰彇璁惧绫诲瀷鍥炬爣(宸插純鐢� 2022骞�11鏈�25鏃�14:07:30)
+ /// </summary>
/// <param name="functionType">璁惧绫诲瀷</param>
/// <returns></returns>
- public string GetIconPath(string functionType)
+ public string GetIconPath(string spk)
{
string strPath = "";
- switch (functionType)
+ switch (spk)
{
+ case SPK.IpCam_Imou:
+ {
+ strPath = $"FunctionIcon/Icon/{SPK.IpCam_Imou.Replace(".", "")}.png";
+ }
+ break;
case SPK.MechanicalArm:
{
strPath = "LogicIcon/lightloguc.png";
@@ -451,10 +473,10 @@
strPath = "MusicIcon/localMusic.png";
}
break;
-
}
return strPath;
}
+ #region 鍔ㄤ竴鏀逛笁
/// <summary>
/// 璁惧绫诲瀷鐨勫垪琛�(鐏厜绫伙紝绐楀笜绫汇�傘�傘��)
/// </summary>
@@ -570,6 +592,13 @@
{
deviceStrTypeList.Add(Language.StringByID(StringId.jixieshou));
}
+ ///鎽勫儚澶寸被
+ var camera = deviceList.Find((device) =>
+ device.spk == SPK.IpCam_Imou);
+ if (camera != null)
+ {
+ deviceStrTypeList.Add(Language.StringByID(StringId.shexiangtou));
+ }
return deviceStrTypeList;
}
@@ -669,10 +698,16 @@
else if (deviceType == Language.StringByID(StringId.VideoIntercom))
{
functionTypeList.Add(SPK.doorgate);
- } ///鏈烘鎵嬬被
+ }
+ ///鏈烘鎵嬬被
else if (deviceType == Language.StringByID(StringId.jixieshou))
{
functionTypeList.Add(SPK.MechanicalArm);
+ }
+ ///鎽勫儚澶寸被
+ else if (deviceType == Language.StringByID(StringId.shexiangtou))
+ {
+ functionTypeList.Add(SPK.IpCam_Imou);
}
else
{
@@ -727,6 +762,7 @@
functionTypeList.Add(SPK.AvMusic);
functionTypeList.Add(SPK.doorgate);
functionTypeList.Add(SPK.MechanicalArm);
+ functionTypeList.Add(SPK.IpCam_Imou);
}
@@ -784,6 +820,7 @@
deviceTypeList.Add(SPK.SensorHelp);
deviceTypeList.Add(SPK.DoorLock);
deviceTypeList.Add(SPK.doorgate);
+ deviceTypeList.Add(SPK.IpCam_Imou);
}
break;
@@ -851,7 +888,7 @@
return list;
}
/// <summary>
- /// 缃戝叧ID(鑾峰彇鍢変箰缃戝叧ID)
+ /// 缃戝叧ID(鑾峰彇缃戝叧ID)
/// </summary>
public string GatewayId
{
--
Gitblit v1.8.0