Former-commit-id: 6e682c0a26c5b5d61823c4b73ca8281892a2cfbb
TangShanKaiPing
wanggang 6 years ago
parent 5015b8a8b7
commit 8f18dbf770

@ -129,6 +129,11 @@ namespace IoT.Shared.Infrastructure
{ {
} }
public void ServerToClient(string method, string message, string fromConnectionId)
{
this.OnServerToClient(method, method, fromConnectionId);
}
public void ClientToServer(string method, string message, string fromConnectionId = null) public void ClientToServer(string method, string message, string fromConnectionId = null)
{ {
Task.Run(() => Task.Run(() =>

@ -82,7 +82,7 @@ namespace IoTCenter.Controllers
{ {
try try
{ {
var device = this._deviceRepo.ReadOnlyTable().FirstOrDefault(o => o.Number == request.Number); var device = this._deviceRepo.ReadOnlyTable().Include(o => o.Node).FirstOrDefault(o => o.Number == request.Number);
if (device != null) if (device != null)
{ {
var query = string.Empty; var query = string.Empty;
@ -91,7 +91,7 @@ namespace IoTCenter.Controllers
query = query.SetParam(item.Key, item.Value); query = query.SetParam(item.Key, item.Value);
} }
var message = $"{request.Method}{query}"; var message = $"{request.Method}{query}";
this._pageHubContext.Clients.Group(device.ConnectId).SendAsync(Methods.ServerToClient, Methods.CallApi, message, request.ConnectionId); this._pageHubContext.Clients.Group(device.Node.Number).SendAsync(Methods.ServerToClient, Methods.CallApi, message, request.ConnectionId);
} }
return Json(ApiResponse.AsyncSuccess()); return Json(ApiResponse.AsyncSuccess());
} }

@ -56,7 +56,7 @@ namespace IoTCenter.Services
{ {
try try
{ {
pageHubContext.Clients.Group(node.Number).SendAsync(Methods.ServerToClient, "HealthCheckRequest", "", null); pageHubContext.Clients.Group(node.Number).SendAsync(Methods.ServerToClient, Methods.HealthCheckRequest, "", null);
} }
catch (Exception ex) catch (Exception ex)
{ {

@ -25,7 +25,7 @@ namespace IoTCenter.Services
public override void ClientToServer(string method, string message, string connectionId) public override void ClientToServer(string method, string message, string connectionId)
{ {
if (method == "HealthCheckResponse") if (method == Methods.HealthCheckResponse)
{ {
using (var scope = this._applicationService.CreateScope()) using (var scope = this._applicationService.CreateScope())
{ {

@ -117,3 +117,6 @@ input[type=range] {
input[type=range]:focus::-webkit-slider-runnable-track { input[type=range]:focus::-webkit-slider-runnable-track {
background: #ccc; background: #ccc;
} }
img.offline {
filter: grayscale(100%);
}

@ -182,7 +182,7 @@
<li> <li>
<a class="item-content" <a class="item-content"
:href="'/device/'+device.Number+'/name/'+device.Name"> :href="'/device/'+device.Number+'/name/'+device.Name">
<div class="item-media"> <img :src="'images/'+device.Icon+'.png'" /></div> <div class="item-media"> <img :class="device.IsOnline?'online':'offline'" :src="'images/'+device.Icon+'.png'" /></div>
<div class="item-inner"> <div class="item-inner">
<div class="item-title">{{device.DisplayName||device.Name}}</div> <div class="item-title">{{device.DisplayName||device.Name}}</div>
<div class="item-after"> <div class="item-after">
@ -208,7 +208,7 @@
<li> <li>
<a class="item-content" <a class="item-content"
:href="'/device/'+device.Number+'/name/'+device.Name"> :href="'/device/'+device.Number+'/name/'+device.Name">
<div class="item-media"> <img :src="'images/'+device.Icon+'.png'" /></div> <div class="item-media"> <img :class="device.IsOnline?'online':'offline'" :src="'images/'+device.Icon+'.png'" /></div>
<div class="item-inner"> <div class="item-inner">
<div class="item-title">{{device.DisplayName||device.Name}}</div> <div class="item-title">{{device.DisplayName||device.Name}}</div>
<div class="item-after"> <div class="item-after">
@ -238,7 +238,7 @@
<li> <li>
<a class="item-content" <a class="item-content"
:href="'/device/'+device.Number+'/name/'+device.Name"> :href="'/device/'+device.Number+'/name/'+device.Name">
<div class="item-media"> <img :src="'images/'+device.Icon+'.png'" /></div> <div class="item-media"> <img :class="device.IsOnline?'online':'offline'" :src="'images/'+device.Icon+'.png'" /></div>
<div class="item-inner"> <div class="item-inner">
<div class="item-title">{{device.DisplayName||device.Name}}</div> <div class="item-title">{{device.DisplayName||device.Name}}</div>
<div class="item-after"> <div class="item-after">
@ -265,7 +265,7 @@
<li> <li>
<a class="item-content" <a class="item-content"
:href="'/device/'+device.Number+'/name/'+device.Name"> :href="'/device/'+device.Number+'/name/'+device.Name">
<div class="item-media"> <img :src="'images/'+device.Icon+'.png'" /></div> <div class="item-media"> <img :class="device.IsOnline?'online':'offline'" :src="'images/'+device.Icon+'.png'" /></div>
<div class="item-inner"> <div class="item-inner">
<div class="item-title">{{device.DisplayName||device.Name}}</div> <div class="item-title">{{device.DisplayName||device.Name}}</div>
<div class="item-after"> <div class="item-after">
@ -291,7 +291,7 @@
<li> <li>
<a class="item-content" <a class="item-content"
:href="'/device/'+device.Number+'/name/'+device.Name"> :href="'/device/'+device.Number+'/name/'+device.Name">
<div class="item-media"> <img :src="'images/'+device.Icon+'.png'" /></div> <div class="item-media"> <img :class="device.IsOnline?'online':'offline'" :src="'images/'+device.Icon+'.png'" /></div>
<div class="item-inner"> <div class="item-inner">
<div class="item-title">{{device.DisplayName||device.Name}}</div> <div class="item-title">{{device.DisplayName||device.Name}}</div>
<div class="item-after"> <div class="item-after">
@ -317,7 +317,7 @@
<li> <li>
<a class="item-link item-content" <a class="item-link item-content"
:href="'/device/'+device.Number+'/name/'+device.Name"> :href="'/device/'+device.Number+'/name/'+device.Name">
<div class="item-media"> <img :src="'images/'+device.Icon+'.png'" /></div> <div class="item-media"> <img :class="device.IsOnline?'online':'offline'" :src="'images/'+device.Icon+'.png'" /></div>
<div class="item-inner"> <div class="item-inner">
<div class="item-title">{{device.DisplayName||device.Name}}</div> <div class="item-title">{{device.DisplayName||device.Name}}</div>
<div class="item-after"><span class="badge color-green">{{getData(device,"状态")}}</span></div> <div class="item-after"><span class="badge color-green">{{getData(device,"状态")}}</span></div>
@ -346,7 +346,7 @@
<li> <li>
<a class="item-link item-content" <a class="item-link item-content"
:href="'/device/'+device.Number+'/name/'+device.Name"> :href="'/device/'+device.Number+'/name/'+device.Name">
<div class="item-media"> <img :src="'images/'+device.Icon+'.png'" /></div> <div class="item-media"> <img :class="device.IsOnline?'online':'offline'" :src="'images/'+device.Icon+'.png'" /></div>
<div class="item-inner"> <div class="item-inner">
<div class="item-title">{{device.DisplayName||device.Name}}</div> <div class="item-title">{{device.DisplayName||device.Name}}</div>
<div class="item-after"> <div class="item-after">
@ -377,7 +377,7 @@
<li> <li>
<a class="item-link item-content" <a class="item-link item-content"
:href="'/device/'+device.Number+'/name/'+device.Name"> :href="'/device/'+device.Number+'/name/'+device.Name">
<div class="item-media"> <img :src="'images/'+device.Icon+'.png'" /></div> <div class="item-media"> <img :class="device.IsOnline?'online':'offline'" :src="'images/'+device.Icon+'.png'" /></div>
<div class="item-inner"> <div class="item-inner">
<div class="item-title">{{device.DisplayName||device.Name}}</div> <div class="item-title">{{device.DisplayName||device.Name}}</div>
<div class="item-after"> <div class="item-after">
@ -407,7 +407,7 @@
<li> <li>
<a class="item-link item-content" <a class="item-link item-content"
:href="'/device/'+device.Number+'/name/'+device.Name"> :href="'/device/'+device.Number+'/name/'+device.Name">
<div class="item-media"> <img :src="'images/'+device.Icon+'.png'" /></div> <div class="item-media"> <img :class="device.IsOnline?'online':'offline'" :src="'images/'+device.Icon+'.png'" /></div>
<div class="item-inner"> <div class="item-inner">
<div class="item-title">{{device.DisplayName||device.Name}}</div> <div class="item-title">{{device.DisplayName||device.Name}}</div>
<div class="item-after"> <div class="item-after">
@ -444,7 +444,7 @@
<li> <li>
<a class="item-link item-content" <a class="item-link item-content"
:href="'/device/'+device.Number+'/name/'+device.Name"> :href="'/device/'+device.Number+'/name/'+device.Name">
<div class="item-media"> <img :src="'images/'+device.Icon+'.png'" /></div> <div class="item-media"> <img :class="device.IsOnline?'online':'offline'" :src="'images/'+device.Icon+'.png'" /></div>
<div class="item-inner"> <div class="item-inner">
<div class="item-title">{{device.DisplayName||device.Name}}</div> <div class="item-title">{{device.DisplayName||device.Name}}</div>
<div class="item-after"> <div class="item-after">
@ -484,7 +484,7 @@
<li> <li>
<a class="item-link item-content" <a class="item-link item-content"
:href="'/device/'+device.Number+'/name/'+device.Name"> :href="'/device/'+device.Number+'/name/'+device.Name">
<div class="item-media"> <img :src="'images/'+device.Icon+'.png'" /></div> <div class="item-media"> <img :class="device.IsOnline?'online':'offline'" :src="'images/'+device.Icon+'.png'" /></div>
<div class="item-inner"> <div class="item-inner">
<div class="item-title">{{device.DisplayName||device.Name}}</div> <div class="item-title">{{device.DisplayName||device.Name}}</div>
<div class="item-after"><span class="badge color-green">{{getData(device,"状态")}}</span></div> <div class="item-after"><span class="badge color-green">{{getData(device,"状态")}}</span></div>
@ -592,7 +592,7 @@
<li> <li>
<a class="item-link item-content" <a class="item-link item-content"
:href="'/device/'+device.Number+'/name/'+device.Name"> :href="'/device/'+device.Number+'/name/'+device.Name">
<div class="item-media"> <img :src="'images/'+device.Icon+'.png'" /></div> <div class="item-media"> <img :class="device.IsOnline?'online':'offline'" :src="'images/'+device.Icon+'.png'" /></div>
<div class="item-inner"> <div class="item-inner">
<div class="item-title">{{device.DisplayName||device.Name}}</div> <div class="item-title">{{device.DisplayName||device.Name}}</div>
<div class="item-after"></div> <div class="item-after"></div>
@ -680,7 +680,7 @@
<li> <li>
<a class="item-link item-content" <a class="item-link item-content"
:href="'/device/'+device.Number+'/name/'+device.Name"> :href="'/device/'+device.Number+'/name/'+device.Name">
<div class="item-media"> <img :src="'images/'+device.Icon+'.png'" /></div> <div class="item-media"> <img :class="device.IsOnline?'online':'offline'" :src="'images/'+device.Icon+'.png'" /></div>
<div class="item-inner"> <div class="item-inner">
<div class="item-title">{{device.DisplayName||device.Name}}</div> <div class="item-title">{{device.DisplayName||device.Name}}</div>
<div class="item-after"></div> <div class="item-after"></div>

Loading…
Cancel
Save