From 711936bc623010d01e7f7fc3e1c2a03199e50e5f Mon Sep 17 00:00:00 2001
From: wanggang <76527413@qq.com>
Date: Mon, 22 Feb 2021 10:53:48 +0800
Subject: [PATCH] update
Former-commit-id: 5092feef0f84d28b9117c2dd56fe12bb66d2d7eb
Former-commit-id: 6d4fc4d9fbd14661966470118737f9a6acc3890e
---
...教师信息管理V1.0测试申请单.docx | Bin 38649 -> 38478 bytes
.../Views/Shared/_Layout.cshtml | 2 +-
.../Controllers/IoTDataController.cs | 5 ++++-
.../Controllers/IoTProductController.cs | 2 +-
.../DeviceServices/FBee/FBeeService.cs | 13 +++++++++++--
projects/IoTNode/Views/Shared/_Menu.cshtml | 1 -
projects/Platform/Views/Shared/_Layout.cshtml | 1 -
projects/Platform/wwwroot/js/main.js | 1 +
8 files changed, 18 insertions(+), 7 deletions(-)
diff --git a/labs/Teacher/docs/西宁市城中区教师信息管理V1.0测试申请单.docx b/labs/Teacher/docs/西宁市城中区教师信息管理V1.0测试申请单.docx
index 2b196fc0f2cca860be7885025f601829153882f0..d033dcd4a23661fac3f46936cb141924974eb390 100644
GIT binary patch
delta 15810
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
delta 15953
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
XYtS*k^<-YqULbY~Gt_Xxe}MlBI8k!2
diff --git a/projects/Infrastructure/Views/Shared/_Layout.cshtml b/projects/Infrastructure/Views/Shared/_Layout.cshtml
index 165f4102..350935c8 100644
--- a/projects/Infrastructure/Views/Shared/_Layout.cshtml
+++ b/projects/Infrastructure/Views/Shared/_Layout.cshtml
@@ -14,6 +14,7 @@
+
@@ -110,7 +111,6 @@
diff --git a/projects/IoTNode/Areas/IoTCenter/Controllers/IoTDataController.cs b/projects/IoTNode/Areas/IoTCenter/Controllers/IoTDataController.cs
index 7c645e2c..b7187283 100644
--- a/projects/IoTNode/Areas/IoTCenter/Controllers/IoTDataController.cs
+++ b/projects/IoTNode/Areas/IoTCenter/Controllers/IoTDataController.cs
@@ -73,7 +73,10 @@ namespace IoT.Shared.Areas.IoTCenter.Controlls
public override void ToEditModel(IoTData entity, EditIoTDataModel model)
{
- model.IoTGatewayId = entity?.IoTDevice?.IoTGatewayId;
+ if(entity!=null)
+ {
+ model.IoTGatewayId = entity?.IoTDevice?.IoTGatewayId;
+ }
ViewData.SelectList(o => model.IoTProductId, () => this._ajax.GetIoTProduct(model.IoTProductId).SelectList());
ViewData.SelectList(o => model.IoTGatewayId, () => this._ajax.GetIoTGateway(model.IoTGatewayId).SelectList());
if (model.IoTGatewayId.HasValue)
diff --git a/projects/IoTNode/Areas/IoTCenter/Controllers/IoTProductController.cs b/projects/IoTNode/Areas/IoTCenter/Controllers/IoTProductController.cs
index e9cdd483..772d3e96 100644
--- a/projects/IoTNode/Areas/IoTCenter/Controllers/IoTProductController.cs
+++ b/projects/IoTNode/Areas/IoTCenter/Controllers/IoTProductController.cs
@@ -23,7 +23,7 @@ namespace IoT.Shared.Areas.IoTCenter.Controlls
public override IQueryable Query(PagedListModel model, IQueryable query)
{
- return base.Query(model, query)
+ return query
.WhereIf(!string.IsNullOrEmpty(model.Query.Name), o => o.Name.Contains(model.Query.Name))
.WhereIf(!string.IsNullOrEmpty(model.Query.Number), o => o.Number.Contains(model.Query.Number))
.WhereIf(!string.IsNullOrEmpty(model.Query.Path), o => o.Path.Contains(model.Query.Path))
diff --git a/projects/IoTNode/DeviceServices/FBee/FBeeService.cs b/projects/IoTNode/DeviceServices/FBee/FBeeService.cs
index a2e4e659..57935b8e 100644
--- a/projects/IoTNode/DeviceServices/FBee/FBeeService.cs
+++ b/projects/IoTNode/DeviceServices/FBee/FBeeService.cs
@@ -575,8 +575,17 @@ namespace IoTNode.DeviceServices.FBee
tempBytes.AddRange(props[0x00]);
tempBytes.Add(0x00);
tempBytes.Add(0x00);
- var electricity = BitConverter.ToInt64(tempBytes.ToArray()) / 1000f;
- this.UpdateIoTData(device.Id, DataKeys.Electricity, electricity);
+ if (tempBytes.Count == 8)
+ {
+ var multiplier = this.GetIoTDataValue(device.Id, DataKeys.ElectricityMultiplier);
+ var divisor = this.GetIoTDataValue(device.Id, DataKeys.ElectricityDivisor);
+ if (!string.IsNullOrEmpty(multiplier) && !string.IsNullOrEmpty(divisor))
+ {
+ var electricity = BitConverter.ToInt64(tempBytes.ToArray());
+ var value = electricity * Convert.ToInt16(multiplier) / Convert.ToSingle(divisor);
+ this.UpdateIoTData(device.Id, DataKeys.Electricity, value);
+ }
+ }
}
}
else if (clusterId == ClusterId.doorlock)
diff --git a/projects/IoTNode/Views/Shared/_Menu.cshtml b/projects/IoTNode/Views/Shared/_Menu.cshtml
index ab4de737..e056d201 100644
--- a/projects/IoTNode/Views/Shared/_Menu.cshtml
+++ b/projects/IoTNode/Views/Shared/_Menu.cshtml
@@ -1,5 +1,4 @@