Former-commit-id: c69440c2808aa3c74aad68c20ff46c1e037ae474
TangShanKaiPing
wanggang 6 years ago
parent cec0a2d598
commit 19e4784729

@ -82,7 +82,7 @@
@Html.Raw(cfg["copyright"].Replace("{now}", DateTime.Now.Year.ToString()))
</div>
<div class="pull-right hidden-xs">
<span>版本:@Html.Raw(cfg["version"])</span><!--设备Id@DeviceAttribute.DeviceId-->
<span>设备Id@DeviceAttribute.DeviceId 软件版本:@Html.Raw(cfg["version"]) </span>
@if (User.Identity.IsAuthenticated)
{
<a href="@Url.Action("Index","Home",new { area="Admin" })">管理</a>

@ -12,7 +12,7 @@ using System.Linq;
namespace IoTNode.Controllers
{
[Device]
public class HomeController : Controller
public class HomeController : BaseController
{
private readonly IRepository<Node> _nodeRepo;
private readonly IRepository<Device> _deviceRepo;
@ -26,8 +26,8 @@ namespace IoTNode.Controllers
[Authorize]
public IActionResult Index()
{
var model = this._nodeRepo.ReadOnlyTable().FirstOrDefault();
return View();
var model = this._deviceRepo.ReadOnlyTable().Include(o => o.Node).Include(o => o.Product).ToList();
return View(model);
}
public IActionResult GetNode(Guid id)

@ -1,5 +1,49 @@
@*
For more information on enabling MVC for empty projects, visit https://go.microsoft.com/fwlink/?LinkID=397860
*@
@model List<Device>
@{
var index = 0;
}
<div class="row">
<table class="table">
<tr>
<td>#</td>
<td>节点</td>
<td>产品</td>
<td>设备</td>
<td>显示名称</td>
<td>在线</td>
<td>操作</td>
</tr>
@foreach (var item in Model)
{
<tr>
<td>@(++index)</td>
<td>@item.Node.Number@item.Node.Name</td>
<td>@item.Product.Number@item.Product.Name</td>
<td>@item.Number@item.Name</td>
<td>@item.DisplayName</td>
<td>@Html.DisplayFor(o => item.IsOnline)</td>
<td>
@if (item.Product.Number.Contains("fbee") && !item.Product.Number.Contains("gateway"))
{
var values = item.Number.Split('-');
var gateway = values[0];
var number = values[1];
<a class="api ajax" href="@Url.Action("X95","Gateway",new { gateway = gateway,number=number})" data-number="@item.Number">从网关移除</a>
}
</td>
</tr>
}
</table>
</div>
@section scripts{
<script>
$('a.ajax.api').click(function () {
if (confirm('确认从网关移除编号为:' + $(this).attr('data-number') + '的设备吗?')) {
$.get($(this).attr('href'), function () {
window.location.href = window.location.href;
});
};
return false;
});
</script>
}

@ -4,16 +4,6 @@
首页
</a>
</li>
<li class="@GetClass("Device")">
<a href="@Url.Action("Index","Device")">
设备
</a>
</li>
<li class="@GetClass("Device")">
<a href="@Url.Action("Test","Home")">
Test
</a>
</li>
</ul>
@functions{
public string GetClass(params string[] controllers)

@ -1,5 +1,5 @@
{
"version": "1.0.0-rc.4",
"version": "1.0.0-rc.5",
"Logging": {
"LogLevel": {
"Default": "Warning",

@ -127,7 +127,7 @@
@Html.Raw(cfg["copyright"].Replace("{now}", DateTime.Now.Year.ToString()))
</div>
<div class="pull-right hidden-xs">
<span>版本:@Html.Raw(cfg["version"]) 设备Id@DeviceAttribute.DeviceId </span>
<span>设备Id@DeviceAttribute.DeviceId 软件版本:@Html.Raw(cfg["version"]) </span>
@if (User.Identity.IsAuthenticated)
{
<a href="@Url.Action("Index","Home",new { area="Admin" })">管理</a>

@ -197,7 +197,7 @@
@Html.Raw(cfg["copyright"].Replace("{now}", DateTime.Now.Year.ToString()))
</div>
<div class="pull-right hidden-xs">
<span>版本:@Html.Raw(cfg["version"]) 设备Id@DeviceAttribute.DeviceId </span>
<span>设备Id@DeviceAttribute.DeviceId 软件版本:@Html.Raw(cfg["version"]) </span>
@if (User.Identity.IsAuthenticated)
{
<a href="@Url.Action("Index","Home",new { area="Admin" })">管理</a>

@ -1,5 +1,5 @@
{
"version": "1.0.0-rc.4",
"version": "1.0.0-rc.5",
"Logging": {
"LogLevel": {
"Default": "Warning",

@ -4,7 +4,7 @@
</div>
</div>
<div class="row" v-if="ViewModel">
<div class="col-md-6">
<div class="col-md-6" v-if="HasCameras()">
<div class="row">
<div class="box box-solid">
<select class="form-control" id="camera" @change="CameraSelected">
@ -606,10 +606,12 @@
});
function UpdateCamera() {
var number = $('#camera').val();
var device = Enumerable.from(vm.ViewModel.Devices).where(function (o) { return o.Number === number; }).firstOrDefault();
var url = Enumerable.from(device.Data).where(o => o.Name === '主码流flv').firstOrDefault().Value;
closePlayer(flvPlayer);
playFlv(document.getElementById("flvPlayer"), url);
if (number) {
var device = Enumerable.from(vm.ViewModel.Devices).where(function (o) { return o.Number === number; }).firstOrDefault();
var url = Enumerable.from(device.Data).where(o => o.Name === '主码流flv').firstOrDefault().Value;
closePlayer(flvPlayer);
playFlv(document.getElementById("flvPlayer"), url);
}
}
function playFlv(videoElement, url) {
try {
@ -619,11 +621,11 @@
isLive: true,
cors: true
}, {
enableWorker: true,
enableStashBuffer: false,
stashInitialSize: 1,
fixAudioTimestampGap: false
});
enableWorker: true,
enableStashBuffer: false,
stashInitialSize: 1,
fixAudioTimestampGap: false
});
flvPlayer.attachMediaElement(videoElement);
flvPlayer.load();
flvPlayer.muted = false;
@ -706,6 +708,11 @@
}
return null;
},
HasCameras() {
return Enumerable
.from(vm.ViewModel.Devices)
.any(function (o) { return o.Name === '摄像头' });
},
GetCameras() {
return Enumerable
.from(vm.ViewModel.Devices)
@ -716,11 +723,15 @@
UpdateCamera();
},
PTZControlSupport() {
return true;
var number = $('#camera').val();
var device = Enumerable.from(vm.ViewModel.Devices).where(function (o) { return o.Number === number; }).firstOrDefault();
var data = Enumerable.from(device.Data).where(o => o.Name === '缩放支持').firstOrDefault().Value;
return data === '是';
if (device) {
var data = Enumerable.from(device.Data).where(o => o.Name === '缩放支持').firstOrDefault().Value;
if (data) {
return data === '是';
}
}
return false;
},
GetDevices(name) {
return Enumerable.from(vm.ViewModel.Devices)

@ -1,5 +1,5 @@
{
"version": "1.0.0-rc.4",
"version": "1.0.0-rc.5",
"Logging": {
"LogLevel": {
"Default": "Warning"

Loading…
Cancel
Save