Former-commit-id: 77ce8b4ce13d586723b8536300b3f1878367dae1
TangShanKaiPing
wanggang 6 years ago
parent 5b12174199
commit 5ac7a2f16a

@ -30,7 +30,6 @@ namespace Application.Domain.Entities
public string Sn { get; set; } public string Sn { get; set; }
public string Name { get; set; } public string Name { get; set; }
public string Number { get; set; }
public string Icon { get; set; } public string Icon { get; set; }
public int CategoryNumber { get; set; } public int CategoryNumber { get; set; }
public string CategoryName { get; set; } public string CategoryName { get; set; }

@ -96,10 +96,16 @@ namespace FBeeService
this.DeviceOnOff(id, 0); this.DeviceOnOff(id, 0);
} }
private void DeviceOnOff(string id, byte status) private void DeviceOnOff(string ieee, byte status)
{ {
var sn = id.Split('-')[0]; using (var scope = _applicationServices.CreateScope())
var address = id.Split('-')[1]; {
var repo = scope.ServiceProvider.GetService<IRepository<FBeeDevice>>();
var device = repo.ReadOnlyTable().FirstOrDefault(o => o.Online != 0 && o.IEEE == ieee);
if (device != null)
{
var sn = device.Sn;
var address = device.Address;
var list = new List<byte>() { 0x16, 0x00 }; var list = new List<byte>() { 0x16, 0x00 };
list.AddRange(sn.HexToBytes().Reverse()); list.AddRange(sn.HexToBytes().Reverse());
list.Add(0xfe); list.Add(0xfe);
@ -113,6 +119,8 @@ namespace FBeeService
list.Add(status); list.Add(status);
this.Clients[sn].Client.GetStream().Write(list.ToArray()); this.Clients[sn].Client.GetStream().Write(list.ToArray());
} }
}
}
public void Switch2AllOn(string id) public void Switch2AllOn(string id)
{ {
@ -383,7 +391,6 @@ namespace FBeeService
device = new FBeeDevice device = new FBeeDevice
{ {
Sn = sn, Sn = sn,
Number = $"{sn}-{address}",
Name = deviceType.Name, Name = deviceType.Name,
Icon = deviceType.Icon, Icon = deviceType.Icon,
CategoryNumber = deviceType.RawDeviceId, CategoryNumber = deviceType.RawDeviceId,

@ -32,7 +32,7 @@ namespace FBeeService
{ {
base.OnModelCreating(modelBuilder); base.OnModelCreating(modelBuilder);
modelBuilder.Entity<Gateway>().HasIndex(o => o.Sn).IsUnique(); modelBuilder.Entity<Gateway>().HasIndex(o => o.Sn).IsUnique();
modelBuilder.Entity<FBeeDevice>().HasIndex(o => new { o.Sn, o.Number }).IsUnique(); modelBuilder.Entity<FBeeDevice>().HasIndex(o => new { o.Sn, o.IEEE }).IsUnique();
} }
public override void Seed(DbContext dbContext, IServiceProvider serviceProvider, IConfiguration configuration) public override void Seed(DbContext dbContext, IServiceProvider serviceProvider, IConfiguration configuration)

@ -1,7 +1,7 @@
@model List<FBeeDevice> @model List<FBeeDevice>
<table> <table>
<tr> <tr>
<th>编号</th> <th>IEEE</th>
<th>Sn</th> <th>Sn</th>
<th>地址</th> <th>地址</th>
<th>开关</th> <th>开关</th>
@ -10,7 +10,7 @@
@foreach (var item in Model) @foreach (var item in Model)
{ {
<tr> <tr>
<td>@item.Number</td> <td>@item.IEEE</td>
<td>@item.Sn</td> <td>@item.Sn</td>
<td>@item.Address</td> <td>@item.Address</td>
<td>@item.Power</td> <td>@item.Power</td>

Loading…
Cancel
Save