Former-commit-id: 149761da76261805f86e464241f08748ea8eb3ea
TangShanKaiPing
wanggang 6 years ago
parent de19cccb06
commit 79e6837571

@ -94,7 +94,9 @@ namespace Application.Domain.Entities
}
else
{
oldData.Name = data.Name;
oldData.Value = data.Value;
oldData.Unit = data.Unit;
oldData.Description = data.Description;
}
return oldData;

@ -185,25 +185,32 @@ namespace IoTCenter.Controllers
var dbName = "iot";
var measurementName = "data";
var list = new List<object>();
var labels = new List<string>();
using (var client = new InfluxClient(new Uri(url), usr, pwd))
{
var fileds = String.Join(',', device.Data.Where(o => o.Type == DeviceDataType.Int || o.Type == DeviceDataType.Float).Select(o => o.Key));
var query = $"select {fileds} from {measurementName} where time>now()-{time} and DeviceNumber = '{device.Number}' limit 10000";
var result = client.ReadAsync<DynamicInfluxRow>(dbName, query).Result;
var rows = result.Results.FirstOrDefault()?
.Series.FirstOrDefault()?
.Rows;
foreach (var data in device.Data.Where(o => o.Type == DeviceDataType.Int || o.Type == DeviceDataType.Float))
if (!string.IsNullOrEmpty(fileds))
{
list.Add(new
var query = $"select {fileds} from {measurementName} where time>now()-{time} and DeviceNumber = '{device.Number}' limit 10000";
var result = client.ReadAsync<DynamicInfluxRow>(dbName, query).Result;
var rows = result.Results.FirstOrDefault()?
.Series.FirstOrDefault()?
.Rows;
foreach (var data in device.Data.Where(o => o.Type == DeviceDataType.Int || o.Type == DeviceDataType.Float))
{
label = data.Name,
data = rows != null ? rows.Where(o => o.Fields.ContainsKey(data.Key)).Select(o => o.GetField(data.Key)).ToList() : new List<object>(),
backgroundColor = this.GetColor(data.Key),
fill = false
});
list.Add(new
{
label = data.Name,
data = rows != null ? rows.Where(o => o.Fields.ContainsKey(data.Key)).Select(o => o.GetField(data.Key)).ToList() : new List<object>(),
backgroundColor = this.GetColor(data.Key),
fill = false
});
}
if (rows != null)
{
labels = rows.Select(o => o.Timestamp.Value).Select(o => o.ToString("MM-dd HH:mm")).Distinct().ToList();
}
}
var labels = rows != null ? rows.Select(o => o.Timestamp.Value).Select(o => o.ToString("MM-dd HH:mm")).ToList().Distinct() : new List<string>();
var model = new
{
datasets = list,

@ -701,7 +701,7 @@
</div>
<div class="row">
<div class="col-md-6" v-for="device in GetChartDevices()">
<div class="card" style="height:220px;">
<div class="card" style="height:306px;">
<div class="card-header">
<div class="card-title">
{{device.DisplayName}}

Binary file not shown.

@ -513,6 +513,9 @@ namespace IoTNode.DeviceServices.FBee
device.AddorUpdateData(device.CreateData(Keys.Battery, battery, DeviceDataType.Int, Keys.Battery, hidden: true));
var epCount = ms.ReadByte();
device.AddorUpdateData(device.CreateData(Keys.EndPointCount, battery, DeviceDataType.Int, Keys.EndPointCount, hidden: true));
if (device.Name == "光强检测器")
{
}
var historyData = ms.ReadHexString(4);
device.AddorUpdateData(device.CreateData(Keys.Data, historyData, DeviceDataType.String, Keys.Data, hidden: true));
device.AddorUpdateData(device.CreateData(Keys.ZoneType, zoneType, DeviceDataType.String, Keys.ZoneType, hidden: true));
@ -1245,7 +1248,7 @@ namespace IoTNode.DeviceServices.FBee
}
else if (clusterId == ClusterId.voltage)
{
var data1 = device.CreateData(Keys.Voltage, props[0x21][0] / 2f, DeviceDataType.Float, "电量");
var data1 = device.CreateData(Keys.Voltage, props[0x21][0] / 2f, DeviceDataType.Float, "电量", hidden: true);
device.AddorUpdateData(data1);
var dto1 = data1.To<EditDataModel>();
dataList.Add(dto1);

@ -12,8 +12,10 @@ using System.Linq;
namespace IoTNode.Services
{
public class IoTNodeEventHandler :
IEventHander<EntityInsertedEvent<IoTTimer>>,
IEventHander<EntityUpdatedEvent<IoTTimer>>,
IEventHander<EntityDeletedEvent<IoTTimer>>,
IEventHander<EntityInsertedEvent<IoTTigger>>,
IEventHander<EntityUpdatedEvent<IoTTigger>>,
IEventHander<EntityDeletedEvent<IoTTigger>>,
IEventHander<EntityUpdatedEvent<Data>>
@ -26,6 +28,11 @@ namespace IoTNode.Services
this._sp = sp;
}
public void Handle(EntityInsertedEvent<IoTTimer> message)
{
RecurringJob.AddOrUpdate<IoTNodeJob>(message.Data.Id.ToString(), o => o.TimerHanle(message.Data.Id), message.Data.Cron);
}
public void Handle(EntityUpdatedEvent<IoTTimer> message)
{
RecurringJob.AddOrUpdate<IoTNodeJob>(message.Data.Id.ToString(), o => o.TimerHanle(message.Data.Id), message.Data.Cron);
@ -36,6 +43,11 @@ namespace IoTNode.Services
RecurringJob.RemoveIfExists(message.Data.Id.ToString());
}
public void Handle(EntityInsertedEvent<IoTTigger> message)
{
Tiggers.TryAdd(message.Data.Id, message.Data);
}
public void Handle(EntityUpdatedEvent<IoTTigger> message)
{
Tiggers.TryRemove(message.Data.Id, out IoTTigger tigger);

Binary file not shown.
Loading…
Cancel
Save