From b562a582ac3a288193e6e4f57c5eff8a344305a4 Mon Sep 17 00:00:00 2001
From: wxr <wxr@hdlchina.com.cn>
Date: 星期五, 27 九月 2024 13:52:17 +0800
Subject: [PATCH] Update AndroidManifest.xml
---
HDL_ON/UI/UI2/FuntionControlView/Video/VideoMainView.cs | 360 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 338 insertions(+), 22 deletions(-)
diff --git a/HDL_ON/UI/UI2/FuntionControlView/Video/VideoMainView.cs b/HDL_ON/UI/UI2/FuntionControlView/Video/VideoMainView.cs
index 6d0dd75..8597513 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/Video/VideoMainView.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/Video/VideoMainView.cs
@@ -5,11 +5,14 @@
using HDL_ON.Stan;
using ZXing.QrCode.Internal;
using static HDL_ON.UI.UI2.FuntionControlView.Video.VideoMethod;
+using HDL_ON.UI.CSS;
namespace HDL_ON.UI.UI2.FuntionControlView.Video
{
public class VideoMainView : FrameLayout
{
+ List<Video> xiMoVideoList = new List<Video>();
+
/// <summary>
/// 鍔犺浇鍙瀵硅UI
/// </summary>
@@ -17,11 +20,49 @@
/// <param name="videoList">鍙瀵硅鍒楄〃</param>
public void Show(List<CallView> listCall, List<Video> videoList)
{
+ xiMoVideoList = videoList.FindAll((obj) => obj.spk == "door.gate");
#region 甯冨眬鐣岄潰
this.BackgroundColor = MusicColor.ViewColor;
var topView = new TopView();
- this.AddChidren(topView.TopFLayoutView());
+ //this.AddChidren(topView.TopFLayoutView());
+
+
+
+#if __IOS__
+ // 鑾峰彇褰撳墠绯荤粺鐨勭増鏈彿
+ string systemVersion = UIKit.UIDevice.CurrentDevice.SystemVersion;
+ // 灏嗙郴缁熺増鏈瓧绗︿覆杞崲涓� Version 瀵硅薄
+ System.Version currentVersion = new System.Version(systemVersion);
+ // 瀹氫箟 iOS 17 浣滀负姣旇緝鐨勭増鏈�
+ System.Version version17 = new System.Version(17, 0);
+ // 姣旇緝褰撳墠鐗堟湰鏄惁澶т簬 iOS 17
+ if (currentVersion.CompareTo(version17) > 0)
+ {
+ this.AddChidren(topView.TopFLayoutView());
+ }
+ else
+ {
+ if (xiMoVideoList.Count > 0)
+ {
+ this.AddChidren(topView.TopFLayoutView2());
+ }
+ else
+ {
+ this.AddChidren(topView.TopFLayoutView());
+ }
+ topView.topNameBtn.TextID = StringId.keshiduijiang;
+ }
+#else
+ if (xiMoVideoList.Count > 0)
+ {
+ this.AddChidren(topView.TopFLayoutView2());
+ }
+ else
+ {
+ this.AddChidren(topView.TopFLayoutView());
+ }
topView.topNameBtn.TextID = StringId.keshiduijiang;
+#endif
var pageView = new PageLayout()
@@ -34,7 +75,9 @@
var view1 = new FrameLayout();
pageView.AddChidren(view1);
var view2 = new FrameLayout();
- pageView.AddChidren(view2);
+ if (!Entity.DB_ResidenceData.Instance.SupportFVDevice) {//闈炲叏瑙嗛�氬睍绀洪�氳瘽璁板綍
+ pageView.AddChidren(view2);
+ }
View1(view1, videoList);
View2(view2, listCall, videoList);
Button btn11 = new Button
@@ -46,7 +89,7 @@
BackgroundColor = MusicColor.SelectedColor,
Radius = (uint)Application.GetRealHeight(4),
};
- view1.AddChidren(btn11);
+ //view1.AddChidren(btn11);
Button btn12 = new Button
{
@@ -57,7 +100,13 @@
BackgroundColor = 0x404484F4,
Radius = (uint)Application.GetRealHeight(4),
};
- view1.AddChidren(btn12);
+ //view1.AddChidren(btn12);
+ if (!Entity.DB_ResidenceData.Instance.SupportFVDevice)
+ {//闈炲叏瑙嗛�氬睍绀轰笅鏂归�夋嫨鎸夐挳
+ view1.AddChidren(btn11);
+ view1.AddChidren(btn12);
+ }
+
Button btn21 = new Button
{
X = Application.GetRealWidth(170),
@@ -115,8 +164,6 @@
/// <param name="video">鍙瀵硅瀵硅薄</param>
void View1(FrameLayout view1, List<Video> videoList)
{
-
-
#region 甯冨眬鐣岄潰
var bjFl = new FrameLayout
{
@@ -179,7 +226,6 @@
Width = Application.GetRealWidth(160),
Height = Application.GetRealWidth(160),
UnSelectedImagePath = "VideoIcon/keshiduijiang.png",
-
};
bjFl.AddChidren(intercomBtnIcon);
@@ -191,11 +237,17 @@
};
bjFl.AddChidren(vv);
- bool bol = haveFlVideo(videoList);
+ bool bol = haveQRCodeVideo(videoList);
if (bol)
{
//闂ㄧ浜岀淮鐮佸浐瀹氭湁鐨�,铏氭嫙涓�涓嚭鏉�
- videoList.Add(new Video { deviceName = Language.StringByID(StringId.menjinerweima), interphoneType = "100" });
+ videoList.Add(new Video { deviceName = Language.StringByID(StringId.menjinerweima), interphoneType = "100" ,devType = "100" });
+ }
+ if (xiMoVideoList.Count > 0)
+ {
+ //寰樺緤鎶ヨ
+ videoList.Add(new Video { deviceName = Language.StringByID(StringId.WanderingAlarm), interphoneType = "222", devType = "222" });
+
}
//鏁扮粍涓暟
//int value = 15;
@@ -250,6 +302,7 @@
TextColor = CSS.CSS_Color.TextualColor,
TextAlignment = TextAlignment.Center,
Text = video.deviceName,
+ IsMoreLines = true,
};
fLayout.AddChidren(deviceNameBtn);
@@ -270,16 +323,24 @@
var video2 = clickBtn.Tag as Video;
if (video2.devType == "100")
{
- //闂ㄧ浜岀淮鐮佸浐瀹氭湁鐨�
- VideoSend.GetQRcode(this, video2, (tag, paw) =>
- {
- if (tag)
- {
- //娉ㄦ剰锛氬瘑鐮佹湁鍙兘寤舵椂1鍒嗛挓鐢熸晥
- View.ShowDialog showDialog = new View.ShowDialog();
- showDialog.QRcode(paw);
- }
- });
+ ChooseVideoShowQRCode();
+
+ ////闂ㄧ浜岀淮鐮佸浐瀹氭湁鐨�
+ //VideoSend.GetQRcode(this, video2, (tag, paw) =>
+ //{
+ // if (tag)
+ // {
+ // //娉ㄦ剰锛氬瘑鐮佹湁鍙兘寤舵椂1鍒嗛挓鐢熸晥
+ // View.ShowDialog showDialog = new View.ShowDialog();
+ // showDialog.QRcode(paw);
+ // }
+ //});
+ }
+ else if (video2.devType == "222")
+ {
+ ChooseAlarmShow();
+
+
}
else
{
@@ -307,8 +368,10 @@
Lc_Psk = video.deviceId,//2021-10-15 PSK瀛楁涓嶈兘鍙杁eviceName
Lc_PlayToken = video.playToken,
deviceSipAccount = video.deviceSipAccount,
- HomeId = video.homeId
+ HomeId = video.homeId,
+ deviceCode=video.deviceCode
};
+
ESOnVideo.Current.ShowESVideoMonitor(eSVideoInfo, video.interphoneType);
}
};
@@ -544,20 +607,273 @@
//鍒ゆ柇鏄惁鏈� 涓版灄鍙瀵硅
- private bool haveFlVideo(List<Video> videoList)
+ private bool haveQRCodeVideo(List<Video> videoList)
{
bool bol = false;
for (int i = 0; i < videoList.Count; i++)
{
var _video = videoList[i];
- if (_video.interphoneType == "FLVI")
+ if (_video.interphoneType == "FLVI" || _video.spk == "door.gate")
return true;
}
return bol;
}
+ /// <summary>
+ /// 鑾峰彇闂ㄧ浜岀淮鐮�
+ /// </summary>
+ public void ChooseVideoShowQRCode()
+ {
+ Dialog dialog = new Dialog()
+ {
+ BackgroundColor = CSS_Color.DialogTransparentColor1,
+ };
+
+ FrameLayout dialogView = new FrameLayout();
+ dialog.AddChidren(dialogView);
+ dialogView.MouseUpEventHandler = (sender, e) => {
+ dialog.Close();
+ };
+
+ var contentView = new FrameLayout()
+ {
+ Gravity = Gravity.Center,
+ Width = Application.GetRealWidth(270),
+ Height = Application.GetRealHeight(200),
+ BackgroundColor = CSS_Color.MainBackgroundColor,
+ BorderColor = 0x00000000,
+ BorderWidth = 0,
+ Radius = (uint)Application.GetMinRealAverage(10),
+ };
+ dialogView.AddChidren(contentView);
+
+ var btnTitle = new Button()
+ {
+ Height = Application.GetRealHeight(64),
+ TextAlignment = TextAlignment.Center,
+ TextColor = CSS_Color.FirstLevelTitleColor,
+ TextID = StringId.menjinerweima,
+ TextSize = CSS_FontSize.SubheadingFontSize,
+ };
+ contentView.AddChidren(btnTitle);
+
+ var listView = new VerticalScrolViewLayout()
+ {
+ Gravity = Gravity.CenterHorizontal,
+ Y = Application.GetRealHeight(70),
+ Width = Application.GetRealWidth(230),
+ Height = Application.GetRealHeight(200),
+ };
+ contentView.AddChidren(listView);
+
+ //if (ximoVideoList.Count == 1)
+ {
+ Loading loading = new Loading();
+ contentView.AddChidren(loading);
+ loading.Start("");
+ new System.Threading.Thread(() =>
+ {
+ try
+ {
+ var pack = VideoSend.GetQRcode();
+ var pairs = Newtonsoft.Json.JsonConvert.DeserializeObject<List<AccessControlQRode>>(pack.Data.ToString());
+ if (pairs.Count > 0)
+ {
+ Application.RunOnMainThread(() =>
+ {
+ ImageView codeImage = new ImageView()
+ {
+ Gravity = Gravity.Center,
+ Height = Application.GetRealWidth(320),
+ Width = Application.GetRealWidth(320),
+ ImageBytes = Scan.BytesFromText(pairs[0].qrcode, Application.GetRealWidth(200), Application.GetRealWidth(200)),
+ };
+ dialogView.AddChidren(codeImage);
+ });
+ }
+ }
+ catch (Exception ex)
+ {
+ MainPage.Log($"鑾峰彇闂ㄧ浜岀淮鐮佸紓甯革細{ex.Message}");
+ }
+ finally
+ {
+ Application.RunOnMainThread(() =>
+ {
+ if (loading != null)
+ {
+ loading.Hide();
+ loading.RemoveFromParent();
+ }
+ });
+ }
+ })
+ { IsBackground = true }.Start();
+ }
+ //else
+ //{
+
+ // foreach (var v in ximoVideoList)
+ // {
+ // Button btnMsg = new Button()
+ // {
+ // Gravity = Gravity.CenterHorizontal,
+ // Height = Application.GetRealHeight(50),
+ // Width = Application.GetRealHeight(160),
+ // TextAlignment = TextAlignment.Center,
+ // TextColor = CSS_Color.TextualColor,
+ // TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+ // Text = v.deviceName,
+ // Radius = (uint)Application.GetRealWidth(5),
+ // BackgroundColor = CSS_Color.DividingLineColor,
+ // IsMoreLines = true,
+ // };
+ // listView.AddChidren(btnMsg);
+
+ // listView.AddChidren(new Button() { Height = Application.GetRealHeight(12) });
+
+ // btnMsg.MouseUpEventHandler = (sender, e) =>
+ // {
+
+
+ // if (v.spk == "door.gate")
+ // {
+
+ // return;
+ // }
+
+ // //闂ㄧ浜岀淮鐮佸浐瀹氭湁鐨�
+ // VideoSend.GetQRcode(this, v, (tag, paw) =>
+ // {
+ // if (tag)
+ // {
+ // //娉ㄦ剰锛氬瘑鐮佹湁鍙兘寤舵椂1鍒嗛挓鐢熸晥
+ // View.ShowDialog showDialog = new View.ShowDialog();
+ // showDialog.QRcode(paw);
+ // }
+ // });
+ // dialog.Close();
+ // };
+ // }
+ //}
+ dialog.Show();
+
+ }
+
+
+ /// <summary>
+ /// 閫夋嫨寰樺緤鎶ヨ鍒楄〃鏄剧ず
+ /// </summary>
+ public void ChooseAlarmShow()
+ {
+ if (xiMoVideoList.Count == 1)
+ {
+ var wanderingAlarmPage = new WanderingAlarmPage(xiMoVideoList[0].deviceId);
+ MainPage.BasePageView.AddChidren(wanderingAlarmPage);
+ wanderingAlarmPage.LoadPage();
+ MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+
+ }
+ else
+ {
+ Dialog dialog = new Dialog()
+ {
+ BackgroundColor = CSS_Color.DialogTransparentColor1,
+ };
+
+ FrameLayout dialogView = new FrameLayout();
+ dialog.AddChidren(dialogView);
+ dialogView.MouseUpEventHandler = (sender, e) =>
+ {
+ dialog.Close();
+ };
+
+ var contentView = new FrameLayout()
+ {
+ Gravity = Gravity.Center,
+ Width = Application.GetRealWidth(270),
+ Height = Application.GetRealHeight(280),
+ BackgroundColor = CSS_Color.MainBackgroundColor,
+ BorderColor = 0x00000000,
+ BorderWidth = 0,
+ Radius = (uint)Application.GetMinRealAverage(10),
+ };
+ dialogView.AddChidren(contentView);
+
+ var btnTitle = new Button()
+ {
+ Height = Application.GetRealHeight(64),
+ TextAlignment = TextAlignment.Center,
+ TextColor = CSS_Color.FirstLevelTitleColor,
+ TextID = StringId.WanderingAlarm,
+ TextSize = CSS_FontSize.SubheadingFontSize,
+ };
+ contentView.AddChidren(btnTitle);
+
+ var listView = new VerticalScrolViewLayout()
+ {
+ Gravity = Gravity.CenterHorizontal,
+ Y = Application.GetRealHeight(70),
+ Width = Application.GetRealWidth(230),
+ Height = Application.GetRealHeight(200),
+ };
+ contentView.AddChidren(listView);
+
+
+ foreach (var v in xiMoVideoList)
+ {
+ Button btnMsg = new Button()
+ {
+ Gravity = Gravity.CenterHorizontal,
+ Height = Application.GetRealHeight(50),
+ Width = Application.GetRealHeight(160),
+ TextAlignment = TextAlignment.Center,
+ TextColor = CSS_Color.TextualColor,
+ TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+ Text = v.deviceName,
+ Radius = (uint)Application.GetRealWidth(5),
+ BackgroundColor = CSS_Color.DividingLineColor,
+ IsMoreLines = true,
+ };
+ listView.AddChidren(btnMsg);
+
+ listView.AddChidren(new Button() { Height = Application.GetRealHeight(12) });
+
+ btnMsg.MouseUpEventHandler = (sender, e) =>
+ {
+
+
+ var wanderingAlarmPage = new WanderingAlarmPage(v.deviceId);
+ MainPage.BasePageView.AddChidren(wanderingAlarmPage);
+ wanderingAlarmPage.LoadPage();
+ MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+
+ dialog.Close();
+ };
+ }
+ dialog.Show();
+ }
+
+ }
+
}
+ /// <summary>
+ /// 闂ㄧ浜岀淮鐮佹暟鎹�
+ /// </summary>
+ public class AccessControlQRode
+ {
+ public string title = string.Empty;
+ public string codeType = string.Empty;
+ public string userName = string.Empty;
+ public string houseFullName = string.Empty;
+ public string communityName = string.Empty;
+ public string desc = string.Empty;
+ public string businessType = string.Empty;
+ public string qrcode = string.Empty;
+ }
+
+
}
--
Gitblit v1.8.0