From a3313818a548d51777ae4e6cc006e9d1e2c1036e Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期五, 07 四月 2023 09:15:37 +0800
Subject: [PATCH] 群控备份
---
HDL_ON/Common/Utlis/FloorSelectPopupDialog.cs | 6
HDL_ON/UI/UI2/FuntionControlView/Light/GroupControlPage.cs | 585 ++++++++++++++++
HDL_ON/UI/UI2/1-HomePage/HomePage.cs | 2
HDL_ON/UI/UI2/4-PersonalCenter/CombinedDimming/GroupControl.cs | 38 +
HDL-ON_Android/Assets/Language.ini | 6
HDL_ON/Common/ApiUtlis.cs | 46 +
HDL_ON/UI/UI2/4-PersonalCenter/CombinedDimming/CombinedDimmingListPage.cs | 95 ++
HDL_ON/DAL/Mqtt/MqttClient.cs | 2
HDL_ON/HDL_ON.projitems | 1
HDL_ON/UI/UI0-Public/DiySelectPopupDialog.cs | 8
HDL_ON/UI/UI2/FuntionControlView/Light/LightScene/AddLightScene.cs | 3
HDL-ON_iOS/Resources/Language.ini | 42 +
HDL_ON/Entity/Function/Function.cs | 5
HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs | 5
HDL_ON/DAL/Server/NewApiRes.cs | 5
HDL_ON/UI/UI2/2-Classification/FunctionPage.cs | 2
HDL_ON/DAL/Server/HttpUtil.cs | 12
HDL_ON/UI/UI2/4-PersonalCenter/CombinedDimming/AddGroupControlPage.cs | 1140 ++-----------------------------
HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPage.cs | 4
HDL_ON/Common/R.cs | 5
HDL_ON/DAL/Server/HttpServerRequest.cs | 76 ++
HDL_ON/Common/Utlis/FloorRoomSelectPopupView.cs | 4
HDL_ON/UI/UI2/2-Classification/FunctionControlZoneBLL.cs | 11
HDL_ON/Entity/ResponseEntity/RegionInfoRes.cs | 4
24 files changed, 1,000 insertions(+), 1,107 deletions(-)
diff --git a/HDL-ON_Android/Assets/Language.ini b/HDL-ON_Android/Assets/Language.ini
index 6d53d64..1afed9f 100644
--- a/HDL-ON_Android/Assets/Language.ini
+++ b/HDL-ON_Android/Assets/Language.ini
@@ -585,7 +585,7 @@
598=Select device
599=Please input name
600=Add combined dimming
-
+601=Please select two or more devices
@@ -1857,6 +1857,7 @@
598=閫夋嫨缇ゆ帶璁惧
599=璇疯緭鍏ョ粍鍚嶇О
600=娣诲姞缁勫悎璋冨厜
+601=璇烽�夋嫨涓や釜浠ヤ笂鐨勮澶�
@@ -3109,6 +3110,7 @@
598=Select device
599=Please input name
600=Add combined dimming
+601=Please select two or more devices
@@ -4344,6 +4346,7 @@
598=Select device
599=Please input name
600=Add combined dimming
+601=Please select two or more devices
2532=Visitor Invitation Record
@@ -5563,6 +5566,7 @@
598=Select device
599=Please input name
600=Add combined dimming
+601=Please select two or more devices
1000=袙谢邪卸薪芯褋褌 胁 褋褌邪褟褌邪
diff --git a/HDL-ON_iOS/Resources/Language.ini b/HDL-ON_iOS/Resources/Language.ini
index e1a9b45..1afed9f 100644
--- a/HDL-ON_iOS/Resources/Language.ini
+++ b/HDL-ON_iOS/Resources/Language.ini
@@ -580,6 +580,13 @@
593=Face photo
594=Please enter member name
595=Delete
+596=Group Name
+597=Please enter
+598=Select device
+599=Please input name
+600=Add combined dimming
+601=Please select two or more devices
+
2532=Visitor Invitation Record
@@ -1143,6 +1150,8 @@
8509=Fluorite video door lock
8510=Call from the doorbell
8511=User Education
+
+
@@ -1843,6 +1852,12 @@
593=浜鸿劯鐓х墖
594=璇疯緭鍏ユ垚鍛樺悕绉�
595=鍒犻櫎浜鸿劯鏁版嵁
+596=缁勫悕绉�
+597=璇疯緭鍏�
+598=閫夋嫨缇ゆ帶璁惧
+599=璇疯緭鍏ョ粍鍚嶇О
+600=娣诲姞缁勫悎璋冨厜
+601=璇烽�夋嫨涓や釜浠ヤ笂鐨勮澶�
@@ -2381,6 +2396,7 @@
7167=鎬绘帶寮�鍏�
7168=PM10
+
8501=瑙嗛闂ㄩ攣
8502=鐢甸噺
8503=褰撳墠闂ㄥ凡鍏�
@@ -2392,6 +2408,13 @@
8509=钀ょ煶瑙嗛闂ㄩ攣
8510=鏉ヨ嚜鈥滈棬閾冣�濆懠鍙�
8511=鐢ㄦ埛浜哄憳
+
+
+
+
+
+
+
@@ -3082,6 +3105,12 @@
593=Face photo
594=Please enter member name
595=Delete
+596=Group Name
+597=Please enter
+598=Select device
+599=Please input name
+600=Add combined dimming
+601=Please select two or more devices
@@ -4312,7 +4341,12 @@
593=Face photo
594=Please enter member name
595=Delete
-
+596=Group Name
+597=Please enter
+598=Select device
+599=Please input name
+600=Add combined dimming
+601=Please select two or more devices
2532=Visitor Invitation Record
@@ -5527,6 +5561,12 @@
593=Face photo
594=Please enter member name
595=Delete
+596=Group Name
+597=Please enter
+598=Select device
+599=Please input name
+600=Add combined dimming
+601=Please select two or more devices
1000=袙谢邪卸薪芯褋褌 胁 褋褌邪褟褌邪
diff --git a/HDL_ON/Common/ApiUtlis.cs b/HDL_ON/Common/ApiUtlis.cs
index 893a034..a177095 100644
--- a/HDL_ON/Common/ApiUtlis.cs
+++ b/HDL_ON/Common/ApiUtlis.cs
@@ -348,9 +348,9 @@
#if DEBUG
- DB_ResidenceData.Instance.CurrentRegion.isSupportGroupControl = true;
+ DB_ResidenceData.Instance.HomeGateway.isSupportGroupControl = true;
#endif
- if (DB_ResidenceData.Instance.CurrentRegion.isSupportGroupControl)
+ if (DB_ResidenceData.Instance.HomeGateway.isSupportGroupControl)
{
var pack = Ins.HttpRequest.GetGroupControlList();
if (pack != null)
@@ -359,7 +359,47 @@
{
try
{
- FunctionList.List.groupControls = JsonConvert.DeserializeObject<List<GroupControl>>(pack.Data.ToString());
+ var groupControlList = JsonConvert.DeserializeObject<List<GroupControl>>(pack.Data.ToString());
+ var readSidList = new List<string>();
+ foreach(var temp in groupControlList)
+ {
+ FunctionList.List.groupControls.Clear();
+ readSidList.Add(temp.userDeviceGroupControlId);
+ if (readSidList.Count >= 20)
+ {
+ var data = Ins.httpRequest.GetGroupControInfo(readSidList);
+ if(data != null)
+ {
+ if(data.Code == StateCode.SUCCESS)
+ {
+ var groupControlInfoList = JsonConvert.DeserializeObject<List<GroupControl>>(data.Data.ToString());
+ FunctionList.List.groupControls.AddRange(groupControlInfoList);
+ }
+ else
+ {
+ IMessageCommon.Current.ShowErrorInfoAlter(pack.Code);
+ }
+ }
+ readSidList.Clear();
+ }
+ }
+ if (readSidList.Count > 0)
+ {
+ var data = Ins.httpRequest.GetGroupControInfo(readSidList);
+ if (data != null)
+ {
+ if (data.Code == StateCode.SUCCESS)
+ {
+ var groupControlInfoList = JsonConvert.DeserializeObject<List<GroupControl>>(data.Data.ToString());
+ FunctionList.List.groupControls.AddRange(groupControlInfoList);
+ }
+ else
+ {
+ IMessageCommon.Current.ShowErrorInfoAlter(pack.Code);
+ }
+ }
+ readSidList.Clear();
+ }
}
catch (Exception ex)
{
diff --git a/HDL_ON/Common/R.cs b/HDL_ON/Common/R.cs
index 0795813..cc07f53 100644
--- a/HDL_ON/Common/R.cs
+++ b/HDL_ON/Common/R.cs
@@ -4,7 +4,10 @@
{
public static class StringId
{
-
+ /// <summary>
+ /// 璇烽�夋嫨2涓互涓婄殑璁惧
+ /// </summary>
+ public const int PlsSelectMoreData = 601;
/// <summary>
/// 娣诲姞缁勫悎璋冨厜
/// </summary>
diff --git a/HDL_ON/Common/Utlis/FloorRoomSelectPopupView.cs b/HDL_ON/Common/Utlis/FloorRoomSelectPopupView.cs
index b6c1cb3..704758b 100644
--- a/HDL_ON/Common/Utlis/FloorRoomSelectPopupView.cs
+++ b/HDL_ON/Common/Utlis/FloorRoomSelectPopupView.cs
@@ -131,7 +131,7 @@
/// <param name="i_listAllFun">鍏ㄩ儴鐨勮澶囧垪琛�,闇�瑕佹墜鍔ㄦ寚瀹�</param>
/// <param name="SelectEvent">鏍规嵁閫夋嫨鐨勬潯浠�,绛涢�変箣鍚庣殑璁惧鍒楄〃(绗竴涓弬鏁版槸閫夋嫨鐨刄ID,涓嶇鏈夋病鏈夌敤,鎬讳箣鍏堣繑鍥�)</param>
/// <param name="i_defultSelectId">榛樿鍝釜涓洪�夋嫨鐘舵��</param>
- public void ShowDeviceFunctionView(Button btnFloor, List<Function> i_listAllFun, Action<string, List<Function>> SelectEvent, string i_defultSelectId = null)
+ public void ShowDeviceFunctionView(Button btnFloor, List<Function> i_listAllFun, Action<string, List<Function>> SelectEvent, string i_defultSelectId = null, int offsetY = 0)
{
//娓呯紦瀛�
this.ClearMemory();
@@ -155,7 +155,7 @@
SelectEvent?.Invoke(this.nowShowSelectId, listDevice);
SelectEvent = null;
- }, i_defultSelectId);
+ }, i_defultSelectId, offsetY);
}
/// <summary>
diff --git a/HDL_ON/Common/Utlis/FloorSelectPopupDialog.cs b/HDL_ON/Common/Utlis/FloorSelectPopupDialog.cs
index 6c86100..020c744 100644
--- a/HDL_ON/Common/Utlis/FloorSelectPopupDialog.cs
+++ b/HDL_ON/Common/Utlis/FloorSelectPopupDialog.cs
@@ -30,7 +30,7 @@
/// </summary>
/// <param name="selectAction">鍥炶皟閫変腑浜嬩欢锛屽洖璋冮�変腑鐨剈id</param>
/// <param name="selectTag">璁剧疆閫変腑鐨則ga鏍囪</param>
- public void ShowView(Action<string> selectAction, string selectTag = DiySelectPopupDialog.ALLSELECT)
+ public void ShowView(Action<string> selectAction, string selectTag = DiySelectPopupDialog.ALLSELECT, int offsetY = 0)
{
//妤煎眰闆嗗悎鏁版嵁
var floorList = SpatialInfo.CurrentSpatial.FloorList;
@@ -54,7 +54,7 @@
}
//寮圭獥涓�绾ц仈鍔ㄩ�夋嫨绐楀彛
var roomSelectPopupDialog = new DiySelectPopupDialog();
- roomSelectPopupDialog.ShowView(mFirstList, null, selectAction, selectTag);
+ roomSelectPopupDialog.ShowView(mFirstList, null, selectAction, selectTag,offsetY);
}
else
{
@@ -80,7 +80,7 @@
}
//寮圭獥浜岀骇鑱斿姩閫夋嫨绐楀彛
var roomSelectPopupDialog = new DiySelectPopupDialog();
- roomSelectPopupDialog.ShowView(mFirstList, mSecondList, selectAction, selectTag);
+ roomSelectPopupDialog.ShowView(mFirstList, mSecondList, selectAction, selectTag,offsetY);
}
diff --git a/HDL_ON/DAL/Mqtt/MqttClient.cs b/HDL_ON/DAL/Mqtt/MqttClient.cs
index 7aead41..12026aa 100644
--- a/HDL_ON/DAL/Mqtt/MqttClient.cs
+++ b/HDL_ON/DAL/Mqtt/MqttClient.cs
@@ -269,7 +269,7 @@
deviceOnlinePush,
securityStatusChange});
//璁㈤槄缇ゆ帶鐘舵��
- if (DB_ResidenceData.Instance.CurrentRegion.isSupportGroupControl)
+ if (DB_ResidenceData.Instance.HomeGateway.isSupportGroupControl)
{
await RemoteMqttClient.SubscribeAsync(groupControlStatus);
}
diff --git a/HDL_ON/DAL/Server/HttpServerRequest.cs b/HDL_ON/DAL/Server/HttpServerRequest.cs
index 0ae1596..6054436 100644
--- a/HDL_ON/DAL/Server/HttpServerRequest.cs
+++ b/HDL_ON/DAL/Server/HttpServerRequest.cs
@@ -3206,7 +3206,7 @@
/// <summary>
/// 鑾峰彇缇ゆ帶璇︽儏
/// </summary>
- public ResponsePackNew GetGroupControInfo(String userDeviceGroupControlIds)
+ public ResponsePackNew GetGroupControInfo(string userDeviceGroupControlIds)
{
Dictionary<string, object> d = new Dictionary<string, object>();
d.Add("homeId", DB_ResidenceData.Instance.CurrentRegion.id);
@@ -3221,10 +3221,21 @@
}
/// <summary>
+ /// 鑾峰彇缇ゆ帶璇︽儏
+ /// </summary>
+ public ResponsePackNew GetGroupControInfo(List<string> ids)
+ {
+ Dictionary<string, object> d = new Dictionary<string, object>();
+ d.Add("homeId", DB_ResidenceData.Instance.CurrentRegion.id);
+ d.Add("userDeviceGroupControlIds", ids);
+ var requestJson = HttpUtil.GetSignRequestJson(d);
+ var pack = HttpUtil.RequestHttpsPostFroHome(NewAPI.Api_Post_GetGroupControlInfos, requestJson);
+ return pack;
+ }
+
+ /// <summary>
/// 娣诲姞缇ゆ帶鍒楄〃
/// </summary>
- /// <param name="spk"></param>
- /// <returns></returns>
public ResponsePackNew AddGroupControl(List<GroupControl> groupControls)
{
Dictionary<string, object> d = new Dictionary<string, object>();
@@ -3233,6 +3244,20 @@
d.Add("infos", groupControls);
var requestJson = HttpUtil.GetSignRequestJson(d);
var pack = HttpUtil.RequestHttpsPostFroHome(NewAPI.Api_Post_AddGroupControl, requestJson);
+ return pack;
+ }
+
+
+ /// <summary>
+ /// 娣诲姞缇ゆ帶鍒楄〃
+ /// </summary>
+ public ResponsePackNew DelGroupControl(string groupControlId)
+ {
+ Dictionary<string, object> d = new Dictionary<string, object>();
+ d.Add("homeId", DB_ResidenceData.Instance.CurrentRegion.id);
+ d.Add("userDeviceGroupControlIds", new List<string>() { groupControlId });
+ var requestJson = HttpUtil.GetSignRequestJson(d);
+ var pack = HttpUtil.RequestHttpsPostFroHome(NewAPI.Api_Post_DeleteGroupControl, requestJson);
return pack;
}
@@ -3251,6 +3276,51 @@
return pack;
}
+
+ /// <summary>
+ /// 缇ゆ帶鎺у埗
+ /// </summary>
+ public ResponsePackNew ControlGroupControl(string userDeviceGroupControlId, Dictionary<string, object> pair)
+ {
+ var d = new Dictionary<string, object>();
+ d.Add("homeId", DB_ResidenceData.Instance.CurrentRegion.id);
+ d.Add("userDeviceGroupControlId", userDeviceGroupControlId);
+ List<Dictionary<string, object>> dd = new List<Dictionary<string, object>>();
+ dd.Add(pair);
+ d.Add("status",dd);
+
+ var requestJson = HttpUtil.GetSignRequestJson(d);
+ var pack = HttpUtil.RequestHttpsPostFroHome(NewAPI.Api_Post_ControlGroupControl, requestJson);
+ return pack;
+ }
+
+ /// <summary>
+ /// 鏀惰棌缇ゆ帶
+ /// </summary>
+ public ResponsePackNew CollectGroupControl(string groupControlId)
+ {
+ Dictionary<string, object> d = new Dictionary<string, object>();
+ d.Add("homeId", DB_ResidenceData.Instance.CurrentRegion.id);
+ d.Add("userDeviceGroupControlIds", new List<string>() { groupControlId });
+ var requestJson = HttpUtil.GetSignRequestJson(d);
+ var pack = HttpUtil.RequestHttpsPostFroHome(NewAPI.Api_Post_CollectGroupControl, requestJson);
+ return pack;
+ }
+
+
+ /// <summary>
+ /// 鍙栨秷鏀惰棌缇ゆ帶
+ /// </summary>
+ public ResponsePackNew CancelCollectGroupControl(string groupControlId)
+ {
+ Dictionary<string, object> d = new Dictionary<string, object>();
+ d.Add("homeId", DB_ResidenceData.Instance.CurrentRegion.id);
+ d.Add("userDeviceGroupControlIds", new List<string>() { groupControlId });
+ var requestJson = HttpUtil.GetSignRequestJson(d);
+ var pack = HttpUtil.RequestHttpsPostFroHome(NewAPI.Api_Post_CancelCollectGroupControl, requestJson);
+ return pack;
+ }
+
#endregion
}
diff --git a/HDL_ON/DAL/Server/HttpUtil.cs b/HDL_ON/DAL/Server/HttpUtil.cs
index 0d07a76..62b4b3f 100644
--- a/HDL_ON/DAL/Server/HttpUtil.cs
+++ b/HDL_ON/DAL/Server/HttpUtil.cs
@@ -239,6 +239,18 @@
else
{
HDL_ON.Utlis.WriteLine($"鎺ュ彛寮傚父:{requestFullUrl} \r\n"+response.Content);
+ if(response.Content!= null)
+ {
+ try
+ {
+ var pack = Newtonsoft.Json.JsonConvert.DeserializeObject<ResponsePackNew>(response.Content);
+ if (pack != null)
+ {
+ return pack;
+ }
+ }
+ catch { }
+ }
return new ResponsePackNew() { Code = StateCode.NETWORK_ERROR };
}
diff --git a/HDL_ON/DAL/Server/NewApiRes.cs b/HDL_ON/DAL/Server/NewApiRes.cs
index 955e396..8447527 100644
--- a/HDL_ON/DAL/Server/NewApiRes.cs
+++ b/HDL_ON/DAL/Server/NewApiRes.cs
@@ -633,6 +633,11 @@
/// </summary>
public bool gatewayStatus;
+ /// <summary>
+ /// 鏄惁鏀寔缇ゆ帶
+ /// </summary>
+ public bool isSupportGroupControl = false;
+
///// <summary>
/////
///// </summary>
diff --git a/HDL_ON/Entity/Function/Function.cs b/HDL_ON/Entity/Function/Function.cs
index 99332a5..f180034 100644
--- a/HDL_ON/Entity/Function/Function.cs
+++ b/HDL_ON/Entity/Function/Function.cs
@@ -562,11 +562,14 @@
new System.Threading.Thread(() =>
{
if (spk == SPK.GroupControl) {
+ var groupControl = FunctionList.List.groupControls.Find((obj) => obj.sid == sid);
if (collect)
{
+ result = ApiUtlis.Ins.HttpRequest.CollectGroupControl(groupControl.userDeviceGroupControlId).Code;
}
else
{
+ result = ApiUtlis.Ins.HttpRequest.CancelCollectGroupControl(groupControl.userDeviceGroupControlId).Code;
}
}
else
@@ -1514,7 +1517,7 @@
public const string HvacAC = "hvac.ac";
/// <summary>
/// 姣涚粏绠$┖璋�
- /// </summary>
+ /// </summaryc
public const string HvacCac = "hvac.cac";
/// <summary>
diff --git a/HDL_ON/Entity/ResponseEntity/RegionInfoRes.cs b/HDL_ON/Entity/ResponseEntity/RegionInfoRes.cs
index 387964a..f64b239 100644
--- a/HDL_ON/Entity/ResponseEntity/RegionInfoRes.cs
+++ b/HDL_ON/Entity/ResponseEntity/RegionInfoRes.cs
@@ -131,10 +131,6 @@
/// 浜や粯閾炬帴
/// </summary>
public string deliverUrl;
- /// <summary>
- /// 鏄惁鏀寔缇ゆ帶
- /// </summary>
- public bool isSupportGroupControl = false;
}
}
diff --git a/HDL_ON/HDL_ON.projitems b/HDL_ON/HDL_ON.projitems
index c9da4f9..8e6018b 100644
--- a/HDL_ON/HDL_ON.projitems
+++ b/HDL_ON/HDL_ON.projitems
@@ -544,6 +544,7 @@
<Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\VideoDoorLock\CommonMethod.cs" />
<Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\VideoDoorLock\VideoDoorLockPage.cs" />
<Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\VideoDoorLock\VideoDoorLockListPage.cs" />
+ <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Light\GroupControlPage.cs" />
</ItemGroup>
<ItemGroup>
<Folder Include="$(MSBuildThisFileDirectory)Entity\Device\" />
diff --git a/HDL_ON/UI/UI0-Public/DiySelectPopupDialog.cs b/HDL_ON/UI/UI0-Public/DiySelectPopupDialog.cs
index 980ea4d..db258bb 100644
--- a/HDL_ON/UI/UI0-Public/DiySelectPopupDialog.cs
+++ b/HDL_ON/UI/UI0-Public/DiySelectPopupDialog.cs
@@ -70,7 +70,7 @@
/// <param name="mSecondList">浜岀骇鏁版嵁闆嗗悎</param>
/// <param name="SelectAction">閫夋嫨鍥炶皟浜嬩欢</param>
/// <param name="selectTagId"></param>
- public void ShowView(List<RoomCellInfo> mFirstList, List<List<RoomCellInfo>> mSecondList, Action<string> SelectAction, string selectTagId = ALLSELECT)
+ public void ShowView(List<RoomCellInfo> mFirstList, List<List<RoomCellInfo>> mSecondList, Action<string> SelectAction, string selectTagId = ALLSELECT, int offsetY = 0)
{
if (mFirstList == null)
{
@@ -109,7 +109,7 @@
}
//View鏄剧ず
- ShowDoubleBaseView();
+ ShowDoubleBaseView(offsetY);
//鏁版嵁鍐呭濉厖
RefreshDoubleBaseView();
//閫変腑鏁堟灉
@@ -206,7 +206,7 @@
/// <summary>
/// 鏄剧ず浜岀骇view
/// </summary>
- void ShowDoubleBaseView()
+ void ShowDoubleBaseView(int offsetY = 0)
{
bodyView.BackgroundColor = CSS_Color.DialogTransparentColor1;
this.AddChidren(bodyView);
@@ -218,7 +218,7 @@
BackView = new FrameLayout()
{
X = Application.GetRealWidth(10),
- Y = Application.GetRealHeight(104),
+ Y = Application.GetRealHeight(104+ offsetY),
Width = Application.GetRealWidth(283),
Height = Application.GetRealWidth(242),
};
diff --git a/HDL_ON/UI/UI2/1-HomePage/HomePage.cs b/HDL_ON/UI/UI2/1-HomePage/HomePage.cs
index 70a5fc2..631866a 100644
--- a/HDL_ON/UI/UI2/1-HomePage/HomePage.cs
+++ b/HDL_ON/UI/UI2/1-HomePage/HomePage.cs
@@ -725,7 +725,7 @@
{
int index = 0;
var list = FunctionList.List.GetDeviceFunctionList();
-
+ list.AddRange(FunctionList.List.groupControls);//鍔犲叆缇ゆ帶
foreach (var function in list)
{
//闊充箰妯″潡鏈変富浠庡叧绯伙紝闇�瑕佺壒娈婂鐞�
diff --git a/HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs b/HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs
index 221c195..8209237 100644
--- a/HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs
+++ b/HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs
@@ -78,7 +78,10 @@
}
btnIcon.UnSelectedImagePath = $"FunctionIcon/Icon/{function.IconName}.png";
-
+ if(function.spk == SPK.GroupControl)
+ {
+ btnIcon.UnSelectedImagePath = $"FunctionIcon/Icon/lightswitch.png";
+ }
if (SPK.CurtainSpkList().Contains(function.spk))
{//绐楀笜娌℃湁寮�鍏虫寜閽�
CurtainFragment();
diff --git a/HDL_ON/UI/UI2/2-Classification/FunctionControlZoneBLL.cs b/HDL_ON/UI/UI2/2-Classification/FunctionControlZoneBLL.cs
index 1fb2267..a639e02 100644
--- a/HDL_ON/UI/UI2/2-Classification/FunctionControlZoneBLL.cs
+++ b/HDL_ON/UI/UI2/2-Classification/FunctionControlZoneBLL.cs
@@ -405,6 +405,17 @@
/// </summary>
void LoadEvent_DivSkipEvent()
{
+ if (function.spk == SPK.GroupControl)
+ {
+ EventHandler<MouseEventArgs> handler = (sender, e) => {
+ var dialog = new GroupControlPage(FunctionList.List.groupControls.Find((obj) => obj.sid == function.sid));
+ dialog.ShowDialog();
+ };
+ this.MouseUpEventHandler = handler;
+ btnName.MouseUpEventHandler = handler;
+ btnFromFloor.MouseUpEventHandler = handler;
+ return;
+ }
var eventHandler = new PublicAssmebly().LoadEvent_SkipFunctionControlPage(function, btnCollectionIcon, btnName, btnFromFloor, UI2.FuntionControlView.VideoDoorLock.CommonMethod.Comerom.room,this.action);
this.MouseUpEventHandler = eventHandler;
btnName.MouseUpEventHandler = eventHandler;
diff --git a/HDL_ON/UI/UI2/2-Classification/FunctionPage.cs b/HDL_ON/UI/UI2/2-Classification/FunctionPage.cs
index d304f4b..dee3d46 100644
--- a/HDL_ON/UI/UI2/2-Classification/FunctionPage.cs
+++ b/HDL_ON/UI/UI2/2-Classification/FunctionPage.cs
@@ -39,7 +39,7 @@
{
bodyView.BackgroundColor = CSS_Color.BackgroundColor;
- if (titleId == StringId.Lights && !DB_ResidenceData.Instance.CurrentRegion.isSupportGroupControl)
+ if (titleId == StringId.Lights && !DB_ResidenceData.Instance.HomeGateway.isSupportGroupControl)
{
Action action = () =>
{
diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/CombinedDimming/AddGroupControlPage.cs b/HDL_ON/UI/UI2/4-PersonalCenter/CombinedDimming/AddGroupControlPage.cs
index c507931..b64cdd0 100644
--- a/HDL_ON/UI/UI2/4-PersonalCenter/CombinedDimming/AddGroupControlPage.cs
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/CombinedDimming/AddGroupControlPage.cs
@@ -55,6 +55,10 @@
/// 鏄惁鏂板缇ゆ帶
/// </summary>
bool isAdd = true;
+ /// <summary>
+ /// 缂栬緫鐨勭粍鎺ф暟鎹�
+ /// </summary>
+ string editDataString = "";
GroupControl groupControl;
@@ -71,6 +75,7 @@
{
isAdd = false;
this.groupControl = groupControl;
+ editDataString = Newtonsoft.Json.JsonConvert.SerializeObject(this.groupControl);
}
groupControlLightList = new List<Function>();
backActon = action;
@@ -172,6 +177,7 @@
locationMagtView.AddChidren(btnLocationInfoRight);
EventHandler<MouseEventArgs> eventHandler = (sender, e) =>
{
+ Application.HideSoftInput();
//淇敼鍔熻兘鎵�灞炴埧闂翠箣鍚庣殑鍥炶皟浜嬩欢
Action chooseRoomBackAction = () => {
try
@@ -278,7 +284,6 @@
bodyView.AddChidren(functionListView);
- LoadLightRow(lightList);
functionListView.AddChidren(new Button()
{
Height = Application.GetRealHeight(10),
@@ -308,6 +313,7 @@
TextSize = CSS_FontSize.SubheadingFontSize,
SelectedTextColor = CSS_Color.MainBackgroundColor,
SelectedBackgroundColor = CSS_Color.MainColor,
+ IsSelected = !isAdd
};
bottomView.AddChidren(btnConfrim);
btnConfrim.MouseUpEventHandler = (sender, e) => {
@@ -320,59 +326,96 @@
new PublicAssmebly().TipMsg(StringId.Tip, StringId.PlsEntryGroupName);
return;
}
- groupControl.name = name;
- groupControl.sids.Clear();
- foreach (var light in groupControlLightList)
+ if (groupControlLightList.Count < 2)
{
+ new PublicAssmebly().TipMsg(StringId.Tip, StringId.PlsSelectMoreData);
+ return;
+ }
+ if (isAdd)
+ {
+ groupControl.name = name;
+ groupControl.sids.Clear();
+ foreach (var light in groupControlLightList)
+ {
+ try
+ {
+ var gc = new GroupControlFunction();
+ gc.sid = light.sid;
+ gc.spk = light.spk;
+ groupControl.sids.Add(gc);
+ }
+ catch (Exception ex)
+ {
+ MainPage.Log($"鏂板缇ゆ帶杞崲鏁版嵁寮傚父:{ex.Message}");
+ }
+ }
try
{
- var gc = new GroupControlFunction();
- gc.sid = light.sid;
- gc.spk = light.spk;
- groupControl.sids.Add(gc);
+ groupControl.type = groupControlType.type;
+ groupControl.sid = groupControl.NewGroupControlSid();
+ var pack = Common.ApiUtlis.Ins.HttpRequest.AddGroupControl(new List<GroupControl>() { groupControl });
+ if (pack != null)
+ {
+ if (pack.Code == StateCode.SUCCESS)
+ {
+ backActon?.Invoke();
+ this.RemoveFromParent();
+ }
+ else
+ {
+ IMessageCommon.Current.ShowErrorInfoAlter(pack.Code);
+ }
+ }
}
catch (Exception ex)
{
- MainPage.Log($"鏂板缇ゆ帶杞崲鏁版嵁寮傚父:{ex.Message}");
+ MainPage.Log($"鏂板缇ゆ帶寮傚父:{ex.Message}");
}
}
- try
+ else
{
- var http = new HttpServerRequest();
- groupControl.type = groupControlType.type;
- groupControl.sid = groupControl.NewGroupControlSid();
- var pack = http.AddGroupControl(new List<GroupControl>() { groupControl });
- if (pack != null)
+ try
{
- if(pack.Code == StateCode.SUCCESS)
+ var newEditDataString = Newtonsoft.Json.JsonConvert.SerializeObject(this.groupControl);
+ //娌℃湁鏇存柊鏁版嵁鍒欑洿鎺ラ��鍑�
+ if (newEditDataString == editDataString)
{
- backActon?.Invoke();
this.RemoveFromParent();
+ return;
}
- else
+ var pack = Common.ApiUtlis.Ins.HttpRequest.EditGroupControl(new List<GroupControl>() { groupControl });
+ if (pack != null)
{
- IMessageCommon.Current.ShowErrorInfoAlter(pack.Code);
+ if (pack.Code == StateCode.SUCCESS)
+ {
+ backActon?.Invoke();
+ this.RemoveFromParent();
+ }
+ else
+ {
+ IMessageCommon.Current.ShowErrorInfoAlter(pack.Code);
+ }
}
}
- }
- catch (Exception ex)
- {
- MainPage.Log($"鏂板缇ゆ帶寮傚父:{ex.Message}");
+ catch (Exception ex)
+ {
+ MainPage.Log($"缂栬緫缇ゆ帶寮傚父:{ex.Message}");
+ }
+
}
}
};
#endregion
- //鍔犺浇鍔熻兘绛涢�夌粍浠�
+
LoadDialog_ChangeFloor();
new Thread(() => {
- var http = new HttpServerRequest();
if (isAdd)
{
- var pack = http.GetGroupControlTypes("light.switch");
+ var pack = Common.ApiUtlis.Ins.HttpRequest.GetGroupControlTypes("light.switch");
if (pack != null)
{
if (pack.Code == StateCode.SUCCESS)
@@ -384,6 +427,9 @@
if (groupControlTypes != null && groupControlTypes.Count > 0)
{
groupControlType = groupControlTypes[0];
+ Application.RunOnMainThread(() => {
+ LoadLightRow(lightList);
+ });
}
}
catch (Exception ex)
@@ -399,7 +445,7 @@
}
else
{
- var pack = http.GetGroupControInfo(groupControl.userDeviceGroupControlId);
+ var pack = Common.ApiUtlis.Ins.HttpRequest.GetGroupControInfo(groupControl.userDeviceGroupControlId);
if (pack != null)
{
if (pack.Code == StateCode.SUCCESS)
@@ -411,6 +457,10 @@
if (groupControlTemps != null && groupControlTemps.Count > 0)
{
groupControl = groupControlTemps[0];
+ Application.RunOnMainThread(() =>
+ {
+ LoadLightRow(lightList);
+ });
}
}
catch (Exception ex)
@@ -558,6 +608,7 @@
string nowSelectId = null;
btnFloor.MouseUpEventHandler += (sender, e) =>
{
+ Application.HideSoftInput();
//鏄剧ず涓嬫媺鍒楄〃
var form = new FloorRoomSelectPopupView();
form.ShowDeviceFunctionView(btnFloor, this.lightList, (selectId, listFunc) =>
@@ -580,1044 +631,11 @@
nowSelectId = selectId;
//閲嶆柊鍔犺浇鐣岄潰
LoadLightRow(listFunc);
- }, nowSelectId);
+ }, nowSelectId,100);
};
}
}
-
- //public class LightRow : FrameLayout
- //{
- // #region 鍖哄煙鎺т欢
- // static FrameLayout bodyDiv;
- // /// <summary>
- // /// 鍔熻兘/鍦烘櫙icon
- // /// </summary>
- // Button btnIcon;
- // /// <summary>
- // /// 鍔熻兘鍚嶇О/鍦烘櫙鍚嶇О
- // /// </summary>
- // Button btnName;
- // /// <summary>
- // /// 妤煎眰淇℃伅鏄剧ず鎸夐挳
- // /// </summary>
- // Button btnFromFloor;
- // /// <summary>
- // /// 閫変腑鎸夐挳
- // /// </summary>
- // Button btnSelect;
- // #endregion
-
- // #region 鍖哄煙鍙橀噺
- // Function function;
- // #endregion
- // public LightRow(Function func)
- // {
- // bodyDiv = this;
- // bodyDiv.Tag = func.sid;
- // function = func;
- // }
-
-
- // /// <summary>
- // /// 鍔犺浇鎺у埗鍗$墖鍖哄煙
- // /// </summary>
- // public void LoadDiv(List<Function> functions, Action action)
- // {
- // btnIcon = new Button()
- // {
- // X = Application.GetRealWidth(10),
- // Y = Application.GetRealHeight(15),
- // Width = Application.GetRealWidth(32),
- // Height = Application.GetRealWidth(32),
- // UnSelectedImagePath = $"FunctionIcon/Icon/{function.IconName}.png"
- // };
- // bodyDiv.AddChidren(btnIcon);
-
- // btnName = new Button()
- // {
- // X = Application.GetRealWidth(8 + 10 + 32),
- // Y = Application.GetRealHeight(10),
- // Width = Application.GetRealWidth(200),
- // Height = Application.GetRealHeight(24),
- // Text = function.name,
- // TextAlignment = TextAlignment.CenterLeft,
- // TextColor = CSS_Color.FirstLevelTitleColor,
- // TextSize = CSS_FontSize.TextFontSize,
- // };
- // bodyDiv.AddChidren(btnName);
-
- // btnFromFloor = new Button()
- // {
- // X = Application.GetRealWidth(8 + 10 + 32),
- // Y = Application.GetRealHeight(10 + 24),
- // Width = Application.GetRealWidth(200),
- // Height = Application.GetRealHeight(18),
- // Text = function.GetRoomListName(),
- // TextAlignment = TextAlignment.CenterLeft,
- // TextColor = CSS_Color.PromptingColor1,
- // TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
- // };
- // bodyDiv.AddChidren(btnFromFloor);
-
- // btnSelect = new Button()
- // {
- // X = Application.GetRealWidth(303),
- // Gravity = Gravity.CenterVertical,
- // Width = Application.GetRealWidth(32),
- // Height = Application.GetRealWidth(32),
- // UnSelectedImagePath = "FunctionIcon/Light/LightScene/CheckIcon.png",
- // SelectedImagePath = "FunctionIcon/Light/LightScene/CheckOnIcon.png",
- // IsSelected = functions.Find((obj) => obj.deviceId == function.deviceId) != null
- // };
- // bodyDiv.AddChidren(btnSelect);
-
- // btnSelect.MouseUpEventHandler = (sender, e) => {
- // btnSelect.IsSelected = !btnSelect.IsSelected;
- // if (btnSelect.IsSelected)
- // {
- // var addTemp = functions.Find((obj) => obj.deviceId == function.deviceId);
- // if (addTemp == null)
- // {
- // functions.Add(function);
- // }
- // }
- // else
- // {
- // var removeTemp = functions.Find((obj) => obj.deviceId == function.deviceId);
- // if (removeTemp != null)
- // {
- // functions.Remove(removeTemp);
- // }
- // }
- // ///鍒锋柊鐣岄潰
- // if (functions.Count == 0 || functions.Count == 1)
- // {
- // action();
- // }
- // };
-
- // }
-
-
- //}
-
- ///// <summary>
- ///// 鐏厜鍦烘櫙缂栬緫寮圭獥
- ///// </summary>
- //public class LightSceneEditDialog : Dialog
- //{
-
-
- // Dictionary<string, string> d = new Dictionary<string, string>();
- // List<Function> listSwitch = new List<Function>();
- // List<Function> lightDimming = new List<Function>();
- // List<Function> lightCCT = new List<Function>();
- // List<Function> lightRGB = new List<Function>();
-
- // /// <summary>
- // /// 浼犲叆鐨勭伅鍏夊垪琛�
- // /// 鍔犲叆鍦烘櫙鎺у埗鍔熻兘鍒楄〃
- // /// </summary>
- // List<Function> lights;
- // /// <summary>
- // /// 涓存椂鐏厜瀵硅薄
- // /// 澶勭悊鐏厜鏂规硶
- // /// </summary>
- // Light tempLight = new Light();
- // //鍙戦�佹暟鎹敹闆�
- // Dictionary<string, string> commandDic = new Dictionary<string, string>();
-
- // Scene scene;
- // Action<Scene> backAction;
- // public LightSceneEditDialog(List<Function> functions, Scene inParScene, Action<Scene> action)
- // {
- // lights = functions;
- // scene = inParScene;
- // backAction = action;
- // }
-
-
- // public void ShowDialog()
- // {
- // commandDic.Clear();
- // commandDic.Add(FunctionAttributeKey.OnOff, "off");
-
- // listSwitch = lights.FindAll((obj) => obj.spk == SPK.LightSwitch);
- // lightDimming = lights.FindAll((obj) => obj.spk == SPK.LightDimming);
- // lightCCT = lights.FindAll((obj) => obj.spk == SPK.LightCCT);
- // lightRGB = lights.FindAll((obj) => obj.spk == SPK.LightRGB);
-
-
-
- // var hadDimming = lightDimming.Count > 0;
- // var hadCCT = lightCCT.Count > 0;
- // var hadRGB = lightRGB.Count > 0;
- // if (hadRGB)
- // {
- // commandDic.Add(FunctionAttributeKey.RGB, lightRGB[0].GetAttrState(FunctionAttributeKey.RGB));
- // commandDic.Add(FunctionAttributeKey.Brightness, lightRGB[0].GetAttrState(FunctionAttributeKey.Brightness));
- // }
- // if (hadCCT)
- // {
- // commandDic.Add(FunctionAttributeKey.CCT, lightCCT[0].GetAttrState(FunctionAttributeKey.CCT));
- // if (!commandDic.ContainsKey(FunctionAttributeKey.Brightness))
- // {
- // commandDic.Add(FunctionAttributeKey.Brightness, lightCCT[0].GetAttrState(FunctionAttributeKey.Brightness));
- // }
- // }
- // if (hadDimming)
- // {
- // if (!commandDic.ContainsKey(FunctionAttributeKey.Brightness))
- // {
- // commandDic.Add(FunctionAttributeKey.Brightness, lightDimming[0].GetAttrState(FunctionAttributeKey.Brightness));
- // }
- // }
-
- // var bodyView = new FrameLayout();
- // this.AddChidren(bodyView);
- // bodyView.MouseUpEventHandler = (sender, e) => {
- // this.Close();
- // };
-
- // var contentView = new FrameLayout()
- // {
- // BackgroundColor = CSS_Color.MainBackgroundColor,
- // Width = Application.GetRealWidth(343),
- // Radius = (uint)Application.GetRealWidth(12),
- // };
- // bodyView.AddChidren(contentView);
-
- // #region 鏍囬鍖�
- // var titleView = new FrameLayout()
- // {
- // Width = Application.GetRealWidth(343),
- // Height = Application.GetRealHeight(52),
- // };
- // contentView.AddChidren(titleView);
-
- // var btnTitle = new Button()
- // {
- // Height = Application.GetRealHeight(52),
- // Gravity = Gravity.Center,
- // TextSize = CSS_FontSize.SubheadingFontSize,
- // TextColor = CSS_Color.MainColor,
- // TextID = StringId.CombinedDimming,
- // TextAlignment = TextAlignment.Center,
- // };
- // if (btnTitle.GetTextWidth() > Application.GetRealWidth(197))//247
- // {
- // btnTitle.Width = Application.GetRealWidth(197);
- // btnTitle.IsMoreLines = true;
- // }
- // else
- // {
- // btnTitle.Width = btnTitle.GetTextWidth() + Application.GetRealWidth(10);
- // btnTitle.IsMoreLines = false;
- // }
- // titleView.AddChidren(btnTitle);
-
- // var btnEditIcon = new Button()
- // {
- // Width = Application.GetRealWidth(24),
- // Height = Application.GetRealWidth(24),
- // X = Application.GetRealWidth(12) + btnTitle.Right,
- // Gravity = Gravity.CenterVertical,
- // UnSelectedImagePath = "Public/Edit.png",
- // };
- // if (string.IsNullOrEmpty(scene.userSceneId))
- // {
- // titleView.AddChidren(btnEditIcon);
- // }
- // else
- // {
- // btnTitle.Text = scene.name;
- // btnTitle.Width = btnTitle.GetTextWidth() + Application.GetRealWidth(10);
- // btnTitle.Gravity = Gravity.Center;
- // }
-
- // Action<string> callBack = (str) =>
- // {
- // //鍚嶇О涓嶈兘涓虹┖
- // if (string.IsNullOrEmpty(str))
- // {
- // new Tip()
- // {
- // CloseTime = 1,
- // Text = Language.StringByID(StringId.NameCannotBeEmpty),
- // Direction = AMPopTipDirection.None,
- // }.Show(bodyView);
- // return;
- // }
- // btnTitle.Text = str;
- // scene.name = str;
-
-
- // if (btnTitle.GetTextWidth() > Application.GetRealWidth(197))//247
- // {
- // btnTitle.Width = Application.GetRealWidth(197);
- // }
- // else
- // {
- // btnTitle.Width = btnTitle.GetTextWidth();
- // }
-
- // };
- // EventHandler<MouseEventArgs> eventHandler = (sender, e) =>
- // {
- // List<string> sceneNameList = new List<string>();
- // foreach (var tempScene in FunctionList.List.scenes)
- // {
- // sceneNameList.Add(tempScene.name);
- // }
- // new PublicAssmebly().LoadDialog_EditParater(StringId.SceneName, scene.name, callBack, StringId.SceneNameCannotBeEmpty, StringId.SceneNameAlreadyExists, sceneNameList);
- // };
- // btnTitle.MouseUpEventHandler = eventHandler;
- // btnEditIcon.MouseUpEventHandler = eventHandler;
-
- // titleView.AddChidren(new Button() { Height = 1, BackgroundColor = CSS_Color.DividingLineColor, Y = Application.GetRealHeight(51) });
-
- // #endregion
-
-
- // //var dimmingLight = lights.Find((obj) => obj.spk == SPK.LightDimming);
- // //var cctLight = lights.Find((obj) => obj.spk == SPK.LightCCT);
- // //var rgbLight = lights.Find((obj) => obj.spk == SPK.LightRGB);
- // var dimmingLight = scene.functions.Find((obj) => obj.localFunction.spk == SPK.LightDimming);
- // var cctLight = scene.functions.Find((obj) => obj.localFunction.spk == SPK.LightCCT);
- // var rgbLight = scene.functions.Find((obj) => obj.localFunction.spk == SPK.LightRGB);
-
- // var brightnessValue = 0;
- // var cctValue = 27;
- // //if(rgbLight!= null)
- // //{
- // // int.TryParse(rgbLight.status.Find((obj) => obj.key == FunctionAttributeKey.Brightness).value, out brightnessValue);
- // //}
- // //if (cctLight != null)
- // //{
- // // int.TryParse(cctLight.status.Find((obj) => obj.key == FunctionAttributeKey.Brightness).value, out brightnessValue);
- // // int.TryParse(cctLight.status.Find((obj) => obj.key == FunctionAttributeKey.CCT).value, out cctValue);
- // //}
- // //if(dimmingLight!=null)
- // //{
- // // int.TryParse(cctLight.status.Find((obj) => obj.key == FunctionAttributeKey.CCT).value, out brightnessValue);
- // //}
-
-
- // //灞炴�ц缃尯鍩�
- // var attrView = new VerticalScrolViewLayout()
- // {
- // Y = Application.GetRealHeight(52),
- // Width = Application.GetRealWidth(343),
- // ScrollEnabled = false,
- // };
- // //灞炴�ц缃尯鍩熼珮搴�
- // int attrViewHight = Application.GetRealHeight(18 + 22);
-
-
- // //鍙湁缁х數鍣�
- // if (!hadDimming && !hadCCT && !hadRGB)
- // {
- // attrViewHight += Application.GetRealHeight(50);
- // attrView.Height = attrViewHight;
- // contentView.AddChidren(attrView);
- // attrView.AddChidren(new Button() { Height = Application.GetRealHeight(18) });
-
- // var view = new FrameLayout()
- // {
- // Width = Application.GetRealWidth(343),
- // Height = Application.GetRealHeight(50),
- // };
- // attrView.AddChidren(view);
-
-
- // var btnClose = new Button()
- // {
- // X = Application.GetRealWidth(50),
- // Gravity = Gravity.CenterVertical,
- // Width = Application.GetRealWidth(98),
- // Height = Application.GetRealHeight(40),
- // TextColor = CSS_Color.TextualColor,
- // SelectedBackgroundColor = CSS_Color.MainColor,
- // SelectedTextColor = CSS_Color.MainBackgroundColor,
- // BackgroundColor = CSS_Color.DividingLineColor,
- // TextID = StringId.OFF,
- // TextSize = CSS_FontSize.TextFontSize,
- // Radius = (uint)Application.GetRealWidth(5),
- // IsSelected = true,
- // //BorderWidth = 1,
- // //BorderColor = 0x00000000
- // };
- // view.AddChidren(btnClose);
-
- // var btnOpen = new Button()
- // {
- // X = Application.GetRealWidth(100 + 98),
- // Gravity = Gravity.CenterVertical,
- // Width = Application.GetRealWidth(98),
- // Height = Application.GetRealHeight(40),
- // TextColor = CSS_Color.TextualColor,
- // SelectedBackgroundColor = CSS_Color.MainColor,
- // SelectedTextColor = CSS_Color.MainBackgroundColor,
- // BackgroundColor = CSS_Color.DividingLineColor,
- // TextID = StringId.On,
- // TextSize = CSS_FontSize.TextFontSize,
- // Radius = (uint)Application.GetRealWidth(5),
- // };
- // view.AddChidren(btnOpen);
-
- // btnClose.MouseUpEventHandler = (sender, e) =>
- // {
- // btnClose.IsSelected = true;
- // btnOpen.IsSelected = false;
- // commandDic[FunctionAttributeKey.OnOff] = "off";
- // d.Clear();
- // d.Add(FunctionAttributeKey.OnOff, "off");
- // foreach (var light in lights)
- // {
- // Control.Ins.SendWriteCommand(light, d);
- // }
- // };
- // btnOpen.MouseUpEventHandler = (sender, e) =>
- // {
- // btnClose.IsSelected = false;
- // btnOpen.IsSelected = true;
- // commandDic[FunctionAttributeKey.OnOff] = "on";
- // d.Clear();
- // d.Add(FunctionAttributeKey.OnOff, "on");
- // foreach (var light in lights)
- // {
- // Control.Ins.SendWriteCommand(light, d);
- // }
- // };
-
- // }
-
- // else
- // {
- // if (hadRGB)
- // {
- // attrViewHight += Application.GetRealHeight(248);
- // hadDimming = true;
- // }
- // if (hadCCT)
- // {
- // attrViewHight += Application.GetRealHeight(54 + 11);
- // hadDimming = true;
- // }
- // if (hadDimming)
- // {
- // attrViewHight += Application.GetRealHeight(54 + 11);
- // }
- // attrView.Height = attrViewHight;
- // contentView.AddChidren(attrView);
- // attrView.AddChidren(new Button() { Height = Application.GetRealHeight(18) });
-
-
- // if (hadDimming)
- // {
- // LoadDimmingAttrView(attrView);
- // }
- // if (hadCCT)
- // {
- // LoadCctAttrView(attrView);
- // }
- // if (hadRGB)
- // {
- // LoadRgbAttrView(attrView);
- // }
- // }
-
- // contentView.Height = Application.GetRealHeight(52 + 44) + attrViewHight;
- // contentView.Gravity = Gravity.Center;
-
-
-
-
- // #region bottom View
- // var bottomView = new FrameLayout()
- // {
- // Y = Application.GetRealHeight(52) + attrViewHight,
- // Height = Application.GetRealHeight(46),
- // };
- // contentView.AddChidren(bottomView);
- // bottomView.AddChidren(new Button() { Height = 1, BackgroundColor = CSS_Color.DividingLineColor });
-
- // if (string.IsNullOrEmpty(scene.userSceneId))
- // {
- // var btnCacel = new Button()
- // {
- // Width = Application.GetRealWidth(172),
- // Height = Application.GetRealHeight(44),
- // TextAlignment = TextAlignment.Center,
- // TextSize = CSS_FontSize.SubheadingFontSize,
- // TextColor = CSS_Color.TextualColor,
- // TextID = StringId.Cancel,
- // };
- // bottomView.AddChidren(btnCacel);
-
- // var btnSave = new Button()
- // {
- // X = Application.GetRealWidth(172),
- // Width = Application.GetRealWidth(172),
- // Height = Application.GetRealHeight(46),
- // BackgroundColor = CSS_Color.MainColor,
- // TextColor = CSS_Color.MainBackgroundColor,
- // TextAlignment = TextAlignment.Center,
- // TextSize = CSS_FontSize.SubheadingFontSize,
- // TextID = StringId.Save
- // };
- // bottomView.AddChidren(btnSave);
-
- // //渚嬶細鍙充笅鍦嗚 澶у皬涓�50
- // int mRectCornerID = HDLUtils.RectCornerBottomRight;
- // btnSave.SetCornerWithSameRadius((uint)Application.GetRealWidth(14), mRectCornerID);
-
- // btnCacel.MouseUpEventHandler = (sender, e) =>
- // {
- // this.Close();
-
- // //var waitPage = new Loading();
- // //MainPage.BaseView.AddChidren(waitPage);
- // //waitPage.Start(Language.StringByID(StringId.PleaseWait));
- // //new Thread(() =>
- // //{
- // // try
- // // {
- // // foreach (var light in lights)
- // // {
- // // Dictionary<string, string> sendDate = new Dictionary<string, string>();
- // // //璧嬪�煎満鏅姛鑳芥暟鎹�
- // // foreach (var attr in light.GetAttributes())
- // // {
- // // if (commandDic.ContainsKey(attr))
- // // {
- // // try
- // // {
- // // sendDate.Add(attr, commandDic[attr]);
- // // }
- // // catch { }
- // // }
-
- // // }
- // // Control.Ins.SendWriteCommand(light, sendDate);
- // // Thread.Sleep(50);
- // // }
- // // }
- // // catch
- // // { }
- // // finally
- // // {
- // // Application.RunOnMainThread(() =>
- // // {
- // // waitPage.Hide();
- // // new PublicAssmebly().TipMsgAutoClose("缁勫悎鎺у埗宸叉墽琛�", true);
- // // if (waitPage != null)
- // // {
- // // //backAction(null);
- // // waitPage.RemoveFromParent();
- // // }
- // // });
- // // }
- // //})
- // //{ IsBackground = true }.Start();
- // };
-
- // btnSave.MouseUpEventHandler = (sender, e) =>
- // {
- // if (string.IsNullOrEmpty(scene.name))
- // {
- // new Tip()
- // {
- // CloseTime = 1,
- // Text = Language.StringByID(StringId.NameCannotBeEmpty),
- // Direction = AMPopTipDirection.None,
- // }.Show(bodyView);
- // return;
- // }
- // foreach (var tempRoom in FunctionList.List.scenes)
- // {
- // if (scene.name == tempRoom.name)
- // {
- // new PublicAssmebly().TipMsg(StringId.Tip, StringId.NameAlreadyExists);
- // return;
- // }
- // }
- // var waitPage = new Loading();
- // MainPage.BaseView.AddChidren(waitPage);
- // waitPage.Start(Language.StringByID(StringId.PleaseWait));
- // new Thread(() =>
- // {
- // try
- // {
- // var serverScene = new Scene();
- // for (int i = 0; i < lights.Count; i++)
- // {
- // var light = lights[i];
- // //璧嬪�煎満鏅姛鑳芥暟鎹�
- // foreach (var attr in light.GetAttributes())
- // {
- // if (commandDic.ContainsKey(attr))
- // {
- // try
- // {
- // light.SetAttrState(attr, commandDic[attr]);
- // }
- // catch { }
- // }
- // }
- // //杞崲鍦烘櫙鐨勫姛鑳藉璞�
- // var sceneFunction = light.ConvertSceneFunction();
- // //鏌ヨ鏈夋病鏈夊瓨鍦�
- // var temp = scene.functions.Find((obj) => obj.sid == sceneFunction.sid);
- // //璧嬪��
- // if (temp != null)
- // {
- // temp = sceneFunction;
- // }
- // else
- // {
- // scene.functions.Add(sceneFunction);
- // }
- // }
- // var result = FunctionList.List.AddScene(scene, out serverScene);
- // Application.RunOnMainThread(() =>
- // {
- // if (result == StateCode.SUCCESS)
- // {
- // scene.userSceneId = serverScene.userSceneId;
- // FunctionList.List.scenes.Add(scene);
- // backAction?.Invoke(scene);
- // this.Close();
- // }
- // else
- // {
- // if (result == "124005")
- // IMessageCommon.Current.ShowErrorInfoAlter(Language.StringByID(StringId.GatewayOffline));
- // else
- // IMessageCommon.Current.ShowErrorInfoAlter(result);
- // }
- // });
- // }
- // catch { }
- // finally
- // {
- // Application.RunOnMainThread(() =>
- // {
- // waitPage.Hide();
- // waitPage.RemoveFromParent();
- // });
- // }
- // })
- // { IsBackground = true, Priority = ThreadPriority.AboveNormal }.Start();
- // };
- // }
- // else
- // {
- // var btnCacel = new Button()
- // {
- // Height = Application.GetRealHeight(44),
- // TextAlignment = TextAlignment.Center,
- // TextSize = CSS_FontSize.SubheadingFontSize,
- // TextColor = CSS_Color.TextualColor,
- // TextID = StringId.Close,
- // };
- // bottomView.AddChidren(btnCacel);
-
-
- // //渚嬶細鍙充笅鍦嗚 澶у皬涓�50
- // //int mRectCornerID = HDLUtils.RectCornerBottomRight;
- // //btnSave.SetCornerWithSameRadius((uint)Application.GetRealWidth(14), mRectCornerID);
-
- // btnCacel.MouseUpEventHandler = (sender, e) =>
- // {
- // this.Close();
- // };
-
- // }
-
-
-
-
-
- // #endregion
-
-
- // this.Show();
-
- // }
-
- // /// <summary>
- // /// 鍔犺浇璋冨厜灞炴�ц缃帶浠�
- // /// </summary>
- // /// <param name="attrView"></param>
- // void LoadDimmingAttrView(VerticalScrolViewLayout attrView)
- // {
- // string briValue = "";
- // commandDic.TryGetValue(FunctionAttributeKey.Brightness, out briValue);
-
- // var dimmingView = new FrameLayout()
- // {
- // Height = Application.GetRealHeight(54 + 11)
- // };
- // attrView.AddChidren(dimmingView);
-
- // #region 浜害璋冭妭
- // var btnBrightnessText = new Button()
- // {
- // X = Application.GetRealWidth(35),
- // Y = Application.GetRealHeight(1),
- // Width = Application.GetRealWidth(224),
- // Height = Application.GetRealHeight(25),
- // TextAlignment = TextAlignment.CenterLeft,
- // TextColor = CSS_Color.FirstLevelTitleColor,
- // TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
- // TextID = StringId.Brightness,
- // };
- // btnBrightnessText.Text = Language.StringByID(StringId.Brightness) + " " + commandDic[FunctionAttributeKey.Brightness] + "%";
- // dimmingView.AddChidren(btnBrightnessText);
-
-
- // var btnMinValuesText = new Button()
- // {
- // X = Application.GetRealWidth(35),
- // Y = btnBrightnessText.Bottom,
- // Width = Application.GetRealWidth(40),
- // Height = Application.GetRealHeight(21),
- // Text = "0%",
- // TextAlignment = TextAlignment.CenterLeft,
- // TextColor = CSS_Color.PromptingColor1,
- // TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
- // };
- // dimmingView.AddChidren(btnMinValuesText);
-
- // var dimmerBar = new DiyImageSeekBar()
- // {
- // X = Application.GetRealWidth(45 + 10),
- // Y = Application.GetRealHeight(11),
- // Width = Application.GetRealWidth(220),
- // Height = Application.GetRealHeight(54),
- // SeekBarViewHeight = Application.GetRealHeight(8),
- // ThumbImagePath = "Public/ThumbImage.png",
- // ThumbImageHeight = Application.GetRealHeight(54),
- // ProgressTextColor = CSS_Color.FirstLevelTitleColor,
- // ProgressTextSize = CSS_FontSize.PromptFontSize_FirstLevel,
- // ProgressBarColor = CSS_Color.AuxiliaryColor1,
- // MaxValue = 100,
- // Progress = Convert.ToInt32(commandDic[FunctionAttributeKey.Brightness]),
- // SeekBarPadding = Application.GetRealWidth(20),
- // IsProgressTextShow = false,
- // ProgressChangeDelayTime = 0,
- // };
- // dimmingView.AddChidren(dimmerBar);
- // dimmerBar.OnProgressChangedEvent = (sender, e) => {
- // btnBrightnessText.Text = Language.StringByID(StringId.Brightness) + " " + e + "%";
- // };
- // dimmerBar.OnStopTrackingTouchEvent = (sender, e) => {
- // commandDic[FunctionAttributeKey.Brightness] = dimmerBar.Progress.ToString();
- // btnBrightnessText.Text = Language.StringByID(StringId.Brightness) + " " + e + "%";
-
- // foreach (var light in lights)
- // {
- // if (light.spk == SPK.LightSwitch)
- // {
- // d.Clear();
- // d.Add(FunctionAttributeKey.OnOff, e > 0 ? "on" : "off");
- // Control.Ins.SendWriteCommand(light, d);
- // }
- // else
- // {
- // d.Clear();
- // d.Add(FunctionAttributeKey.Brightness, e.ToString());
- // Control.Ins.SendWriteCommand(light, d);
- // }
- // }
- // };
-
-
- // var btnMaxValuesText = new Button()
- // {
- // X = dimmerBar.Right,
- // Y = btnBrightnessText.Bottom,
- // Width = Application.GetRealWidth(55),
- // Height = Application.GetRealHeight(21),
- // Text = "100%",
- // TextAlignment = TextAlignment.CenterLeft,
- // TextColor = CSS_Color.PromptingColor1,
- // TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
- // };
- // dimmingView.AddChidren(btnMaxValuesText);
- // #endregion
-
- // }
-
- // /// <summary>
- // /// 鍔犺浇cct灞炴�ц缃帶浠�
- // /// </summary>
- // /// <param name="attrView"></param>
- // void LoadCctAttrView(VerticalScrolViewLayout attrView)
- // {
- // #region 鑹叉俯
-
- // string valueStr = "2700";
- // commandDic.TryGetValue(FunctionAttributeKey.CCT, out valueStr);
- // int value = Convert.ToInt32(valueStr) / 100;
-
- // var cctView = new FrameLayout()
- // {
- // Height = Application.GetRealHeight(54 + 11)
- // };
- // attrView.AddChidren(cctView);
-
-
- // //鑹叉俯
- // var btnTempClolor = new Button();
- // btnTempClolor.X = Application.GetRealWidth(35);
- // btnTempClolor.Y = Application.GetRealHeight(1);
- // btnTempClolor.Width = Application.GetRealWidth(224);
- // btnTempClolor.Height = Application.GetRealHeight(21);
- // btnTempClolor.TextAlignment = TextAlignment.CenterLeft;
- // btnTempClolor.TextColor = CSS_Color.FirstLevelTitleColor;
- // btnTempClolor.TextSize = CSS_FontSize.PromptFontSize_FirstLevel;
- // btnTempClolor.TextID = StringId.ColorTemperature;
- // cctView.AddChidren(btnTempClolor);
-
- // //2700K
- // var btnTempClolorMin = new Button()
- // {
- // X = Application.GetRealWidth(35),
- // Y = btnTempClolor.Bottom,
- // Width = Application.GetRealWidth(40),
- // Height = Application.GetRealHeight(21),
- // };
- // btnTempClolorMin.Width = Application.GetRealWidth(54);
- // btnTempClolorMin.Height = Application.GetRealHeight(21);
- // btnTempClolorMin.Text = "2700K";
- // btnTempClolorMin.TextAlignment = TextAlignment.CenterLeft;
- // btnTempClolorMin.TextColor = CSS_Color.PromptingColor1;
- // btnTempClolorMin.TextSize = CSS_FontSize.PromptFontSize_FirstLevel;
- // cctView.AddChidren(btnTempClolorMin);
-
- // //婊戝姩鏉$殑鑳屾櫙鍥剧墖
- // var btnColorTemplatrueBack = new Button()
- // {
- // X = Application.GetRealWidth(55 + 22 + 15),
- // Y = Application.GetRealHeight(11),
- // Width = Application.GetRealWidth(180),
- // Height = Application.GetRealHeight(54),
- // };
- // btnColorTemplatrueBack.UnSelectedImagePath = "FunctionIcon/Light/ColorTemperatureBar.png";
- // btnColorTemplatrueBack.Height = Application.GetRealHeight(8);
- // btnColorTemplatrueBack.Gravity = Gravity.CenterHorizontal;
- // cctView.AddChidren(btnColorTemplatrueBack);
- // //婊戝姩鏉℃帶浠�
- // var barColorTemplatrue = new CCTSeekBarControl()
- // {
- // X = Application.GetRealWidth(55 + 22),
- // Y = Application.GetRealHeight(11),
- // Width = Application.GetRealWidth(220),
- // Height = Application.GetRealHeight(54),
- // };
- // barColorTemplatrue.MinValue = 27;
- // barColorTemplatrue.MaxValue = 65;
- // barColorTemplatrue.ProgressBarColor = 0x00000000;//鍏ㄩ儴閫忔槑
- // barColorTemplatrue.ProgressBarUnEnableColor = 0x00000000;
- // barColorTemplatrue.SeekBarBackgroundColor = 0x00000000;
- // cctView.AddChidren(barColorTemplatrue);
- // barColorTemplatrue.Y = btnTempClolorMin.Y - (barColorTemplatrue.Height - btnTempClolorMin.Height) / 2;
- // barColorTemplatrue.Progress = value;
- // //璁剧疆鍒濆鍊�
- // btnTempClolor.Text = Language.StringByID(StringId.ColorTemperature) + " " + (barColorTemplatrue.Progress * 100 + "K");
- // barColorTemplatrue.OnProgressChangedEvent = (sender, e) =>
- // {
- // btnTempClolor.Text = Language.StringByID(StringId.ColorTemperature) + " " + (barColorTemplatrue.Progress * 100 + "K");
- // };
- // barColorTemplatrue.OnStopTrackingTouchEvent = (sender, e) =>
- // {
- // commandDic[FunctionAttributeKey.CCT] = (barColorTemplatrue.Progress * 100).ToString();
-
- // d.Clear();
- // d.Add(FunctionAttributeKey.CCT, (barColorTemplatrue.Progress * 100).ToString());
- // foreach (var light in lightCCT)
- // {
- // if (light.spk == SPK.LightCCT)
- // {
- // Control.Ins.SendWriteCommand(light, d);
- // }
- // }
- // };
- // //鍙樻洿鑳屾櫙鍥剧殑Y杞村潗鏍�
- // btnColorTemplatrueBack.Y = barColorTemplatrue.Y + (barColorTemplatrue.Height - btnColorTemplatrueBack.Height) / 2;
-
- // //6500K
- // var btnTempClolorMax = new Button();
- // btnTempClolorMax.Y = btnTempClolorMin.Y;
- // btnTempClolorMax.X = barColorTemplatrue.Right - Application.GetRealWidth(30);
- // btnTempClolorMax.Width = Application.GetRealWidth(54);
- // btnTempClolorMax.Height = Application.GetRealHeight(21);
- // btnTempClolorMax.Text = "6500K";
- // btnTempClolorMax.TextAlignment = TextAlignment.CenterRight;
- // btnTempClolorMax.TextColor = CSS_Color.PromptingColor1;
- // btnTempClolorMax.TextSize = CSS_FontSize.PromptFontSize_FirstLevel;
- // cctView.AddChidren(btnTempClolorMax);
-
- // #endregion
-
-
- // }
-
- // /// <summary>
- // /// 鍔犺浇rgb灞炴�ц缃帶浠�
- // /// </summary>
- // /// <param name="attrView"></param>
- // void LoadRgbAttrView(VerticalScrolViewLayout attrView)
- // {
-
- // #region RGB
-
- // string value = "255,255,255";
- // commandDic.TryGetValue(FunctionAttributeKey.RGB, out value);
-
- // var rgbView = new FrameLayout()
- // {
- // Height = Application.GetRealHeight(248)
- // };
- // attrView.AddChidren(rgbView);
-
-
- // var btnCurColor = new Button()
- // {
- // X = Application.GetRealWidth(24),
- // Y = Application.GetRealHeight(10),
- // Width = Application.GetMinRealAverage(24),
- // Height = Application.GetMinRealAverage(24),
- // Radius = (uint)Application.GetMinRealAverage(8),
- // BorderColor = CSS_Color.PromptingColor2,
- // BorderWidth = 1,
- // BackgroundColor = (uint)(0xFF000000 + tempLight.GetRGBcolor(commandDic[FunctionAttributeKey.RGB]))
- // };
- // rgbView.AddChidren(btnCurColor);
-
- // //鑹茬洏鐨勬甯冩帶浠�(闄愬埗閭d釜鐧借壊婊戝姩鐞冧娇鐢�)
- // var framePickerBack = new FrameLayout();
- // framePickerBack.Gravity = Gravity.CenterHorizontal;
- // framePickerBack.Y = Application.GetRealHeight(20);
- // framePickerBack.Width = Application.GetMinRealAverage(198);
- // framePickerBack.Height = Application.GetMinRealAverage(198);
- // rgbView.AddChidren(framePickerBack);
-
- // var colorPicker = new ColorPicker()
- // {
- // ColorImagePath = "FunctionIcon/Light/ColorWheel.png",
- // };
- // framePickerBack.AddChidren(colorPicker);
-
-
-
-
-
-
- // //鐧界偣鎺т欢
- // var btnWhiteRound = new Button();
- // btnWhiteRound.Width = Application.GetRealWidth(24);
- // btnWhiteRound.Height = Application.GetRealWidth(24);
- // btnWhiteRound.UnSelectedImagePath = "FunctionIcon/Light/ColorWheelTip.png";
- // btnWhiteRound.Visible = false;
- // framePickerBack.AddChidren(btnWhiteRound);
-
-
- // //褰撳墠鐐瑰嚮鐨勩�愮偣銆戞槸鍚︽纭�
- // bool pointIsRight = false;
- // //鍦嗙殑鍗婂緞(鑰冭檻杈圭晫,闇�瑕佽缃畠鐨勫崐寰勬瘮杈冨皬涓�鐐�)
- // int circleR = colorPicker.Width / 2 - Application.GetRealWidth(12);
-
- // colorPicker.MouseUpEventHandler = (sender2, e) => {
- // d.Clear();
- // d.Add(FunctionAttributeKey.RGB, commandDic[FunctionAttributeKey.RGB]);
- // foreach (var light in lightCCT)
- // {
- // if (light.spk == SPK.LightCCT)
- // {
- // Control.Ins.SendWriteCommand(light, d);
- // }
- // }
- // };
- // colorPicker.ColorChaged += (sender2, e2) => {
- // string rgbString = (e2[0] + "," + e2[1] + "," + e2[2]).ToString();
- // commandDic[FunctionAttributeKey.RGB] = rgbString;
- // btnCurColor.BackgroundColor = (uint)(0xFF000000 + tempLight.GetRGBcolor(rgbString));
- // foreach (var rgbTemp in lightRGB)
- // {
- // rgbTemp.SetAttrState(FunctionAttributeKey.RGB, rgbString);
- // }
- // };
- // colorPicker.MouseDownEventHandler += (sender, e) =>
- // {
- // pointIsRight = this.CheckPoint(circleR, colorPicker.Width / 2, colorPicker.Height / 2, (int)e.X, (int)e.Y);
- // if (pointIsRight == false)
- // {
- // //鐐圭殑鍖哄煙涓嶆槸鍦嗙洏鍐�
- // return;
- // }
- // //鏄剧ず鐧界偣
- // btnWhiteRound.X = (int)e.X - btnWhiteRound.Width / 2;
- // btnWhiteRound.Y = (int)e.Y - btnWhiteRound.Height / 2;
- // if (btnWhiteRound.Visible == false)
- // {
- // btnWhiteRound.Visible = true;
- // }
- // };
- // colorPicker.MouseUpEventHandler = (sender, e) => {
- // foreach (var rgbTemp in lightRGB)
- // {
- // Dictionary<string, string> d = new Dictionary<string, string>();
- // d.Add(FunctionAttributeKey.RGB, tempLight.GetRGBcolorString(rgbTemp));
- // Control.Ins.SendWriteCommand(rgbTemp, d, false, 0);
- // }
- // };
-
- // colorPicker.MouseMoveEventHandler += (sender, e) =>
- // {
- // //褰撻紶鏍囩偣涓嬩簨浠跺鐞�
- // colorPicker.MouseDownEventHandler(sender, e);
- // };
-
-
- // #endregion
-
- // }
-
-
- // /// <summary>
- // /// 妫�娴嬬偣鍑荤偣
- // /// </summary>
- // /// <param name="circleR">鍦嗙殑鍗婂緞</param>
- // /// <param name="circleX">鍦嗗績X杞�</param>
- // /// <param name="circleY">鍦嗗績Y杞�</param>
- // /// <param name="pointX">鐐瑰嚮鐐圭殑X杞�</param>
- // /// <param name="pointY">鐐瑰嚮鐐圭殑Y杞�</param>
- // /// <returns></returns>
- // private bool CheckPoint(int circleR, int circleX, int circleY, int pointX, int pointY)
- // {
- // int dwidth = circleX - pointX;
- // if (dwidth < 0) { dwidth *= -1; }
-
- // int dHeight = circleY - pointY;
- // if (dHeight < 0) { dHeight *= -1; }
-
- // //鏍规嵁涓夎鍑芥暟,姹備笁瑙掑舰鐨勬枩杈归暱
- // int dlength = dwidth * dwidth + dHeight * dHeight;
- // //鍗婂緞闀垮害(涓嶅紑鏂�,鎵�浠ユ槸鎸夊钩鏂圭畻)
- // circleR *= circleR;
- // if (dlength < circleR)
- // {
- // //濡傛灉缁勬垚鐨勪笁瑙掑舰骞舵病鏈夐暱杩囧崐寰�,鍒欎唬琛ㄨ繕鍦ㄥ渾鍐�(涓嶅厑璁哥偣杈圭晫)
- // return true;
- // }
- // return false;
- // }
-
- //}
}
\ No newline at end of file
diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/CombinedDimming/CombinedDimmingListPage.cs b/HDL_ON/UI/UI2/4-PersonalCenter/CombinedDimming/CombinedDimmingListPage.cs
index 5805d72..886a2f0 100644
--- a/HDL_ON/UI/UI2/4-PersonalCenter/CombinedDimming/CombinedDimmingListPage.cs
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/CombinedDimming/CombinedDimmingListPage.cs
@@ -1,5 +1,6 @@
锘縰sing System;
using System.Collections.Generic;
+using HDL_ON.Common;
using HDL_ON.DAL.Server;
using HDL_ON.Entity;
using HDL_ON.UI.CSS;
@@ -26,7 +27,7 @@
{
var page = new AddGroupControlPage(null,
()=> {
-
+ ReadGroupControlList();
});
MainPage.BasePageView.AddChidren(page);
page.LoadPage();
@@ -43,13 +44,27 @@
};
bodyView.AddChidren(contentView);
+ ReadGroupControlList();
+
+ #region
+ contentView.AddChidren(new Button() { Height = Application.GetRealHeight(8) });
+
+
+
+ #endregion
+
+ }
+ /// <summary>
+ /// 璇诲彇缁勬帶鏁版嵁
+ /// </summary>
+ private void ReadGroupControlList()
+ {
new System.Threading.Thread(() => {
- var http = new HttpServerRequest();
- var pack = http.GetGroupControlList();
- if(pack != null)
+ var pack = ApiUtlis.Ins.HttpRequest.GetGroupControlList();
+ if (pack != null)
{
- if(pack.Code == StateCode.SUCCESS )
+ if (pack.Code == StateCode.SUCCESS)
{
try
{
@@ -69,14 +84,8 @@
IMessageCommon.Current.ShowErrorInfoAlter(pack.Code);
}
}
- }) { IsBackground = true }.Start();
-
- #region
- contentView.AddChidren(new Button() { Height = Application.GetRealHeight(8) });
-
-
-
- #endregion
+ })
+ { IsBackground = true }.Start();
}
@@ -117,10 +126,11 @@
foreach (var groupControl in list)
{
- var functionRow = new FrameLayout()
+ var functionRow = new RowLayout()
{
Height = Application.GetRealHeight(65),
BackgroundColor = CSS_Color.MainBackgroundColor,
+ LineColor = 0x00000000
};
contentView.AddChidren(functionRow);
@@ -186,6 +196,63 @@
btnFunctionName.MouseUpEventHandler = eventHandler;
btnFunctionLocationInfo.MouseUpEventHandler = eventHandler;
+ var btnDelGroupControl = new Button()
+ {
+ TextColor = CSS_Color.MainBackgroundColor,
+ BackgroundColor = CSS_Color.WarningColor,
+ TextID = StringId.Del,
+ TextAlignment = TextAlignment.Center,
+ };
+ functionRow.AddRightView(btnDelGroupControl);
+ btnDelGroupControl.MouseUpEventHandler = (sender1, e1) => {
+ var waitPage = new Loading();
+ this.AddChidren(waitPage);
+ waitPage.Start("");
+ new System.Threading.Thread(() =>
+ {
+ try
+ {
+ var pack = ApiUtlis.Ins.HttpRequest.DelGroupControl(groupControl.userDeviceGroupControlId);
+ if (pack != null)
+ {
+ Application.RunOnMainThread(() =>
+ {
+ try
+ {
+ if (pack.Code == StateCode.SUCCESS)
+ {
+ list.Remove(groupControl);
+ LoadGroupControlView(list);
+ }
+ else
+ {
+ IMessageCommon.Current.ShowErrorInfoAlter(pack.Code);
+ }
+ }catch(Exception ex)
+ {
+ MainPage.Log($"鍒锋柊缁勬帶鏁版嵁寮傚父:{ex.Message}");
+ }
+ });
+ }
+ }catch(Exception ex)
+ {
+ MainPage.Log($"鍒犻櫎缁勬帶寮傚父:{ex.Message}");
+ }
+ finally
+ {
+ Application.RunOnMainThread(() => {
+ if (waitPage != null)
+ {
+ waitPage.Hide();
+ waitPage.RemoveFromParent();
+ waitPage = null;
+ }
+ });
+ }
+ })
+ { IsBackground = true }.Start();
+ };
+
}
}
diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/CombinedDimming/GroupControl.cs b/HDL_ON/UI/UI2/4-PersonalCenter/CombinedDimming/GroupControl.cs
index e58062f..1c25db0 100644
--- a/HDL_ON/UI/UI2/4-PersonalCenter/CombinedDimming/GroupControl.cs
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/CombinedDimming/GroupControl.cs
@@ -1,5 +1,7 @@
锘縰sing System;
using System.Collections.Generic;
+using HDL_ON.Common;
+using HDL_ON.DAL.Server;
using Shared;
namespace HDL_ON.Entity
@@ -86,8 +88,6 @@
/// </summary>
public List<GroupControlFunction> sids = new List<GroupControlFunction>();
-
-
///// <summary>
///// 鑾峰彇璁惧娣诲姞鍒版埧闂寸殑鎴块棿鍚嶇О
///// </summary>
@@ -114,6 +114,38 @@
// }
// return roomNameList;
//}
+
+ /// <summary>
+ /// 缇ゆ帶鎺у埗
+ /// </summary>
+ /// <param name="pairs"></param>
+ public void Control(Dictionary<string,object> pairs)
+ {
+ try
+ {
+ var controlValues = new Dictionary<string, object>();
+ foreach(var p in pairs)
+ {
+ controlValues.Add("key", p.Key);
+ controlValues.Add("value", p.Value);
+ }
+ var pack = ApiUtlis.Ins.HttpRequest.ControlGroupControl(userDeviceGroupControlId, controlValues);
+ if (pack != null)
+ {
+ if (pack.Code == StateCode.SUCCESS)
+ {
+ //DB_ResidenceData.Instance.HomeGateway.isSupportGroupControl.
+ }
+ else
+ {
+ MainPage.Log($"缇ゆ帶鎺у埗澶辫触,Code: {pack.Code}");
+ }
+ }
+ }
+ catch (Exception ex){
+ MainPage.Log($"缇ゆ帶鎺у埗澶辫触: {ex.Message}");
+ }
+ }
}
public class GroupControlFunction
@@ -126,6 +158,8 @@
/// 鍔熻兘spk
/// </summary>
public string spk = string.Empty;
+
+
}
diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPage.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPage.cs
index f09d43a..b5b4628 100644
--- a/HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPage.cs
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPage.cs
@@ -297,7 +297,7 @@
#region 浣忓畢淇℃伅鍖哄煙
if (!DB_ResidenceData.Instance.CurrentRegion.isOtherShare
&& DB_ResidenceData.Instance.GatewayType == 1
- && DB_ResidenceData.Instance.CurrentRegion.isSupportGroupControl)
+ && DB_ResidenceData.Instance.HomeGateway.isSupportGroupControl)
{
residenceInfoView = new FrameLayout()
{
@@ -587,7 +587,7 @@
residenceAddFunctionView.AddChidren(btnResidenceAddFunctionText);
#endregion
- if (DB_ResidenceData.Instance.CurrentRegion.isSupportGroupControl)
+ if (DB_ResidenceData.Instance.HomeGateway.isSupportGroupControl)
{
residenceFunctionCount++;
#region ---缁勫悎璋冨厜
diff --git a/HDL_ON/UI/UI2/FuntionControlView/Light/GroupControlPage.cs b/HDL_ON/UI/UI2/FuntionControlView/Light/GroupControlPage.cs
new file mode 100644
index 0000000..9b0088a
--- /dev/null
+++ b/HDL_ON/UI/UI2/FuntionControlView/Light/GroupControlPage.cs
@@ -0,0 +1,585 @@
+锘�
+using System;
+using System.Collections.Generic;
+using HDL_ON.Entity;
+using HDL_ON.UI.CSS;
+using Shared;
+
+namespace HDL_ON.UI
+{
+ /// <summary>
+ /// 鐏厜鍦烘櫙缂栬緫寮圭獥
+ /// </summary>
+ public class GroupControlPage : Dialog
+ {
+ GroupControl group;
+ public GroupControlPage(GroupControl groupControl)
+ {
+ group = groupControl;
+ if(group == null)
+ {
+ group = new GroupControl();
+ }
+ }
+
+
+ public void ShowDialog()
+ {
+ var hadDimming = false;
+ var hadCCT = false;
+ var hadRGB = false;
+
+ foreach (var temp in group.sids)
+ {
+ if (temp.spk == SPK.LightRGB)
+ {
+ hadRGB = true;
+ }
+ else if (temp.spk == SPK.LightCCT)
+ {
+ hadCCT = true;
+ }else if (temp.spk == SPK.LightDimming)
+ {
+ hadDimming = true;
+ }
+
+ if(hadDimming && hadCCT && hadRGB)
+ {
+ break;
+ }
+ }
+
+
+ var bodyView = new FrameLayout();
+ this.AddChidren(bodyView);
+ //bodyView.MouseUpEventHandler = (sender, e) =>
+ //{
+ // this.Close();
+ //};
+
+ var contentView = new FrameLayout()
+ {
+ BackgroundColor = CSS_Color.MainBackgroundColor,
+ Width = Application.GetRealWidth(343),
+ Radius = (uint)Application.GetRealWidth(12),
+ };
+ bodyView.AddChidren(contentView);
+
+ #region 鏍囬鍖�
+ var titleView = new FrameLayout()
+ {
+ Width = Application.GetRealWidth(343),
+ Height = Application.GetRealHeight(52),
+ };
+ contentView.AddChidren(titleView);
+
+ var btnTitle = new Button()
+ {
+ Height = Application.GetRealHeight(52),
+ Gravity = Gravity.Center,
+ TextSize = CSS_FontSize.SubheadingFontSize,
+ TextColor = CSS_Color.MainColor,
+ TextID = StringId.CombinedDimming,
+ TextAlignment = TextAlignment.Center,
+ };
+ if (btnTitle.GetTextWidth() > Application.GetRealWidth(197))//247
+ {
+ btnTitle.Width = Application.GetRealWidth(197);
+ btnTitle.IsMoreLines = true;
+ }
+ else
+ {
+ btnTitle.Width = btnTitle.GetTextWidth() + Application.GetRealWidth(10);
+ btnTitle.IsMoreLines = false;
+ }
+ titleView.AddChidren(btnTitle);
+
+ var btnEditIcon = new Button()
+ {
+ Width = Application.GetRealWidth(24),
+ Height = Application.GetRealWidth(24),
+ X = Application.GetRealWidth(12) + btnTitle.Right,
+ Gravity = Gravity.CenterVertical,
+ UnSelectedImagePath = "Public/Edit.png",
+ };
+
+ btnTitle.Text = group.name;
+ btnTitle.Width = btnTitle.GetTextWidth() + Application.GetRealWidth(10);
+ btnTitle.Gravity = Gravity.Center;
+
+ titleView.AddChidren(new Button() { Height = 1, BackgroundColor = CSS_Color.DividingLineColor, Y = Application.GetRealHeight(51) });
+
+ #endregion
+
+ //灞炴�ц缃尯鍩�
+ var attrView = new VerticalScrolViewLayout()
+ {
+ Y = Application.GetRealHeight(52),
+ Width = Application.GetRealWidth(343),
+ ScrollEnabled = false,
+ };
+ //灞炴�ц缃尯鍩熼珮搴�
+ int attrViewHight = Application.GetRealHeight(18 + 22);
+
+
+ //鍙湁缁х數鍣�
+ if (!hadDimming && !hadCCT && !hadRGB)
+ {
+ attrViewHight += Application.GetRealHeight(50);
+ attrView.Height = attrViewHight;
+ contentView.AddChidren(attrView);
+ attrView.AddChidren(new Button() { Height = Application.GetRealHeight(18) });
+
+ var view = new FrameLayout()
+ {
+ Width = Application.GetRealWidth(343),
+ Height = Application.GetRealHeight(50),
+ };
+ attrView.AddChidren(view);
+
+
+ var btnClose = new Button()
+ {
+ X = Application.GetRealWidth(50),
+ Gravity = Gravity.CenterVertical,
+ Width = Application.GetRealWidth(98),
+ Height = Application.GetRealHeight(40),
+ TextColor = CSS_Color.TextualColor,
+ SelectedBackgroundColor = CSS_Color.MainColor,
+ SelectedTextColor = CSS_Color.MainBackgroundColor,
+ BackgroundColor = CSS_Color.DividingLineColor,
+ TextID = StringId.OFF,
+ TextSize = CSS_FontSize.TextFontSize,
+ Radius = (uint)Application.GetRealWidth(5),
+ IsSelected = true,
+ //BorderWidth = 1,
+ //BorderColor = 0x00000000
+ };
+ view.AddChidren(btnClose);
+
+ var btnOpen = new Button()
+ {
+ X = Application.GetRealWidth(100 + 98),
+ Gravity = Gravity.CenterVertical,
+ Width = Application.GetRealWidth(98),
+ Height = Application.GetRealHeight(40),
+ TextColor = CSS_Color.TextualColor,
+ SelectedBackgroundColor = CSS_Color.MainColor,
+ SelectedTextColor = CSS_Color.MainBackgroundColor,
+ BackgroundColor = CSS_Color.DividingLineColor,
+ TextID = StringId.On,
+ TextSize = CSS_FontSize.TextFontSize,
+ Radius = (uint)Application.GetRealWidth(5),
+ };
+ view.AddChidren(btnOpen);
+
+ btnClose.MouseUpEventHandler = (sender, e) =>
+ {
+ btnClose.IsSelected = true;
+ btnOpen.IsSelected = false;
+ var d = new Dictionary<string, object>();
+ d.Add(FunctionAttributeKey.OnOff, "off");
+ group.Control(d);
+ };
+ btnOpen.MouseUpEventHandler = (sender, e) =>
+ {
+ btnClose.IsSelected = false;
+ btnOpen.IsSelected = true;
+
+ var d = new Dictionary<string, object>();
+ d.Add(FunctionAttributeKey.OnOff, "on");
+ group.Control(d);
+ };
+
+ }
+
+ else
+ {
+ if (hadRGB)
+ {
+ attrViewHight += Application.GetRealHeight(248);
+ hadDimming = true;
+ }
+ if (hadCCT)
+ {
+ attrViewHight += Application.GetRealHeight(54 + 11);
+ hadDimming = true;
+ }
+ if (hadDimming)
+ {
+ attrViewHight += Application.GetRealHeight(54 + 11);
+ }
+ attrView.Height = attrViewHight;
+ contentView.AddChidren(attrView);
+ attrView.AddChidren(new Button() { Height = Application.GetRealHeight(18) });
+
+
+ if (hadDimming)
+ {
+ LoadDimmingAttrView(attrView);
+ }
+ if (hadCCT)
+ {
+ LoadCctAttrView(attrView);
+ }
+ if (hadRGB)
+ {
+ LoadRgbAttrView(attrView);
+ }
+ }
+
+ contentView.Height = Application.GetRealHeight(52 + 44) + attrViewHight;
+ contentView.Gravity = Gravity.Center;
+
+
+ var bottomView = new FrameLayout()
+ {
+ Y = Application.GetRealHeight(52) + attrViewHight,
+ Height = Application.GetRealHeight(46),
+ };
+ contentView.AddChidren(bottomView);
+ bottomView.AddChidren(new Button() { Height = 1, BackgroundColor = CSS_Color.DividingLineColor });
+
+ var btnCloseDialog = new Button()
+ {
+ TextAlignment = TextAlignment.Center,
+ TextColor = CSS_Color.TextualColor,
+ TextID = StringId.Close,
+ TextSize = CSS_FontSize.SubheadingFontSize,
+ };
+ bottomView.AddChidren(btnCloseDialog);
+ btnCloseDialog.MouseUpEventHandler = (sender, e) => {
+ this.Close();
+ };
+
+
+ this.Show();
+
+ }
+
+ /// <summary>
+ /// 鍔犺浇璋冨厜灞炴�ц缃帶浠�
+ /// </summary>
+ /// <param name="attrView"></param>
+ void LoadDimmingAttrView(VerticalScrolViewLayout attrView)
+ {
+ var dimmingView = new FrameLayout()
+ {
+ Height = Application.GetRealHeight(54 + 11)
+ };
+ attrView.AddChidren(dimmingView);
+
+ #region 浜害璋冭妭
+ var btnBrightnessText = new Button()
+ {
+ X = Application.GetRealWidth(35),
+ Y = Application.GetRealHeight(1),
+ Width = Application.GetRealWidth(224),
+ Height = Application.GetRealHeight(25),
+ TextAlignment = TextAlignment.CenterLeft,
+ TextColor = CSS_Color.FirstLevelTitleColor,
+ TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+ TextID = StringId.Brightness,
+ };
+ btnBrightnessText.Text = Language.StringByID(StringId.Brightness) + " " + group.GetAttrState(FunctionAttributeKey.Brightness) + "%";
+ dimmingView.AddChidren(btnBrightnessText);
+
+
+ var btnMinValuesText = new Button()
+ {
+ X = Application.GetRealWidth(35),
+ Y = btnBrightnessText.Bottom,
+ Width = Application.GetRealWidth(40),
+ Height = Application.GetRealHeight(21),
+ Text = "0%",
+ TextAlignment = TextAlignment.CenterLeft,
+ TextColor = CSS_Color.PromptingColor1,
+ TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+ };
+ dimmingView.AddChidren(btnMinValuesText);
+
+ var dimmerBar = new DiyImageSeekBar()
+ {
+ X = Application.GetRealWidth(45 + 10),
+ Y = Application.GetRealHeight(11),
+ Width = Application.GetRealWidth(220),
+ Height = Application.GetRealHeight(54),
+ SeekBarViewHeight = Application.GetRealHeight(8),
+ ThumbImagePath = "Public/ThumbImage.png",
+ ThumbImageHeight = Application.GetRealHeight(54),
+ ProgressTextColor = CSS_Color.FirstLevelTitleColor,
+ ProgressTextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+ ProgressBarColor = CSS_Color.AuxiliaryColor1,
+ MaxValue = 100,
+ SeekBarPadding = Application.GetRealWidth(20),
+ IsProgressTextShow = false,
+ ProgressChangeDelayTime = 0,
+ };
+ dimmingView.AddChidren(dimmerBar);
+ dimmerBar.OnProgressChangedEvent = (sender, e) =>
+ {
+ btnBrightnessText.Text = Language.StringByID(StringId.Brightness) + " " + e + "%";
+ };
+ dimmerBar.OnStopTrackingTouchEvent = (sender, e) =>
+ {
+ btnBrightnessText.Text = Language.StringByID(StringId.Brightness) + " " + e + "%";
+
+ var d = new Dictionary<string, object>();
+ d.Add(FunctionAttributeKey.Brightness, e.ToString());
+ group.Control(d);
+ };
+
+
+ var btnMaxValuesText = new Button()
+ {
+ X = dimmerBar.Right,
+ Y = btnBrightnessText.Bottom,
+ Width = Application.GetRealWidth(55),
+ Height = Application.GetRealHeight(21),
+ Text = "100%",
+ TextAlignment = TextAlignment.CenterLeft,
+ TextColor = CSS_Color.PromptingColor1,
+ TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+ };
+ dimmingView.AddChidren(btnMaxValuesText);
+ #endregion
+
+ }
+
+ /// <summary>
+ /// 鍔犺浇cct灞炴�ц缃帶浠�
+ /// </summary>
+ /// <param name="attrView"></param>
+ void LoadCctAttrView(VerticalScrolViewLayout attrView)
+ {
+ #region 鑹叉俯
+ var cctView = new FrameLayout()
+ {
+ Height = Application.GetRealHeight(54 + 11)
+ };
+ attrView.AddChidren(cctView);
+
+
+ //鑹叉俯
+ var btnTempClolor = new Button();
+ btnTempClolor.X = Application.GetRealWidth(35);
+ btnTempClolor.Y = Application.GetRealHeight(1);
+ btnTempClolor.Width = Application.GetRealWidth(224);
+ btnTempClolor.Height = Application.GetRealHeight(21);
+ btnTempClolor.TextAlignment = TextAlignment.CenterLeft;
+ btnTempClolor.TextColor = CSS_Color.FirstLevelTitleColor;
+ btnTempClolor.TextSize = CSS_FontSize.PromptFontSize_FirstLevel;
+ btnTempClolor.TextID = StringId.ColorTemperature;
+ cctView.AddChidren(btnTempClolor);
+
+ //2700K
+ var btnTempClolorMin = new Button()
+ {
+ X = Application.GetRealWidth(35),
+ Y = btnTempClolor.Bottom,
+ Width = Application.GetRealWidth(40),
+ Height = Application.GetRealHeight(21),
+ };
+ btnTempClolorMin.Width = Application.GetRealWidth(54);
+ btnTempClolorMin.Height = Application.GetRealHeight(21);
+ btnTempClolorMin.Text = "2700K";
+ btnTempClolorMin.TextAlignment = TextAlignment.CenterLeft;
+ btnTempClolorMin.TextColor = CSS_Color.PromptingColor1;
+ btnTempClolorMin.TextSize = CSS_FontSize.PromptFontSize_FirstLevel;
+ cctView.AddChidren(btnTempClolorMin);
+
+ //婊戝姩鏉$殑鑳屾櫙鍥剧墖
+ var btnColorTemplatrueBack = new Button()
+ {
+ X = Application.GetRealWidth(55 + 22 + 15),
+ Y = Application.GetRealHeight(11),
+ Width = Application.GetRealWidth(180),
+ Height = Application.GetRealHeight(54),
+ };
+ btnColorTemplatrueBack.UnSelectedImagePath = "FunctionIcon/Light/ColorTemperatureBar.png";
+ btnColorTemplatrueBack.Height = Application.GetRealHeight(8);
+ btnColorTemplatrueBack.Gravity = Gravity.CenterHorizontal;
+ cctView.AddChidren(btnColorTemplatrueBack);
+ //婊戝姩鏉℃帶浠�
+ var barColorTemplatrue = new CCTSeekBarControl()
+ {
+ X = Application.GetRealWidth(55 + 22),
+ Y = Application.GetRealHeight(11),
+ Width = Application.GetRealWidth(220),
+ Height = Application.GetRealHeight(54),
+ };
+ barColorTemplatrue.MinValue = 27;
+ barColorTemplatrue.MaxValue = 65;
+ barColorTemplatrue.ProgressBarColor = 0x00000000;//鍏ㄩ儴閫忔槑
+ barColorTemplatrue.ProgressBarUnEnableColor = 0x00000000;
+ barColorTemplatrue.SeekBarBackgroundColor = 0x00000000;
+ cctView.AddChidren(barColorTemplatrue);
+ barColorTemplatrue.Y = btnTempClolorMin.Y - (barColorTemplatrue.Height - btnTempClolorMin.Height) / 2;
+ //璁剧疆鍒濆鍊�
+ btnTempClolor.Text = Language.StringByID(StringId.ColorTemperature) + " " + (barColorTemplatrue.Progress * 100 + "K");
+ barColorTemplatrue.OnProgressChangedEvent = (sender, e) =>
+ {
+ btnTempClolor.Text = Language.StringByID(StringId.ColorTemperature) + " " + (barColorTemplatrue.Progress * 100 + "K");
+ };
+ barColorTemplatrue.OnStopTrackingTouchEvent = (sender, e) =>
+ {
+ var d = new Dictionary<string, object>();
+ d.Add(FunctionAttributeKey.CCT, (barColorTemplatrue.Progress * 100).ToString());
+ group.Control(d);
+ };
+ //鍙樻洿鑳屾櫙鍥剧殑Y杞村潗鏍�
+ btnColorTemplatrueBack.Y = barColorTemplatrue.Y + (barColorTemplatrue.Height - btnColorTemplatrueBack.Height) / 2;
+
+ //6500K
+ var btnTempClolorMax = new Button();
+ btnTempClolorMax.Y = btnTempClolorMin.Y;
+ btnTempClolorMax.X = barColorTemplatrue.Right - Application.GetRealWidth(30);
+ btnTempClolorMax.Width = Application.GetRealWidth(54);
+ btnTempClolorMax.Height = Application.GetRealHeight(21);
+ btnTempClolorMax.Text = "6500K";
+ btnTempClolorMax.TextAlignment = TextAlignment.CenterRight;
+ btnTempClolorMax.TextColor = CSS_Color.PromptingColor1;
+ btnTempClolorMax.TextSize = CSS_FontSize.PromptFontSize_FirstLevel;
+ cctView.AddChidren(btnTempClolorMax);
+
+ #endregion
+
+
+ }
+
+ /// <summary>
+ /// 鍔犺浇rgb灞炴�ц缃帶浠�
+ /// </summary>
+ /// <param name="attrView"></param>
+ void LoadRgbAttrView(VerticalScrolViewLayout attrView)
+ {
+
+ #region RGB
+ var rgbView = new FrameLayout()
+ {
+ Height = Application.GetRealHeight(248)
+ };
+ attrView.AddChidren(rgbView);
+
+
+ var btnCurColor = new Button()
+ {
+ X = Application.GetRealWidth(24),
+ Y = Application.GetRealHeight(10),
+ Width = Application.GetMinRealAverage(24),
+ Height = Application.GetMinRealAverage(24),
+ Radius = (uint)Application.GetMinRealAverage(8),
+ BorderColor = CSS_Color.PromptingColor2,
+ BorderWidth = 1,
+ //BackgroundColor = (uint)(0xFF000000 + tempLight.GetRGBcolor(commandDic[FunctionAttributeKey.RGB]))
+ };
+ rgbView.AddChidren(btnCurColor);
+
+ //鑹茬洏鐨勬甯冩帶浠�(闄愬埗閭d釜鐧借壊婊戝姩鐞冧娇鐢�)
+ var framePickerBack = new FrameLayout();
+ framePickerBack.Gravity = Gravity.CenterHorizontal;
+ framePickerBack.Y = Application.GetRealHeight(20);
+ framePickerBack.Width = Application.GetMinRealAverage(198);
+ framePickerBack.Height = Application.GetMinRealAverage(198);
+ rgbView.AddChidren(framePickerBack);
+
+ var colorPicker = new ColorPicker()
+ {
+ ColorImagePath = "FunctionIcon/Light/ColorWheel.png",
+ };
+ framePickerBack.AddChidren(colorPicker);
+
+
+
+
+
+
+ //鐧界偣鎺т欢
+ var btnWhiteRound = new Button();
+ btnWhiteRound.Width = Application.GetRealWidth(24);
+ btnWhiteRound.Height = Application.GetRealWidth(24);
+ btnWhiteRound.UnSelectedImagePath = "FunctionIcon/Light/ColorWheelTip.png";
+ btnWhiteRound.Visible = false;
+ framePickerBack.AddChidren(btnWhiteRound);
+
+
+ //褰撳墠鐐瑰嚮鐨勩�愮偣銆戞槸鍚︽纭�
+ bool pointIsRight = false;
+ //鍦嗙殑鍗婂緞(鑰冭檻杈圭晫,闇�瑕佽缃畠鐨勫崐寰勬瘮杈冨皬涓�鐐�)
+ int circleR = colorPicker.Width / 2 - Application.GetRealWidth(12);
+ string rgbString = "255,255,255";
+ var rgbTemp = new Light();
+ colorPicker.MouseUpEventHandler = (sender2, e2) =>
+ {
+ var d = new Dictionary<string, object>();
+ d.Add(FunctionAttributeKey.RGB, rgbString);
+ group.Control(d);
+ };
+ colorPicker.ColorChaged += (sender2, e2) =>
+ {
+ rgbString = (e2[0] + "," + e2[1] + "," + e2[2]).ToString();
+ btnCurColor.BackgroundColor = (uint)(0xFF000000 + rgbTemp.GetRGBcolor(rgbString));
+ var d = new Dictionary<string, object>();
+ d.Add(FunctionAttributeKey.RGB, rgbString);
+ group.Control(d);
+ };
+ colorPicker.MouseDownEventHandler += (sender, e) =>
+ {
+ pointIsRight = this.CheckPoint(circleR, colorPicker.Width / 2, colorPicker.Height / 2, (int)e.X, (int)e.Y);
+ if (pointIsRight == false)
+ {
+ //鐐圭殑鍖哄煙涓嶆槸鍦嗙洏鍐�
+ return;
+ }
+ //鏄剧ず鐧界偣
+ btnWhiteRound.X = (int)e.X - btnWhiteRound.Width / 2;
+ btnWhiteRound.Y = (int)e.Y - btnWhiteRound.Height / 2;
+ if (btnWhiteRound.Visible == false)
+ {
+ btnWhiteRound.Visible = true;
+ }
+ };
+
+ colorPicker.MouseMoveEventHandler += (sender, e) =>
+ {
+ //褰撻紶鏍囩偣涓嬩簨浠跺鐞�
+ colorPicker.MouseDownEventHandler(sender, e);
+ };
+
+
+ #endregion
+
+ }
+
+
+ /// <summary>
+ /// 妫�娴嬬偣鍑荤偣
+ /// </summary>
+ /// <param name="circleR">鍦嗙殑鍗婂緞</param>
+ /// <param name="circleX">鍦嗗績X杞�</param>
+ /// <param name="circleY">鍦嗗績Y杞�</param>
+ /// <param name="pointX">鐐瑰嚮鐐圭殑X杞�</param>
+ /// <param name="pointY">鐐瑰嚮鐐圭殑Y杞�</param>
+ /// <returns></returns>
+ private bool CheckPoint(int circleR, int circleX, int circleY, int pointX, int pointY)
+ {
+ int dwidth = circleX - pointX;
+ if (dwidth < 0) { dwidth *= -1; }
+
+ int dHeight = circleY - pointY;
+ if (dHeight < 0) { dHeight *= -1; }
+
+ //鏍规嵁涓夎鍑芥暟,姹備笁瑙掑舰鐨勬枩杈归暱
+ int dlength = dwidth * dwidth + dHeight * dHeight;
+ //鍗婂緞闀垮害(涓嶅紑鏂�,鎵�浠ユ槸鎸夊钩鏂圭畻)
+ circleR *= circleR;
+ if (dlength < circleR)
+ {
+ //濡傛灉缁勬垚鐨勪笁瑙掑舰骞舵病鏈夐暱杩囧崐寰�,鍒欎唬琛ㄨ繕鍦ㄥ渾鍐�(涓嶅厑璁哥偣杈圭晫)
+ return true;
+ }
+ return false;
+ }
+
+ }
+}
\ No newline at end of file
diff --git a/HDL_ON/UI/UI2/FuntionControlView/Light/LightScene/AddLightScene.cs b/HDL_ON/UI/UI2/FuntionControlView/Light/LightScene/AddLightScene.cs
index 0eb7ff8..c908e90 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/Light/LightScene/AddLightScene.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/Light/LightScene/AddLightScene.cs
@@ -421,13 +421,14 @@
SelectedImagePath = "FunctionIcon/Light/LightScene/CheckOnIcon.png",
IsSelected = functions.Find((obj) => obj.deviceId == function.deviceId) != null
};
- if (DB_ResidenceData.Instance.CurrentRegion.isSupportGroupControl)
+ if (DB_ResidenceData.Instance.HomeGateway.isSupportGroupControl)
{
btnSelect.X = Application.GetRealWidth(323);
}
bodyDiv.AddChidren(btnSelect);
btnSelect.MouseUpEventHandler = (sender, e) => {
+ Application.HideSoftInput();
btnSelect.IsSelected = !btnSelect.IsSelected;
if(btnSelect.IsSelected)
{
--
Gitblit v1.8.0