From 418b0d0a4002bc06ba3a55d1809fe46043f06c09 Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期一, 26 九月 2022 14:07:58 +0800
Subject: [PATCH] 光伏更新,金茂科技系统更新
---
HDL_ON/UI/UI2/FuntionControlView/FunctionBaseInfoSetPage.cs | 520 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 518 insertions(+), 2 deletions(-)
diff --git a/HDL_ON/UI/UI2/FuntionControlView/FunctionBaseInfoSetPage.cs b/HDL_ON/UI/UI2/FuntionControlView/FunctionBaseInfoSetPage.cs
index 7b0dd8e..4f31eee 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/FunctionBaseInfoSetPage.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/FunctionBaseInfoSetPage.cs
@@ -1,5 +1,7 @@
锘縰sing System;
+using System.Collections.Generic;
using HDL_ON.DAL.Server;
+using HDL_ON.DriverLayer;
using HDL_ON.Entity;
using HDL_ON.UI.CSS;
using Newtonsoft.Json.Linq;
@@ -47,7 +49,14 @@
public override void RemoveFromParent()
{
- actionRefresh?.Invoke();
+ new System.Threading.Thread(() =>
+ {
+ Application.RunOnMainThread(() =>
+ {
+ actionRefresh?.Invoke();
+ });
+ })
+ { IsBackground = true }.Start();
base.RemoveFromParent();
}
@@ -367,6 +376,8 @@
else if (function.spk == SPK.HvacCac)
{
+
+
#region 闇茬偣娓╁害
if (function.GetAttribute(FunctionAttributeKey.dew_point_temp) != null)
{
@@ -385,7 +396,7 @@
var btnText = new Button()
{
X = Application.GetRealWidth(16),
- Width = Application.GetRealWidth(160),
+ Width = Application.GetRealWidth(260),
TextAlignment = TextAlignment.CenterLeft,
TextColor = CSS_Color.FirstLevelTitleColor,
TextSize = CSS_FontSize.SubheadingFontSize,
@@ -406,14 +417,519 @@
#endregion
+ #region 琛ㄩ潰娓╁害
+ if (function.GetAttribute(FunctionAttributeKey.surface_temp) != null)
+ {
+ contentView.AddChidren(new Button
+ {
+ Height = Application.GetRealHeight(10),
+ });
+
+ var surfaceTempRow = new FrameLayout()
+ {
+ Height = Application.GetRealHeight(55),
+ BackgroundColor = CSS_Color.MainBackgroundColor,
+ };
+ contentView.AddChidren(surfaceTempRow);
+
+ var btnSurfacaTempText = new Button()
+ {
+ X = Application.GetRealWidth(16),
+ Width = Application.GetRealWidth(260),
+ TextAlignment = TextAlignment.CenterLeft,
+ TextColor = CSS_Color.FirstLevelTitleColor,
+ TextSize = CSS_FontSize.SubheadingFontSize,
+ TextID = StringId.SurfaceTemperature,
+ };
+ surfaceTempRow.AddChidren(btnSurfacaTempText);
+
+ var btnSurfaceTempValue = new Button()
+ {
+ Width = Application.GetRealWidth(355),
+ TextAlignment = TextAlignment.CenterRight,
+ TextColor = CSS_Color.PromptingColor1,
+ TextSize = CSS_FontSize.TextFontSize,
+ Text = function.GetAttrState(FunctionAttributeKey.surface_temp) + "掳C",
+ };
+ surfaceTempRow.AddChidren(btnSurfaceTempValue);
+ }
+ #endregion
+
+
+ #region 娓╁害鏍″噯
+ if (function.GetAttribute(FunctionAttributeKey.room_temp_cc) != null)
+ {
+ contentView.AddChidren(new Button
+ {
+ Height = Application.GetRealHeight(10),
+ });
+
+ var tempCCrow = new FrameLayout()
+ {
+ Height = Application.GetRealHeight(55),
+ BackgroundColor = CSS_Color.MainBackgroundColor,
+ };
+ contentView.AddChidren(tempCCrow);
+
+ var btnTempCcText = new Button()
+ {
+ X = Application.GetRealWidth(16),
+ Width = Application.GetRealWidth(260),
+ TextAlignment = TextAlignment.CenterLeft,
+ TextColor = CSS_Color.FirstLevelTitleColor,
+ TextSize = CSS_FontSize.SubheadingFontSize,
+ TextID = StringId.TemperatureCalibration,
+ };
+ tempCCrow.AddChidren(btnTempCcText);
+
+ var btnTempCcValue = new Button()
+ {
+ Width = Application.GetRealWidth(335),
+ TextAlignment = TextAlignment.CenterRight,
+ TextColor = CSS_Color.PromptingColor1,
+ TextSize = CSS_FontSize.TextFontSize,
+ Text = function.GetAttrState(FunctionAttributeKey.room_temp_cc) + "掳C",
+ };
+ tempCCrow.AddChidren(btnTempCcValue);
+
+ var btnRightTempCc = new Button()
+ {
+ X = Application.GetRealWidth(339),
+ Gravity = Gravity.CenterVertical,
+ Width = Application.GetMinRealAverage(16),
+ Height = Application.GetMinRealAverage(16),
+ UnSelectedImagePath = "Public/RightIcon.png",
+ };
+ tempCCrow.AddChidren(btnRightTempCc);
+
+ btnTempCcValue.MouseUpEventHandler = (sender, e) =>
+ {
+ LoadEditDialog(-10, 10, Convert.ToInt32(function.GetAttrState(FunctionAttributeKey.room_humidity_cc)), (reslut) =>
+ {
+ btnTempCcValue.Text = reslut + "掳C";
+ Dictionary<string, string> dic = new Dictionary<string, string>();
+ dic.Add(FunctionAttributeKey.room_temp_cc, reslut);
+ Control.Ins.SendWriteCommand(function, dic);
+ });
+ };
+ }
+ #endregion
+
+
+ #region 婀垮害鏍″噯
+ if (function.GetAttribute(FunctionAttributeKey.room_humidity_cc) != null)
+ {
+ contentView.AddChidren(new Button
+ {
+ Height = Application.GetRealHeight(10),
+ });
+
+ var humidityCCrow = new FrameLayout()
+ {
+ Height = Application.GetRealHeight(55),
+ BackgroundColor = CSS_Color.MainBackgroundColor,
+ };
+ contentView.AddChidren(humidityCCrow);
+
+ var btnHumidityCcText = new Button()
+ {
+ X = Application.GetRealWidth(16),
+ Width = Application.GetRealWidth(260),
+ TextAlignment = TextAlignment.CenterLeft,
+ TextColor = CSS_Color.FirstLevelTitleColor,
+ TextSize = CSS_FontSize.SubheadingFontSize,
+ TextID = StringId.HumidityCalibration,
+ };
+ humidityCCrow.AddChidren(btnHumidityCcText);
+
+ var btnHumidityCcValue = new Button()
+ {
+ Width = Application.GetRealWidth(335),
+ TextAlignment = TextAlignment.CenterRight,
+ TextColor = CSS_Color.PromptingColor1,
+ TextSize = CSS_FontSize.TextFontSize,
+ Text = function.GetAttrState(FunctionAttributeKey.room_humidity_cc) + "%",
+ };
+ humidityCCrow.AddChidren(btnHumidityCcValue);
+
+
+ var btnRightHumidityCc = new Button()
+ {
+ X = Application.GetRealWidth(339),
+ Gravity = Gravity.CenterVertical,
+ Width = Application.GetMinRealAverage(16),
+ Height = Application.GetMinRealAverage(16),
+ UnSelectedImagePath = "Public/RightIcon.png",
+ };
+ humidityCCrow.AddChidren(btnRightHumidityCc);
+
+ btnHumidityCcValue.MouseUpEventHandler = (sender, e) =>
+ {
+ LoadEditDialog(-20, 20, Convert.ToInt32(function.GetAttrState(FunctionAttributeKey.room_humidity_cc)), (reslut) =>
+ {
+ btnHumidityCcValue.Text = reslut + "%";
+ Dictionary<string, string> dic = new Dictionary<string, string>();
+ dic.Add(FunctionAttributeKey.room_humidity_cc, reslut);
+ Control.Ins.SendWriteCommand(function, dic);
+ });
+ };
+
+ }
+ #endregion
+
+
+ #region 姣涚粏闃�闂�
+ if (function.GetAttribute(FunctionAttributeKey.cac_valve) != null)
+ {
+ contentView.AddChidren(new Button
+ {
+ Height = Application.GetRealHeight(10),
+ });
+
+ var cacValveRow = new FrameLayout()
+ {
+ Height = Application.GetRealHeight(55),
+ BackgroundColor = CSS_Color.MainBackgroundColor,
+ };
+ contentView.AddChidren(cacValveRow);
+
+ var btnCacValveText = new Button()
+ {
+ X = Application.GetRealWidth(16),
+ Width = Application.GetRealWidth(260),
+ TextAlignment = TextAlignment.CenterLeft,
+ TextColor = CSS_Color.FirstLevelTitleColor,
+ TextSize = CSS_FontSize.SubheadingFontSize,
+ TextID = StringId.CapillaryValve,
+ };
+ cacValveRow.AddChidren(btnCacValveText);
+
+ var btnCacValvaValue = new Button()
+ {
+ Width = Application.GetRealWidth(355),
+ TextAlignment = TextAlignment.CenterRight,
+ TextColor = CSS_Color.PromptingColor1,
+ TextSize = CSS_FontSize.TextFontSize,
+ TextID = function.GetAttrState(FunctionAttributeKey.cac_valve) == "on"? StringId.On:StringId.OFF,
+ };
+ cacValveRow.AddChidren(btnCacValvaValue);
+ }
+ #endregion
+
+ #region 鍦版殩闃�闂�
+ if (function.GetAttribute(FunctionAttributeKey.fh_valve) != null)
+ {
+ contentView.AddChidren(new Button
+ {
+ Height = Application.GetRealHeight(10),
+ });
+
+ var fhValveRow = new FrameLayout()
+ {
+ Height = Application.GetRealHeight(55),
+ BackgroundColor = CSS_Color.MainBackgroundColor,
+ };
+ contentView.AddChidren(fhValveRow);
+
+ var btnFhValveText = new Button()
+ {
+ X = Application.GetRealWidth(16),
+ Width = Application.GetRealWidth(260),
+ TextAlignment = TextAlignment.CenterLeft,
+ TextColor = CSS_Color.FirstLevelTitleColor,
+ TextSize = CSS_FontSize.SubheadingFontSize,
+ TextID = StringId.FloorHeatingValve,
+ };
+ fhValveRow.AddChidren(btnFhValveText);
+
+ var btnFhValvaValue = new Button()
+ {
+ Width = Application.GetRealWidth(355),
+ TextAlignment = TextAlignment.CenterRight,
+ TextColor = CSS_Color.PromptingColor1,
+ TextSize = CSS_FontSize.TextFontSize,
+ TextID = function.GetAttrState(FunctionAttributeKey.fh_valve) == "on"? StringId.On:StringId.OFF,
+ };
+ fhValveRow.AddChidren(btnFhValvaValue);
+ }
+ #endregion
+
}
+ else if(function.spk == SPK.SenesorMegahealth)
+ {
+ contentView.AddChidren(new Button
+ {
+ Height = Application.GetRealHeight(8),
+ });
+ #region 鎺ㄩ�佸紑鍏�
+ var viewRow0 = new FrameLayout()
+ {
+ Height = Application.GetRealHeight(55),
+ BackgroundColor = CSS_Color.MainBackgroundColor,
+ };
+ contentView.AddChidren(viewRow0);
+
+
+ var btnRowTitle0 = new Button()
+ {
+ X = Application.GetRealWidth(16),
+ Width = Application.GetRealWidth(160),
+ TextAlignment = TextAlignment.CenterLeft,
+ TextColor = CSS_Color.FirstLevelTitleColor,
+ TextSize = CSS_FontSize.SubheadingFontSize,
+ TextID = StringId.AlarmFunction,
+ };
+ viewRow0.AddChidren(btnRowTitle0);
+
+ var btnSwtichIcon0 = new Button()
+ {
+ X = Application.GetRealWidth(322),
+ Gravity = Gravity.CenterVertical,
+ Width = Application.GetMinRealAverage(36),
+ Height = Application.GetMinRealAverage(36),
+ UnSelectedImagePath = "Public/Switch_2.png",
+ SelectedImagePath = "Public/SwitchOn_2.png",
+ };
+ viewRow0.AddChidren(btnSwtichIcon0);
+
+ DeviceMessageRules deviceMessageRules = new DeviceMessageRules()
+ {
+ deviceId = function.deviceId
+ };
+
+ btnSwtichIcon0.MouseUpEventHandler = (sender, e) => {
+ var push = btnSwtichIcon0.IsSelected = !btnSwtichIcon0.IsSelected;
+ new System.Threading.Thread(() => {
+ var result = new HttpServerRequest().DeviceMessageRulesSet(function.deviceId, deviceMessageRules.conditionIdentify, push);//璁剧疆鎺ㄩ�佷俊鎭�
+ Application.RunOnMainThread(() =>
+ {
+ if (result != null && result.Code == StateCode.SUCCESS)
+ {
+ deviceMessageRules.push = push;
+ }
+ else
+ {
+ btnSwtichIcon0.IsSelected = deviceMessageRules.push;
+ }
+ });
+ })
+ { IsBackground = true }.Start();
+ };
+
+
+ Loading waitView = new Loading();
+ viewRow0.AddChidren(waitView);
+ new System.Threading.Thread(() => {
+ Application.RunOnMainThread(() => {
+ waitView.Start("");
+ });
+ var result = new HttpServerRequest().GetDeviceMessageRulesSet(function.deviceId);
+ //var result1 = new HttpServerRequest().DeviceMessageRulesSet(function.deviceId);//璁剧疆鎺ㄩ�佷俊鎭�
+ Application.RunOnMainThread(() =>
+ {
+ if (result != null && result.Code == StateCode.SUCCESS && result.Data != null)
+ {
+ var data = Newtonsoft.Json.JsonConvert.DeserializeObject<List<DeviceMessageRules>>(result.Data.ToString());
+ if (data.Count > 0)
+ {
+ deviceMessageRules = data[0];
+ btnSwtichIcon0.IsSelected = deviceMessageRules.push;
+ }
+ }
+ else
+ {
+ btnSwtichIcon0.IsSelected = false;
+ }
+ waitView.Hide();
+ waitView.RemoveFromParent();
+ });
+ })
+ { IsBackground = true }.Start();
+
+ viewRow0.AddChidren(new Button()
+ {
+ Gravity = Gravity.CenterHorizontal,
+ Y = Application.GetRealHeight(54),
+ BackgroundColor = CSS_Color.DividingLineColor,
+ Width = Application.GetRealWidth(343),
+ Height = Application.GetRealHeight(1)
+ });
+ #endregion
+
+ #region 婕旂ず妯″紡
+ var viewRow = new FrameLayout()
+ {
+ Height = Application.GetRealHeight(55),
+ BackgroundColor = CSS_Color.MainBackgroundColor,
+ };
+ contentView.AddChidren(viewRow);
+
+
+ var btnRowTitle = new Button()
+ {
+ X = Application.GetRealWidth(16),
+ Width = Application.GetRealWidth(160),
+ TextAlignment = TextAlignment.CenterLeft,
+ TextColor = CSS_Color.FirstLevelTitleColor,
+ TextSize = CSS_FontSize.SubheadingFontSize,
+ TextID = StringId.LaboratoryMode,
+ };
+ viewRow.AddChidren(btnRowTitle);
+
+ var btnSwtichIcon = new Button()
+ {
+ X = Application.GetRealWidth(322),
+ Gravity = Gravity.CenterVertical,
+ Width = Application.GetMinRealAverage(36),
+ Height = Application.GetMinRealAverage(36),
+ UnSelectedImagePath = "Public/Switch_2.png",
+ SelectedImagePath = "Public/SwitchOn_2.png",
+ IsSelected = function.extSet.labModel
+ };
+ viewRow.AddChidren(btnSwtichIcon);
+
+ btnSwtichIcon.MouseUpEventHandler = (sender, e) =>
+ {
+ btnSwtichIcon.IsSelected = function.extSet.labModel = !btnSwtichIcon.IsSelected;
+ new System.Threading.Thread(() =>
+ {
+ var result = new HttpServerRequest().DeviceExtSet(function.deviceId, function.extSet);
+ Application.RunOnMainThread(() =>
+ {
+ if (result != null && result.Code == StateCode.SUCCESS)
+ {
+ if (Convert.ToBoolean( result.Data ))
+ {
+ function.extSet.labModel = btnSwtichIcon.IsSelected;
+ }
+ else
+ {
+ btnSwtichIcon.IsSelected = function.extSet.labModel = !btnSwtichIcon.IsSelected;
+ }
+ }
+ else
+ {
+ btnSwtichIcon.IsSelected = function.extSet.labModel = !btnSwtichIcon.IsSelected;
+ }
+ });
+ })
+ { IsBackground = true }.Start();
+ };
+
+ #endregion
+
+ }
LoadEventList();
}
+
+ /// <summary>
+ /// 鍔犺浇閫夋嫨寮圭獥
+ /// </summary>
+ void LoadEditDialog(int min ,int max,int curValue,Action<string> action)
+ {
+
+ List<string> pickerItems = new List<string>();
+
+ Dialog dialog = new Dialog();
+
+ var pView = new FrameLayout()
+ {
+ BackgroundColor = CSS_Color.DialogTransparentColor1,
+ };
+ dialog.AddChidren(pView);
+
+ var optionBaseView = new FrameLayout()
+ {
+ Y = Application.GetRealHeight(456 - 60),
+ Gravity = Gravity.CenterHorizontal,
+ Width = Application.GetRealWidth(343),
+ Height = Application.GetRealHeight(260),
+ AnimateSpeed = 0.3f,
+ Animate = Animate.DownToUp,
+ BackgroundColor = CSS_Color.MainBackgroundColor,
+ Radius = (uint)Application.GetRealWidth(12),
+ };
+ pView.AddChidren(optionBaseView);
+
+ var topView = new FrameLayout()
+ {
+ Gravity = Gravity.CenterHorizontal,
+ Width = Application.GetRealWidth(343),
+ Height = Application.GetRealHeight(40),
+ BackgroundColor = CSS_Color.MainBackgroundColor,
+ Radius = (uint)Application.GetRealWidth(12),
+ };
+ optionBaseView.AddChidren(topView);
+ topView.AddChidren(new Button() { Y = Application.GetRealHeight(39), Height = Application.GetRealHeight(1), BackgroundColor = CSS_Color.DividingLineColor });
+
+ var btnCancel = new Button()
+ {
+ X = Application.GetRealWidth(21),
+ Width = Application.GetRealWidth(100),
+ TextAlignment = TextAlignment.CenterLeft,
+ TextColor = CSS_Color.PromptingColor1,
+ TextSize = CSS_FontSize.TextFontSize,
+ TextID = StringId.Cancel,
+ };
+ topView.AddChidren(btnCancel);
+
+ var btnConfrim = new Button()
+ {
+ X = Application.GetRealWidth(160),
+ Width = Application.GetRealWidth(160),
+ TextAlignment = TextAlignment.CenterRight,
+ TextColor = CSS_Color.MainColor,
+ TextSize = CSS_FontSize.TextFontSize,
+ TextID = StringId.Confirm,
+ };
+ topView.AddChidren(btnConfrim);
+
+ UIPickerView uIPickerView = new UIPickerView()
+ {
+ Y = Application.GetRealHeight(40),
+ Height = Application.GetRealHeight(210),
+ Radius = (uint)Application.GetRealWidth(12),
+ };
+ for (int i = min; i <= max; i += 1)
+ {
+ pickerItems.Add(i.ToString());
+ }
+ uIPickerView.setNPicker(pickerItems, null, null);
+ optionBaseView.AddChidren(uIPickerView);
+ uIPickerView.setCurrentItems(pickerItems.IndexOf(curValue.ToString()), 4, 5);
+
+ string selectItem = pickerItems[0];
+ if (pickerItems.Contains(curValue.ToString()))
+ {
+ selectItem = curValue.ToString();
+ }
+
+ dialog.Show();
+
+ pView.MouseUpEventHandler = (sender, e) => {
+ dialog.Close();
+ };
+
+ btnCancel.MouseUpEventHandler = (sender, e) => {
+ dialog.Close();
+ };
+ uIPickerView.OnSelectChangeEvent = (int1, int2, int3) => {
+ selectItem = pickerItems[int1];
+ };
+ btnConfrim.MouseUpEventHandler = (sender, e) => {
+ dialog.Close();
+ action?.Invoke(selectItem);
+ };
+
+ }
+
+
+
}
}
--
Gitblit v1.8.0