Former-commit-id: 76d02df9a2890f18f4e74a1bdbc7c43b9f47b357
TangShanKaiPing
wanggang 6 years ago
parent 098fc9e183
commit 46ed7419f7

@ -44,13 +44,13 @@
public const string EditNodeResponse = nameof(EditNodeResponse);
public const string EditDeviceRequest = nameof(EditDeviceRequest);
public const string EditDeviceResponse = nameof(EditDeviceResponse);
public const string EditDevice = nameof(EditDevice);
public const string DeleteDeviceRequest = nameof(DeleteDeviceRequest);
public const string DeleteDeviceResponse = nameof(DeleteDeviceResponse);
public const string EditDataRequest = nameof(EditDataRequest);
public const string EditDataResponse = nameof(EditDataResponse);
public const string EditData = nameof(EditData);
public const string DeleteDataRequest = nameof(DeleteDataRequest);
public const string DeleteDataResponse = nameof(DeleteDataResponse);

@ -1,6 +1,7 @@
using Application.Domain.Entities;
using Application.Models;
using Infrastructure.Data;
using Infrastructure.Events;
using Infrastructure.Extensions;
using IoT.Shared.Services;
using Microsoft.Extensions.Configuration;
@ -59,6 +60,15 @@ namespace IoTNode.DeviceServices
iotNodeClient.ClientToServer(method, data);
}
public void SendDataToServer(Data data)
{
using var scope = _applicationServices.CreateScope();
var iotNodeClient = scope.ServiceProvider.GetService<IoTNodeClient>();
iotNodeClient.ClientToServer($"Edit{typeof(Data).Name}", data.To<EditDataModel>());
var eventPubliser = scope.ServiceProvider.GetService<IEventPublisher>();
eventPubliser.Publish(new EntityUpdatedEvent<Data>(data));
}
public Product UpdateProduct(string productName, string productNumber, string path, string categoryNumber, string productIcon)
{
var scope = _applicationServices.CreateScope();

@ -134,7 +134,7 @@ namespace IoTNode.DeviceServices.FBee
device.Ip = ip;
deviceRepo.SaveChanges();
var deviceDto = device.To<EditDeviceModel>();
this.SendToServer(Methods.EditDeviceResponse, deviceDto);
this.SendToServer(Methods.EditDevice, deviceDto);
}
var gateways = deviceRepo.ReadOnlyTable().Where(o => o.Product.Name == "FBee网关").ToList();
foreach (var gateway in gateways)
@ -503,10 +503,10 @@ namespace IoTNode.DeviceServices.FBee
device.AddorUpdateData(device.CreateData(Keys.ZoneType, zoneType, DeviceDataType.String, Keys.ZoneType, hidden: true));
deviceRepo.SaveChanges();
var deviceDto = device.To<EditDeviceModel>();
this.SendToServer(Methods.EditDeviceResponse, deviceDto);
this.SendToServer(Methods.EditDevice, deviceDto);
if (new int[] { 0x0002, 0x0009, 0x0081, 0x0202, 0x0220, 0x0051 }.Contains(deviceId))
{
this.SendToServer(Methods.EditDataResponse, device.Data.FirstOrDefault(o => o.Key == Keys.State).To<EditDataModel>());
this.SendDataToServer(device.Data.FirstOrDefault(o => o.Key == Keys.State));
}
this.UpdateStatus(device);
}
@ -665,7 +665,7 @@ namespace IoTNode.DeviceServices.FBee
deviceRepo.SaveChanges();
foreach (var item in device.Data.Where(o => !o.Hidden))
{
this.SendToServer(Methods.EditDataResponse, item.To<EditDataModel>());
this.SendDataToServer(item);
}
}
else
@ -713,7 +713,7 @@ namespace IoTNode.DeviceServices.FBee
{
device.AddorUpdateData(device.CreateData(Keys.Brightness, ms.ReadByte(), DeviceDataType.Int, "亮度"));
deviceRepo.SaveChanges();
this.SendToServer(Methods.EditDataResponse, device.Data.FirstOrDefault(o => o.Key == Keys.Brightness).To<EditDataModel>());
this.SendDataToServer(device.Data.FirstOrDefault(o => o.Key == Keys.Brightness));
}
else
{
@ -758,7 +758,7 @@ namespace IoTNode.DeviceServices.FBee
{
device.AddorUpdateData(device.CreateData(Keys.Hue, ms.ReadByte(), DeviceDataType.Int, "色调"));
deviceRepo.SaveChanges();
this.SendToServer(Methods.EditDataResponse, device.Data.FirstOrDefault(o => o.Key == Keys.Hue).To<EditDataModel>());
this.SendDataToServer(device.Data.FirstOrDefault(o => o.Key == Keys.Hue));
}
else
{
@ -789,7 +789,7 @@ namespace IoTNode.DeviceServices.FBee
{
device.AddorUpdateData(device.CreateData(Keys.Saturation, ms.ReadByte(), DeviceDataType.Int, "饱和度"));
deviceRepo.SaveChanges();
this.SendToServer(Methods.EditDataResponse, device.Data.FirstOrDefault(o => o.Key == Keys.Saturation).To<EditDataModel>());
this.SendDataToServer(device.Data.FirstOrDefault(o => o.Key == Keys.Saturation));
}
else
{
@ -898,8 +898,8 @@ namespace IoTNode.DeviceServices.FBee
gateway.AddorUpdateData(gateway.CreateData(Keys.Version, version, DeviceDataType.String, "版本"));
gateway.AddorUpdateData(gateway.CreateData(Keys.DeviceCount, ms.ReadByte(), DeviceDataType.Int, "设备数量"));
gatewayRepo.SaveChanges();
this.SendToServer(Methods.EditDataResponse, gateway.Data.FirstOrDefault(o => o.Key == Keys.Version).To<EditDataModel>());
this.SendToServer(Methods.EditDataResponse, gateway.Data.FirstOrDefault(o => o.Key == Keys.DeviceCount).To<EditDataModel>());
this.SendDataToServer(gateway.Data.FirstOrDefault(o => o.Key == Keys.Version));
this.SendDataToServer(gateway.Data.FirstOrDefault(o => o.Key == Keys.DeviceCount));
ms.ReadByte();
ms.ReadByte();
ms.ReadByte();
@ -951,7 +951,7 @@ namespace IoTNode.DeviceServices.FBee
{
device.AddorUpdateData(device.CreateData(Keys.ColorTemperature, ms.ReadInt(), DeviceDataType.Int, "色温"));
deviceRepo.SaveChanges();
this.SendToServer(Methods.EditDataResponse, device.Data.FirstOrDefault(o => o.Key == Keys.ColorTemperature).To<EditDataModel>());
this.SendDataToServer(device.Data.FirstOrDefault(o => o.Key == Keys.ColorTemperature));
}
else
{
@ -1291,7 +1291,7 @@ namespace IoTNode.DeviceServices.FBee
deviceRepo.SaveChanges();
foreach (var item in device.Data.Where(o => !o.Hidden))
{
this.SendToServer(Methods.EditDataResponse, item.To<EditDataModel>());
this.SendDataToServer(item);
}
}
}

@ -198,10 +198,10 @@ namespace IoTNode.DeviceServices.Onvif
}
deviceRepo.SaveChanges();
var deviceDto = device.To<EditDeviceModel>();
this.SendToServer(Methods.EditDeviceResponse, deviceDto);
this.SendToServer(Methods.EditDevice, deviceDto);
foreach (var item in device.Data.Where(o => !o.Hidden))
{
this.SendToServer(Methods.EditDataResponse, item.To<EditDataModel>());
this.SendDataToServer(item);
}
}
}

@ -101,7 +101,7 @@ namespace IoTNode.DeviceServices.SerialPort
foreach (var device in devices)
{
var deviceDto = device.To<EditDeviceModel>();
this.SendToServer(Methods.EditDeviceResponse, deviceDto);
this.SendToServer(Methods.EditDevice, deviceDto);
}
}
}

Loading…
Cancel
Save