20211111整合监控视频页面到施工平台
This commit is contained in:
@@ -0,0 +1,140 @@
|
||||
using BLL;
|
||||
using Newtonsoft.Json;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Configuration;
|
||||
using System.Linq;
|
||||
using System.Web;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
|
||||
namespace FineUIPro.Web.Video
|
||||
{
|
||||
public partial class Video : PageBase
|
||||
{
|
||||
|
||||
public string playIds
|
||||
{
|
||||
get
|
||||
{
|
||||
return (string)ViewState["playIds"];
|
||||
}
|
||||
set
|
||||
{
|
||||
ViewState["playIds"] = value;
|
||||
}
|
||||
}
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
if (this.CurrUser != null)
|
||||
{
|
||||
this.playIds = "";
|
||||
this.tvControlItem.Nodes.Clear();
|
||||
TreeNode rootNode = new TreeNode
|
||||
{
|
||||
Text = "项目-设备",
|
||||
NodeID = "0",
|
||||
Expanded = true
|
||||
};
|
||||
this.tvControlItem.Nodes.Add(rootNode);
|
||||
|
||||
try
|
||||
{
|
||||
string url = ConfigurationManager.AppSettings["Video_URL"];
|
||||
List<string> urls = new List<string>();
|
||||
string res = APIGetHttpService.Http(url + "api/v1/device/channeltree");
|
||||
|
||||
List<Dictionary<string, string>> jsonNvr = JsonConvert.DeserializeObject<List<Dictionary<string, string>>>(res);
|
||||
foreach (Dictionary<string, string> nvr in jsonNvr)
|
||||
{
|
||||
TreeNode newNode = new TreeNode
|
||||
{
|
||||
NodeID = nvr["id"],
|
||||
Text = nvr["customName"],
|
||||
ToolTip = "项目",
|
||||
Expanded = false
|
||||
};
|
||||
rootNode.Nodes.Add(newNode);
|
||||
string jsonCameras = APIGetHttpService.Http(url + "api/v1/device/channeltree?serial=" + nvr["serial"]);
|
||||
var data = JsonConvert.DeserializeObject<List<Dictionary<string, string>>>(jsonCameras);
|
||||
foreach (var video in data)
|
||||
{
|
||||
TreeNode tempNode = new TreeNode
|
||||
{
|
||||
NodeID = video["id"],
|
||||
Text = video["name"],
|
||||
ToolTip = "设备",
|
||||
EnableClickEvent = true
|
||||
};
|
||||
|
||||
newNode.Nodes.Add(tempNode);
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
ErrLogInfo.WriteLog(ex, "视频监控", "Video.Video.aspx");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#region 树展开事件
|
||||
/// <summary>
|
||||
/// 树展开事件
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void tvControlItem_TreeNodeExpanded(object sender, TreeNodeEventArgs e)
|
||||
{ }
|
||||
#endregion
|
||||
|
||||
#region 点击TreeView
|
||||
/// <summary>
|
||||
/// 点击TreeView
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
protected void tvControlItem_NodeCommand(object sender, TreeCommandEventArgs e)
|
||||
{
|
||||
var id = this.tvControlItem.SelectedNodeID;
|
||||
if (id.Contains(":"))
|
||||
{
|
||||
try
|
||||
{
|
||||
string url = ConfigurationManager.AppSettings["Video_URL"];
|
||||
var stmp = new DateTimeOffset(DateTime.Now).ToUnixTimeSeconds() + "";
|
||||
string jsonCamera = APIGetHttpService.Http(url + "api/v1/stream/start?serial=" + id.Split(':')[0] + "&code=" + id.Split(':')[1] + "&_=" + stmp);
|
||||
var data = JsonConvert.DeserializeObject<Dictionary<string, string>>(jsonCamera);
|
||||
for (int i = 1; i <= 9; i++)
|
||||
{
|
||||
if (this.playIds.Contains("player0" + i))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
else
|
||||
{
|
||||
this.playIds += "player0" + i;
|
||||
PageContext.RegisterStartupScript("play(\"" + "player0" + i + "\",\"" + data["HLS"] + "\")");
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
ErrLogInfo.WriteLog(ex, "视频监控", "Video.Video.aspx");
|
||||
}
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
protected void btnClose_Click(object sender, EventArgs e)
|
||||
{
|
||||
var id = Request.Form["__EVENTARGUMENT"];
|
||||
this.playIds = this.playIds.Replace(id, "");
|
||||
PageContext.RegisterStartupScript("play(\"" + id + "\",\"\")");
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user