Former-commit-id: 80841c5a8083cfa0157a300ec65d070435d40e68
TangShanKaiPing
zhengpengju 6 years ago
parent d790591bc3
commit b85a56119e

@ -5,7 +5,7 @@
@section bread{
<li class="breadcrumb-item"><a href="@Url.Action("Product","Home",new { number=Model})">产品</a></li>
}
<div id="template">
<div id="template" debug="12021250">
<style>
h3 img {
height: 32px;
@ -145,7 +145,7 @@
<div class="row" v-if="HasChart()">
<div class="col-md-12">
<div class="card">
<div class="card-header">
<div class="card-header" debug="12021441">
<h3 class="card-title">历史数据</h3>
<ul role="tablist" class="nav nav-tabs card-tools">
<li class="nav-item"><a href="#tab_11165f469-8f244804008d1500" data-toggle="tab" class="nav-link active" v-on:click="changeTime('1d')">24小时</a></li>
@ -159,27 +159,14 @@
</div>
</div>
</div>
<!--属性-->
<div class="row">
<div class="col-md-12">
<div class="card">
<div class="card-header">
<h3 class="card-title">{{model.Name}}</h3>
</div>
<div class="card-body" v-if="model.Data.length>0">
<div class="row" v-for="data in GetDatas()">
<div class="col-md-3">{{data.Name}}</div>
<div class="col-md-9">{{data.Value}}{{data.Unit}}{{data.Description}}</div>
</div>
</div>
</div>
</div>
</div>
<!--命令-->
<div class="row" v-if="model.Commands.length">
<div class="col-md-12">
<div class="card">
<div class="card-header">
<div class="card-header" debug="12021443">
<h3 class="card-title"><img :src="iotCenter+model.Product.Image" />{{model.DisplayName}}</h3>
<div class="card-tools">命令</div>
</div>
@ -190,11 +177,11 @@
</div>
</div>
<!--摄像头-->
<template v-if="model.Name==='摄像头'">
<template v-if="model.Name==='摄像头'" debug="12021251">
<div class="row">
<div class="col-md-12">
<div class="card">
<div class="card-header">
<div class="card-header" debug="12021444">
<h3 class="card-title">{{model.DisplayName}}</h3>
<input type="hidden" id="camera" :value="model.Number" />
<div class="card-tools">
@ -213,7 +200,7 @@
<div class="row" id="ptz">
<div class="col-md-12">
<div class="card" style="height:220px;">
<div class="card-header">
<div class="card-header" debug="12021445">
<h3 class="card-title"><img src="/images/ptz.png" />云台操作</h3>
</div>
<div class="card-body" style="height:178px;">
@ -250,7 +237,7 @@
<div class="row">
<div class="col-md-12">
<div class="card">
<div class="card-header">
<div class="card-header" debug="12021446">
<h3 class="card-title">
<img src="/images/light.png" />{{model.DisplayName}}
</h3>
@ -302,7 +289,7 @@
<div class="row">
<div class="col-md-12">
<div class="card" style="min-height:176px;">
<div class="card-header" style="padding-bottom:0;">
<div class="card-header" style="padding-bottom:0;" debug="12021447">
<h3 class="card-title">
<img src="/images/control.png" />
{{model.DisplayName}}
@ -466,7 +453,7 @@
<div class="row">
<div class="col-md-12">
<div class="card">
<div class="card-header">
<div class="card-header" debug="12021448">
<h3 class="card-title">遥控器匹配</h3>
<div class="card-tools">
<button class="btn btn-sm btn-success" v-on:click="CallApi(model.Number,'/Ir/MathAir1')">空调匹配</button>
@ -480,7 +467,7 @@
<div class="row">
<div class="col-md-12">
<div class="card">
<div class="card-header">
<div class="card-header" debug="12021449">
<h3 class="card-title">自定义指令</h3>
<div class="card-tools">
<button class="btn btn-sm btn-success" v-on:click="AddButton()">添加</button>
@ -526,7 +513,7 @@
<div class="=row" v-for="api in Enumerable.from(model.Product.Apis).orderBy('o=>o.Name')" v-if="api.Parameters.length>1">
<div class="card">
<div class="card-header">
<h3 class="card-title">{{api.Name}}</h3>
<h3 class="card-title" debug="12021438">{{api.Name}}</h3>
</div>
<div class="card-body">
<form class="form-horizontal">
@ -555,6 +542,23 @@
</div>
</div>
</template>
<!--属性-->
<div class="row">
<div class="col-md-12">
<div class="card">
<div class="card-header" debug="12021442">
<h3 class="card-title">{{"设备信息" || model.Name}}</h3>
</div>
<div class="card-body" v-if="model.Data.length>0">
<div class="row" v-for="data in GetDatas()">
<div class="col-md-3">{{data.Name}}</div>
<div class="col-md-9">{{data.Value}}{{data.Unit}}{{data.Description}}</div>
</div>
</div>
</div>
</div>
</div>
</template>
</div>
@section scripts{

@ -32,7 +32,7 @@
</div>
</div>
<div class="col-md-2 col-sm-4 col-xs-6" v-for="item in GetDevices()">
<div class="card">
<div class="card" debug="12021508">
<div class="card-header">
<h3 class="card-title">
<label style="font-weight:normal;"><input type="checkbox" name="numbers[]" class="item" :value="item.Number" v-if="HasBatchCommand()" v-on:change="SelectDevice($event)">{{item.Name}}</label>
@ -44,6 +44,19 @@
<a class="card-body" :href="'/Home/Device?number='+item.Number+'&productNumber='+model.Number" style="display:block;text-align:center;">
<img :alt="item.Name" :src="model.Image" style="margin:0 auto;max-width:64px;" />
</a>
<!-- 设备信息 Start -->
<div class="card-body" style="font-size: 12px;" v-if="item.Name === '温湿度传感器'">
<div class="row">
<div class="col-md-4">温度</div>
<div class="col-md-8">{{GetDataValue(item.Number,'温度')}} {{GetDeviceDataAttr(item.Number,'温度','Unit')}} {{GetDeviceDataAttr(item.Number,'温度','Description')}}</div>
</div>
<div class="row" >
<div class="col-md-4">湿度</div>
<div class="col-md-8">{{GetDataValue(item.Number,'湿度')}} {{GetDeviceDataAttr(item.Number,'湿度','Unit')}} {{GetDeviceDataAttr(item.Number,'湿度','Description')}}</div>
</div>
</div>
<!-- 设备信息 End -->
<div class="card-footer">
{{item.Node.Name}}
</div>

@ -12,11 +12,4 @@
<ItemGroup>
<EmbeddedResource Include="wwwroot\**\*" />
</ItemGroup>
<ItemGroup>
<None Remove="wwwroot\device.html" />
<None Remove="wwwroot\js\device.js" />
<None Remove="wwwroot\js\index.js" />
<None Remove="wwwroot\js\nodes.js" />
<None Remove="wwwroot\js\page.js" />
</ItemGroup>
</Project>

@ -33,6 +33,14 @@ methods = {
}
return null;
},
GetDeviceDataAttr(number, name, attr) {
var device = Enumerable.from(this.model.Devices).where(function (o) { return o.Number === number; }).firstOrDefault();
var data = Enumerable.from(device.Data).where(o => o.Name === name).firstOrDefault();
if (data != null) {
return data[attr];
}
return null;
},
SelectDevice:Select,
CallApiAll(method) {
var numbers = [];

@ -15,7 +15,7 @@ namespace IoTNode
{
Console.OutputEncoding = System.Text.Encoding.UTF8;
var host = "localhost";
var stream = "192.168.3.124";
var stream = "localhost";
var cpuNumber = Helper.Instance.GetCPUNumber();
WebHost.CreateDefaultBuilder(args)
.Run<Startup>(new List<EFConfigurationValue> {

Loading…
Cancel
Save