From e0b055c612a66a9b0f86540b75663cc4d25362f0 Mon Sep 17 00:00:00 2001
From: cli <377476583@qq.com>
Date: Fri, 14 Mar 2025 14:28:04 +0800
Subject: [PATCH] =?UTF-8?q?=E6=9A=82=E5=AD=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../Subscribers/ISubscriberAppService.cs | 2 +-
.../Workers/IScheduledMeterReadingService.cs | 43 +---
.../Consumers/IssuedConsumer.cs | 4 +-
.../Consumers/IssuedFaultConsumer.cs | 2 +-
.../Consumers/ReceivedConsumer.cs | 2 +-
.../Consumers/ReceivedFaultConsumer.cs | 2 +-
.../Consumers/ReceivedHeartbeatConsumer.cs | 2 +-
.../Consumers/ReceivedLoginConsumer.cs | 2 +-
.../EnergySystem/EnergySystemAppService.cs | 4 +-
.../Plugins/TcpMonitor.cs | 4 +-
.../Samples/SampleAppService.cs | 2 +-
.../Subscribers/SubscriberAppService.cs | 4 +-
.../BasicScheduledMeterReadingService.cs | 220 +++++-------------
...nergySystemScheduledMeterReadingService.cs | 3 +-
.../Workers/WorkerSubscriberAppService.cs | 2 +-
.../TableViews/V_FocusAmmeter.cs | 13 ++
.../{ => IotSystems}/Devices/Device.cs | 2 +-
.../MessageIssueds/MessageIssued.cs | 2 +-
.../MessageReceiveds/IReceived.cs | 2 +-
.../MessageReceiveds/MessageReceived.cs | 2 +-
.../PrepayModel/Vi_BaseAmmeterInfo.cs | 129 ++++++++++
.../Protocols/ProtocolInfo.cs | 2 +-
.../Records/ConrOnlineRecord.cs | 2 +-
.../{ => IotSystems}/Records/CsqRecord.cs | 2 +-
.../{ => IotSystems}/Records/FocusRecord.cs | 2 +-
.../Watermeter/WatermeterInfo.cs | 2 +-
.../JiShe.CollectBus.Domain.csproj | 10 +-
.../PrepayModel/Vi_BaseAmmeterInfo.cs | 129 ----------
.../CollectBusHostModule.Configure.cs | 2 +-
.../MongoDB/CollectBusMongoDbContext.cs | 6 +-
.../Abstracts/BaseProtocolPlugin.cs | 4 +-
.../Interfaces/IProtocolPlugin.cs | 4 +-
.../StandardProtocolPlugin.cs | 4 +-
33 files changed, 247 insertions(+), 370 deletions(-)
create mode 100644 src/JiShe.CollectBus.Domain/EnergySystems/TableViews/V_FocusAmmeter.cs
rename src/JiShe.CollectBus.Domain/{ => IotSystems}/Devices/Device.cs (97%)
rename src/JiShe.CollectBus.Domain/{ => IotSystems}/MessageIssueds/MessageIssued.cs (89%)
rename src/JiShe.CollectBus.Domain/{ => IotSystems}/MessageReceiveds/IReceived.cs (60%)
rename src/JiShe.CollectBus.Domain/{ => IotSystems}/MessageReceiveds/MessageReceived.cs (96%)
create mode 100644 src/JiShe.CollectBus.Domain/IotSystems/PrepayModel/Vi_BaseAmmeterInfo.cs
rename src/JiShe.CollectBus.Domain/{ => IotSystems}/Protocols/ProtocolInfo.cs (96%)
rename src/JiShe.CollectBus.Domain/{ => IotSystems}/Records/ConrOnlineRecord.cs (95%)
rename src/JiShe.CollectBus.Domain/{ => IotSystems}/Records/CsqRecord.cs (95%)
rename src/JiShe.CollectBus.Domain/{ => IotSystems}/Records/FocusRecord.cs (97%)
rename src/JiShe.CollectBus.Domain/{ => IotSystems}/Watermeter/WatermeterInfo.cs (98%)
delete mode 100644 src/JiShe.CollectBus.Domain/PrepayModel/Vi_BaseAmmeterInfo.cs
diff --git a/src/JiShe.CollectBus.Application.Contracts/Subscribers/ISubscriberAppService.cs b/src/JiShe.CollectBus.Application.Contracts/Subscribers/ISubscriberAppService.cs
index bf7dec1..22c79e6 100644
--- a/src/JiShe.CollectBus.Application.Contracts/Subscribers/ISubscriberAppService.cs
+++ b/src/JiShe.CollectBus.Application.Contracts/Subscribers/ISubscriberAppService.cs
@@ -1,6 +1,6 @@
using System.Threading.Tasks;
using JiShe.CollectBus.Common.Models;
-using JiShe.CollectBus.MessageReceiveds;
+using JiShe.CollectBus.IotSystems.MessageReceiveds;
using Volo.Abp.Application.Services;
namespace JiShe.CollectBus.Subscribers
diff --git a/src/JiShe.CollectBus.Application.Contracts/Workers/IScheduledMeterReadingService.cs b/src/JiShe.CollectBus.Application.Contracts/Workers/IScheduledMeterReadingService.cs
index bd1a090..fa857d3 100644
--- a/src/JiShe.CollectBus.Application.Contracts/Workers/IScheduledMeterReadingService.cs
+++ b/src/JiShe.CollectBus.Application.Contracts/Workers/IScheduledMeterReadingService.cs
@@ -1,5 +1,5 @@
using JiShe.CollectBus.Ammeters;
-using JiShe.CollectBus.Watermeter;
+using JiShe.CollectBus.IotSystems.Watermeter;
using System;
using System.Collections.Generic;
using System.Linq;
@@ -15,15 +15,13 @@ namespace JiShe.CollectBus.Workers
///
public interface IScheduledMeterReadingService : IApplicationService
{
-
- #region 电表采集处理
///
/// 获取电表信息
///
/// 采集端Code
///
Task> GetAmmeterInfoList(string gatherCode = "");
-
+
///
/// 初始化电表缓存数据
///
@@ -31,28 +29,6 @@ namespace JiShe.CollectBus.Workers
///
Task InitAmmeterCacheData(string gatherCode = "");
- ///
- /// 1分钟采集电表数据
- ///
- ///
- Task AmmeterScheduledMeterOneMinuteReading();
-
- ///
- /// 5分钟采集电表数据
- ///
- ///
- Task AmmeterScheduledMeterFiveMinuteReading();
-
- ///
- /// 15分钟采集电表数据
- ///
- ///
- Task AmmeterScheduledMeterFifteenMinuteReading();
-
- #endregion
-
-
- #region 水表采集处理
///
/// 获取水表信息
///
@@ -68,24 +44,21 @@ namespace JiShe.CollectBus.Workers
Task InitWatermeterCacheData(string gatherCode = "");
///
- /// 1分钟采集水表数据
+ /// 1分钟采集电表数据
///
///
- Task WatermeterScheduledMeterOneMinuteReading();
+ Task ScheduledMeterOneMinuteReading();
///
- /// 5分钟采集水表数据
+ /// 5分钟采集电表数据
///
///
- Task WatermeterScheduledMeterFiveMinuteReading();
+ Task ScheduledMeterFiveMinuteReading();
///
- /// 15分钟采集水表数据
+ /// 15分钟采集电表数据
///
///
- Task WatermeterScheduledMeterFifteenMinuteReading();
- #endregion
-
-
+ Task ScheduledMeterFifteenMinuteReading();
}
}
diff --git a/src/JiShe.CollectBus.Application/Consumers/IssuedConsumer.cs b/src/JiShe.CollectBus.Application/Consumers/IssuedConsumer.cs
index 710a268..11c27dd 100644
--- a/src/JiShe.CollectBus.Application/Consumers/IssuedConsumer.cs
+++ b/src/JiShe.CollectBus.Application/Consumers/IssuedConsumer.cs
@@ -1,8 +1,8 @@
using System;
using System.Threading.Tasks;
using JiShe.CollectBus.Common.Enums;
-using JiShe.CollectBus.MessageIssueds;
-using JiShe.CollectBus.MessageReceiveds;
+using JiShe.CollectBus.IotSystems.MessageIssueds;
+using JiShe.CollectBus.IotSystems.MessageReceiveds;
using MassTransit;
using Microsoft.Extensions.Logging;
using TouchSocket.Sockets;
diff --git a/src/JiShe.CollectBus.Application/Consumers/IssuedFaultConsumer.cs b/src/JiShe.CollectBus.Application/Consumers/IssuedFaultConsumer.cs
index 903beac..9bc9983 100644
--- a/src/JiShe.CollectBus.Application/Consumers/IssuedFaultConsumer.cs
+++ b/src/JiShe.CollectBus.Application/Consumers/IssuedFaultConsumer.cs
@@ -1,6 +1,6 @@
using System;
using System.Threading.Tasks;
-using JiShe.CollectBus.MessageIssueds;
+using JiShe.CollectBus.IotSystems.MessageIssueds;
using MassTransit;
namespace JiShe.CollectBus.Consumers
diff --git a/src/JiShe.CollectBus.Application/Consumers/ReceivedConsumer.cs b/src/JiShe.CollectBus.Application/Consumers/ReceivedConsumer.cs
index 3dc22e3..4e00864 100644
--- a/src/JiShe.CollectBus.Application/Consumers/ReceivedConsumer.cs
+++ b/src/JiShe.CollectBus.Application/Consumers/ReceivedConsumer.cs
@@ -1,7 +1,7 @@
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
-using JiShe.CollectBus.MessageReceiveds;
+using JiShe.CollectBus.IotSystems.MessageReceiveds;
using JiShe.CollectBus.Protocol.Contracts.Interfaces;
using MassTransit;
using Microsoft.Extensions.DependencyInjection;
diff --git a/src/JiShe.CollectBus.Application/Consumers/ReceivedFaultConsumer.cs b/src/JiShe.CollectBus.Application/Consumers/ReceivedFaultConsumer.cs
index e569769..60bbdfc 100644
--- a/src/JiShe.CollectBus.Application/Consumers/ReceivedFaultConsumer.cs
+++ b/src/JiShe.CollectBus.Application/Consumers/ReceivedFaultConsumer.cs
@@ -1,6 +1,6 @@
using System;
using System.Threading.Tasks;
-using JiShe.CollectBus.MessageReceiveds;
+using JiShe.CollectBus.IotSystems.MessageReceiveds;
using MassTransit;
namespace JiShe.CollectBus.Consumers
diff --git a/src/JiShe.CollectBus.Application/Consumers/ReceivedHeartbeatConsumer.cs b/src/JiShe.CollectBus.Application/Consumers/ReceivedHeartbeatConsumer.cs
index ce5233c..c2317c6 100644
--- a/src/JiShe.CollectBus.Application/Consumers/ReceivedHeartbeatConsumer.cs
+++ b/src/JiShe.CollectBus.Application/Consumers/ReceivedHeartbeatConsumer.cs
@@ -4,7 +4,7 @@ using System.Linq;
using System.Text;
using System.Threading.Tasks;
using JiShe.CollectBus.Common.Models;
-using JiShe.CollectBus.MessageReceiveds;
+using JiShe.CollectBus.IotSystems.MessageReceiveds;
using JiShe.CollectBus.Protocol.Contracts.Interfaces;
using MassTransit;
using Microsoft.Extensions.DependencyInjection;
diff --git a/src/JiShe.CollectBus.Application/Consumers/ReceivedLoginConsumer.cs b/src/JiShe.CollectBus.Application/Consumers/ReceivedLoginConsumer.cs
index f17fe8e..ce67886 100644
--- a/src/JiShe.CollectBus.Application/Consumers/ReceivedLoginConsumer.cs
+++ b/src/JiShe.CollectBus.Application/Consumers/ReceivedLoginConsumer.cs
@@ -4,7 +4,7 @@ using System.Linq;
using System.Text;
using System.Threading.Tasks;
using JiShe.CollectBus.Common.Models;
-using JiShe.CollectBus.MessageReceiveds;
+using JiShe.CollectBus.IotSystems.MessageReceiveds;
using JiShe.CollectBus.Protocol.Contracts.Interfaces;
using MassTransit;
using Microsoft.Extensions.DependencyInjection;
diff --git a/src/JiShe.CollectBus.Application/EnergySystem/EnergySystemAppService.cs b/src/JiShe.CollectBus.Application/EnergySystem/EnergySystemAppService.cs
index 9c4b653..07db264 100644
--- a/src/JiShe.CollectBus.Application/EnergySystem/EnergySystemAppService.cs
+++ b/src/JiShe.CollectBus.Application/EnergySystem/EnergySystemAppService.cs
@@ -12,9 +12,9 @@ using JiShe.CollectBus.Common.Extensions;
using JiShe.CollectBus.Common.Models;
using JiShe.CollectBus.EnergySystem.Dto;
using JiShe.CollectBus.FreeSql;
-using JiShe.CollectBus.PrepayModel;
+using JiShe.CollectBus.IotSystems.PrepayModel;
+using JiShe.CollectBus.IotSystems.Records;
using JiShe.CollectBus.Protocol.Contracts;
-using JiShe.CollectBus.Records;
using MassTransit;
using Microsoft.AspNetCore.Mvc;
using Newtonsoft.Json;
diff --git a/src/JiShe.CollectBus.Application/Plugins/TcpMonitor.cs b/src/JiShe.CollectBus.Application/Plugins/TcpMonitor.cs
index d5c95c6..8ff138a 100644
--- a/src/JiShe.CollectBus.Application/Plugins/TcpMonitor.cs
+++ b/src/JiShe.CollectBus.Application/Plugins/TcpMonitor.cs
@@ -4,10 +4,10 @@ using DotNetCore.CAP;
using JiShe.CollectBus.Ammeters;
using JiShe.CollectBus.Common.Enums;
using JiShe.CollectBus.Common.Extensions;
-using JiShe.CollectBus.Devices;
using JiShe.CollectBus.Enums;
using JiShe.CollectBus.Interceptors;
-using JiShe.CollectBus.MessageReceiveds;
+using JiShe.CollectBus.IotSystems.Devices;
+using JiShe.CollectBus.IotSystems.MessageReceiveds;
using JiShe.CollectBus.Protocol.Contracts;
using MassTransit;
using Microsoft.Extensions.Logging;
diff --git a/src/JiShe.CollectBus.Application/Samples/SampleAppService.cs b/src/JiShe.CollectBus.Application/Samples/SampleAppService.cs
index 5c0dae8..6235a55 100644
--- a/src/JiShe.CollectBus.Application/Samples/SampleAppService.cs
+++ b/src/JiShe.CollectBus.Application/Samples/SampleAppService.cs
@@ -1,7 +1,7 @@
using System.Collections.Generic;
using System.Threading.Tasks;
using JiShe.CollectBus.FreeSql;
-using JiShe.CollectBus.PrepayModel;
+using JiShe.CollectBus.IotSystems.PrepayModel;
using Microsoft.AspNetCore.Authorization;
namespace JiShe.CollectBus.Samples;
diff --git a/src/JiShe.CollectBus.Application/Subscribers/SubscriberAppService.cs b/src/JiShe.CollectBus.Application/Subscribers/SubscriberAppService.cs
index d5cc55e..3c47b83 100644
--- a/src/JiShe.CollectBus.Application/Subscribers/SubscriberAppService.cs
+++ b/src/JiShe.CollectBus.Application/Subscribers/SubscriberAppService.cs
@@ -3,8 +3,8 @@ using System.Threading.Tasks;
using DotNetCore.CAP;
using JiShe.CollectBus.Common.Enums;
using JiShe.CollectBus.Common.Models;
-using JiShe.CollectBus.Devices;
-using JiShe.CollectBus.MessageReceiveds;
+using JiShe.CollectBus.IotSystems.Devices;
+using JiShe.CollectBus.IotSystems.MessageReceiveds;
using JiShe.CollectBus.Protocol.Contracts;
using JiShe.CollectBus.Protocol.Contracts.Interfaces;
using Microsoft.Extensions.DependencyInjection;
diff --git a/src/JiShe.CollectBus.Application/Workers/BasicScheduledMeterReadingService.cs b/src/JiShe.CollectBus.Application/Workers/BasicScheduledMeterReadingService.cs
index 680354f..cbd5d9e 100644
--- a/src/JiShe.CollectBus.Application/Workers/BasicScheduledMeterReadingService.cs
+++ b/src/JiShe.CollectBus.Application/Workers/BasicScheduledMeterReadingService.cs
@@ -1,9 +1,7 @@
-using DotNetCore.CAP;
-using FreeRedis;
+using FreeRedis;
using JiShe.CollectBus.Ammeters;
using JiShe.CollectBus.Common.Consts;
-using JiShe.CollectBus.Common.Helpers;
-using JiShe.CollectBus.Watermeter;
+using JiShe.CollectBus.IotSystems.Watermeter;
using Microsoft.Extensions.Logging;
using System;
using System.Collections.Generic;
@@ -21,10 +19,8 @@ namespace JiShe.CollectBus.Workers
public abstract class BasicScheduledMeterReadingService : CollectBusAppService, IScheduledMeterReadingService
{
private readonly ILogger _logger;
- private readonly ICapPublisher _capBus;
- public BasicScheduledMeterReadingService(ILogger logger, ICapPublisher capBus)
+ public BasicScheduledMeterReadingService(ILogger logger)
{
- _capBus = capBus;
_logger = logger;
}
@@ -94,21 +90,48 @@ namespace JiShe.CollectBus.Workers
//获取缓存中的电表信息
var redisKeyList = $"{string.Format(FreeRedisConst.CacheAmmeterInfoKey, SystemTypeConst.Energy, 1)}*";
var oneMinutekeyList = await FreeRedisProvider.FreeRedis.KeysAsync(redisKeyList);
- if (oneMinutekeyList == null || oneMinutekeyList.Length <= 0)
+ if (oneMinutekeyList == null || oneMinutekeyList.Length <=0)
{
- _logger.LogError($"{nameof(AmmeterScheduledMeterOneMinuteReading)} 1分钟采集电表数据处理时没有获取到缓存信息,-101");
- return;
- }
-
- // 解析结果(结果为嵌套数组)
- List meterInfos = await GetMeterCacheData(oneMinutekeyList);
- if (meterInfos == null || meterInfos.Count <= 0)
- {
- _logger.LogError($"{nameof(AmmeterScheduledMeterOneMinuteReading)} 1分钟采集电表数据处理时没有获取到缓存信息,-102");
+ _logger.LogError($"{nameof(WatermeterScheduledMeterOneMinuteReading)} 1分钟采集电表数据处理时没有获取到缓存信息,-102");
return;
}
- _logger.LogInformation($"{nameof(AmmeterScheduledMeterOneMinuteReading)} 1分钟采集电表数据处理完成");
+ //通过lua脚本一次性获取所有缓存内容
+ var luaScript = @"
+ local results = {}
+ for i, key in ipairs(KEYS) do
+ local data = redis.call('HGETALL', key)
+ results[i] = {key, data}
+ end
+ return results";
+ var oneMinuteAmmerterResult = FreeRedisProvider.FreeRedis.Eval(luaScript, oneMinutekeyList); // 传递 KEYS
+ if (oneMinuteAmmerterResult == null)
+ {
+ _logger.LogError($"{nameof(WatermeterScheduledMeterOneMinuteReading)} 1分钟采集电表数据处理时没有获取到缓存信息,-102");
+ return;
+ }
+
+ // 解析结果(结果为嵌套数组)
+ var parsedResults = new Dictionary>();
+ if (oneMinuteAmmerterResult is object[] arr)
+ {
+ foreach (object[] item in arr)
+ {
+ string key = (string)item[0];
+ object[] fieldsAndValues = (object[])item[1];
+
+ var dict = new Dictionary();
+ for (int i = 0; i < fieldsAndValues.Length; i += 2)
+ {
+ string field = (string)fieldsAndValues[i];
+ string value = (string)fieldsAndValues[i + 1];
+ dict[field] = value;
+ }
+ parsedResults[key] = dict;
+ }
+ }
+
+ _logger.LogInformation($"{nameof(WatermeterScheduledMeterOneMinuteReading)} 1分钟采集电表数据处理完成");
}
@@ -116,52 +139,18 @@ namespace JiShe.CollectBus.Workers
/// 5分钟采集电表数据
///
///
- public virtual async Task AmmeterScheduledMeterFiveMinuteReading()
+ public virtual Task AmmeterScheduledMeterFiveMinuteReading()
{
- //获取缓存中的电表信息
- var redisKeyList = $"{string.Format(FreeRedisConst.CacheAmmeterInfoKey, SystemTypeConst.Energy, 5)}*";
- var oneMinutekeyList = await FreeRedisProvider.FreeRedis.KeysAsync(redisKeyList);
- if (oneMinutekeyList == null || oneMinutekeyList.Length <= 0)
- {
- _logger.LogError($"{nameof(AmmeterScheduledMeterFiveMinuteReading)} 5分钟采集电表数据处理时没有获取到缓存信息,-101");
- return;
- }
-
- // 解析结果(结果为嵌套数组)
- List meterInfos = await GetMeterCacheData(oneMinutekeyList);
- if (meterInfos == null || meterInfos.Count <= 0)
- {
- _logger.LogError($"{nameof(AmmeterScheduledMeterFiveMinuteReading)} 5分钟采集电表数据处理时没有获取到缓存信息,-102");
- return;
- }
-
- _logger.LogInformation($"{nameof(AmmeterScheduledMeterFiveMinuteReading)} 5分钟采集电表数据处理完成");
+ throw new NotImplementedException($"{nameof(AmmeterScheduledMeterFiveMinuteReading)}请根据不同系统类型进行实现");
}
///
/// 15分钟采集电表数据
///
///
- public virtual async Task AmmeterScheduledMeterFifteenMinuteReading()
+ public virtual Task AmmeterScheduledMeterFifteenMinuteReading()
{
- //获取缓存中的电表信息
- var redisKeyList = $"{string.Format(FreeRedisConst.CacheAmmeterInfoKey, SystemTypeConst.Energy, 15)}*";
- var oneMinutekeyList = await FreeRedisProvider.FreeRedis.KeysAsync(redisKeyList);
- if (oneMinutekeyList == null || oneMinutekeyList.Length <= 0)
- {
- _logger.LogError($"{nameof(AmmeterScheduledMeterFifteenMinuteReading)} 15分钟采集电表数据处理时没有获取到缓存信息,-101");
- return;
- }
-
- // 解析结果(结果为嵌套数组)
- List meterInfos = await GetMeterCacheData(oneMinutekeyList);
- if (meterInfos == null || meterInfos.Count <= 0)
- {
- _logger.LogError($"{nameof(AmmeterScheduledMeterFifteenMinuteReading)} 15分钟采集电表数据处理时没有获取到缓存信息,-102");
- return;
- }
-
- _logger.LogInformation($"{nameof(AmmeterScheduledMeterFifteenMinuteReading)} 15分钟采集电表数据处理完成");
+ throw new NotImplementedException($"{nameof(AmmeterScheduledMeterFifteenMinuteReading)}请根据不同系统类型进行实现");
}
#endregion
@@ -222,22 +211,9 @@ namespace JiShe.CollectBus.Workers
///
public virtual async Task WatermeterScheduledMeterOneMinuteReading()
{
- //获取缓存中的水表信息
- var redisKeyList = $"{string.Format(FreeRedisConst.CacheWatermeterInfoKey, SystemTypeConst.Energy, 1)}*";
- var oneMinutekeyList = await FreeRedisProvider.FreeRedis.KeysAsync(redisKeyList);
- if (oneMinutekeyList == null || oneMinutekeyList.Length <= 0)
- {
- _logger.LogError($"{nameof(WatermeterScheduledMeterOneMinuteReading)} 1分钟采集水表据处理时没有获取到缓存信息,-101");
- return;
- }
-
- // 解析结果(结果为嵌套数组)
- List meterInfos = await GetMeterCacheData(oneMinutekeyList);
- if (meterInfos == null || meterInfos.Count <= 0)
- {
- _logger.LogError($"{nameof(WatermeterScheduledMeterOneMinuteReading)} 1分钟采集水表数据处理时没有获取到缓存信息,-102");
- return;
- }
+ //获取缓存中的电表信息
+ var redisKeyList = $"{string.Format(FreeRedisConst.CacheAmmeterInfoKey, SystemTypeConst.Energy, 1)}*";
+ var oneMinuteList = await FreeRedisProvider.FreeRedis.KeysAsync(redisKeyList);
_logger.LogInformation($"{nameof(WatermeterScheduledMeterOneMinuteReading)} 1分钟采集水表数据处理完成");
}
@@ -246,113 +222,21 @@ namespace JiShe.CollectBus.Workers
/// 5分钟采集电表数据
///
///
- public virtual async Task WatermeterScheduledMeterFiveMinuteReading()
+ public virtual Task WatermeterScheduledMeterFiveMinuteReading()
{
- //获取缓存中的水表信息
- var redisKeyList = $"{string.Format(FreeRedisConst.CacheWatermeterInfoKey, SystemTypeConst.Energy, 5)}*";
- var oneMinutekeyList = await FreeRedisProvider.FreeRedis.KeysAsync(redisKeyList);
- if (oneMinutekeyList == null || oneMinutekeyList.Length <= 0)
- {
- _logger.LogError($"{nameof(WatermeterScheduledMeterFiveMinuteReading)} 5分钟采集水表据处理时没有获取到缓存信息,-101");
- return;
- }
-
- // 解析结果(结果为嵌套数组)
- List meterInfos = await GetMeterCacheData(oneMinutekeyList);
- if (meterInfos == null || meterInfos.Count <= 0)
- {
- _logger.LogError($"{nameof(WatermeterScheduledMeterFiveMinuteReading)} 5分钟采集水表数据处理时没有获取到缓存信息,-102");
- return;
- }
-
- _logger.LogInformation($"{nameof(WatermeterScheduledMeterFiveMinuteReading)} 5分钟采集水表数据处理完成");
+ throw new NotImplementedException($"{nameof(WatermeterScheduledMeterFiveMinuteReading)}请根据不同系统类型进行实现");
}
///
/// 15分钟采集电表数据
///
///
- public virtual async Task WatermeterScheduledMeterFifteenMinuteReading()
+ public virtual Task WatermeterScheduledMeterFifteenMinuteReading()
{
- //获取缓存中的水表信息
- var redisKeyList = $"{string.Format(FreeRedisConst.CacheWatermeterInfoKey, SystemTypeConst.Energy, 15)}*";
- var oneMinutekeyList = await FreeRedisProvider.FreeRedis.KeysAsync(redisKeyList);
- if (oneMinutekeyList == null || oneMinutekeyList.Length <= 0)
- {
- _logger.LogError($"{nameof(WatermeterScheduledMeterFifteenMinuteReading)} 15分钟采集水表据处理时没有获取到缓存信息,-101");
- return;
- }
-
- // 解析结果(结果为嵌套数组)
- List meterInfos = await GetMeterCacheData(oneMinutekeyList);
- if (meterInfos == null || meterInfos.Count <= 0)
- {
- _logger.LogError($"{nameof(WatermeterScheduledMeterFifteenMinuteReading)} 15分钟采集水表数据处理时没有获取到缓存信息,-102");
- return;
- }
-
- _logger.LogInformation($"{nameof(WatermeterScheduledMeterFifteenMinuteReading)} 15分钟采集水表数据处理完成");
+ throw new NotImplementedException($"{nameof(WatermeterScheduledMeterFifteenMinuteReading)}请根据不同系统类型进行实现");
}
#endregion
-
- #region 公共处理方法
- ///
- /// 批量获取缓存的表计信息
- ///
- ///
- ///
- ///
- private async Task> GetMeterCacheData(string[] redisKeys)
- {
- //通过lua脚本一次性获取所有缓存内容
- var luaScript = @"
- local results = {}
- for i, key in ipairs(KEYS) do
- local data = redis.call('HGETALL', key)
- results[i] = {key, data}
- end
- return results";
- var oneMinuteAmmerterResult = await FreeRedisProvider.FreeRedis.EvalAsync(luaScript, redisKeys); //传递 KEYS
- if (oneMinuteAmmerterResult == null)
- {
- _logger.LogError($"{nameof(WatermeterScheduledMeterOneMinuteReading)} 1分钟采集电表数据处理时没有获取到缓存信息,-102");
- return null;
- }
-
- // 解析结果(结果为嵌套数组)
- List meterInfos = new List();
- if (oneMinuteAmmerterResult is object[] arr)
- {
- foreach (object[] item in arr)
- {
- string key = (string)item[0];
- object[] fieldsAndValues = (object[])item[1];
-
- for (int i = 0; i < fieldsAndValues.Length; i += 2)
- {
- string field = (string)fieldsAndValues[i];
- string valueStr = (string)fieldsAndValues[i + 1];
- T value = default;
- if (!string.IsNullOrWhiteSpace(valueStr))
- {
- value = valueStr.Deserialize()!;
- }
- if (value != null)
- {
- meterInfos.Add(value);
- }
- else
- {
- _logger.LogInformation($"{nameof(WatermeterScheduledMeterOneMinuteReading)} 1分钟采集电表{key}数据{field}处理异常");
- }
- }
- }
- }
-
- return meterInfos;
- }
- #endregion
}
}
diff --git a/src/JiShe.CollectBus.Application/Workers/EnergySystemScheduledMeterReadingService.cs b/src/JiShe.CollectBus.Application/Workers/EnergySystemScheduledMeterReadingService.cs
index 07e0264..09ea16e 100644
--- a/src/JiShe.CollectBus.Application/Workers/EnergySystemScheduledMeterReadingService.cs
+++ b/src/JiShe.CollectBus.Application/Workers/EnergySystemScheduledMeterReadingService.cs
@@ -2,10 +2,9 @@
using FreeRedis;
using JiShe.CollectBus.Ammeters;
using JiShe.CollectBus.Common.Consts;
-using JiShe.CollectBus.Devices;
using JiShe.CollectBus.FreeRedisProvider;
using JiShe.CollectBus.FreeSql;
-using JiShe.CollectBus.Watermeter;
+using JiShe.CollectBus.IotSystems.Watermeter;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Logging;
diff --git a/src/JiShe.CollectBus.Application/Workers/WorkerSubscriberAppService.cs b/src/JiShe.CollectBus.Application/Workers/WorkerSubscriberAppService.cs
index 552f964..275886e 100644
--- a/src/JiShe.CollectBus.Application/Workers/WorkerSubscriberAppService.cs
+++ b/src/JiShe.CollectBus.Application/Workers/WorkerSubscriberAppService.cs
@@ -4,7 +4,7 @@ using DeviceDetectorNET.Parser.Device;
using DotNetCore.CAP;
using JiShe.CollectBus.Common.Enums;
using JiShe.CollectBus.Common.Models;
-using JiShe.CollectBus.Devices;
+using JiShe.CollectBus.IotSystems.Devices;
using JiShe.CollectBus.MessageReceiveds;
using JiShe.CollectBus.Protocol.Contracts;
using JiShe.CollectBus.Protocol.Contracts.Interfaces;
diff --git a/src/JiShe.CollectBus.Domain/EnergySystems/TableViews/V_FocusAmmeter.cs b/src/JiShe.CollectBus.Domain/EnergySystems/TableViews/V_FocusAmmeter.cs
new file mode 100644
index 0000000..5ff30d6
--- /dev/null
+++ b/src/JiShe.CollectBus.Domain/EnergySystems/TableViews/V_FocusAmmeter.cs
@@ -0,0 +1,13 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace JiShe.CollectBus.EnergySystems.TableViews
+{
+ public class V_FocusAmmeter
+ {
+
+ }
+}
diff --git a/src/JiShe.CollectBus.Domain/Devices/Device.cs b/src/JiShe.CollectBus.Domain/IotSystems/Devices/Device.cs
similarity index 97%
rename from src/JiShe.CollectBus.Domain/Devices/Device.cs
rename to src/JiShe.CollectBus.Domain/IotSystems/Devices/Device.cs
index 4fb015a..c31dbc9 100644
--- a/src/JiShe.CollectBus.Domain/Devices/Device.cs
+++ b/src/JiShe.CollectBus.Domain/IotSystems/Devices/Device.cs
@@ -6,7 +6,7 @@ using System.Threading.Tasks;
using JiShe.CollectBus.Enums;
using Volo.Abp.Domain.Entities;
-namespace JiShe.CollectBus.Devices
+namespace JiShe.CollectBus.IotSystems.Devices
{
public class Device : AggregateRoot
{
diff --git a/src/JiShe.CollectBus.Domain/MessageIssueds/MessageIssued.cs b/src/JiShe.CollectBus.Domain/IotSystems/MessageIssueds/MessageIssued.cs
similarity index 89%
rename from src/JiShe.CollectBus.Domain/MessageIssueds/MessageIssued.cs
rename to src/JiShe.CollectBus.Domain/IotSystems/MessageIssueds/MessageIssued.cs
index 45f53b1..42d740c 100644
--- a/src/JiShe.CollectBus.Domain/MessageIssueds/MessageIssued.cs
+++ b/src/JiShe.CollectBus.Domain/IotSystems/MessageIssueds/MessageIssued.cs
@@ -5,7 +5,7 @@ using System.Text;
using System.Threading.Tasks;
using JiShe.CollectBus.Common.Enums;
-namespace JiShe.CollectBus.MessageIssueds
+namespace JiShe.CollectBus.IotSystems.MessageIssueds
{
public class MessageIssued
{
diff --git a/src/JiShe.CollectBus.Domain/MessageReceiveds/IReceived.cs b/src/JiShe.CollectBus.Domain/IotSystems/MessageReceiveds/IReceived.cs
similarity index 60%
rename from src/JiShe.CollectBus.Domain/MessageReceiveds/IReceived.cs
rename to src/JiShe.CollectBus.Domain/IotSystems/MessageReceiveds/IReceived.cs
index 40c6a68..1f4c97f 100644
--- a/src/JiShe.CollectBus.Domain/MessageReceiveds/IReceived.cs
+++ b/src/JiShe.CollectBus.Domain/IotSystems/MessageReceiveds/IReceived.cs
@@ -1,4 +1,4 @@
-namespace JiShe.CollectBus.MessageReceiveds
+namespace JiShe.CollectBus.IotSystems.MessageReceiveds
{
public interface IReceived
{
diff --git a/src/JiShe.CollectBus.Domain/MessageReceiveds/MessageReceived.cs b/src/JiShe.CollectBus.Domain/IotSystems/MessageReceiveds/MessageReceived.cs
similarity index 96%
rename from src/JiShe.CollectBus.Domain/MessageReceiveds/MessageReceived.cs
rename to src/JiShe.CollectBus.Domain/IotSystems/MessageReceiveds/MessageReceived.cs
index 4503873..4fad589 100644
--- a/src/JiShe.CollectBus.Domain/MessageReceiveds/MessageReceived.cs
+++ b/src/JiShe.CollectBus.Domain/IotSystems/MessageReceiveds/MessageReceived.cs
@@ -1,7 +1,7 @@
using System;
using Volo.Abp.Domain.Entities;
-namespace JiShe.CollectBus.MessageReceiveds
+namespace JiShe.CollectBus.IotSystems.MessageReceiveds
{
public class MessageReceived: AggregateRoot,IReceived
{
diff --git a/src/JiShe.CollectBus.Domain/IotSystems/PrepayModel/Vi_BaseAmmeterInfo.cs b/src/JiShe.CollectBus.Domain/IotSystems/PrepayModel/Vi_BaseAmmeterInfo.cs
new file mode 100644
index 0000000..b3ff165
--- /dev/null
+++ b/src/JiShe.CollectBus.Domain/IotSystems/PrepayModel/Vi_BaseAmmeterInfo.cs
@@ -0,0 +1,129 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace JiShe.CollectBus.IotSystems.PrepayModel
+{
+ ///
+ /// 预付费电表视图模型
+ ///
+ public partial class Vi_BaseAmmeterInfo
+ {
+ public int ID { get; set; }
+ public string BarCode { get; set; }
+ public string Address { get; set; }
+ public string BaudRate { get; set; }
+ public string Password { get; set; }
+ public string Explan { get; set; }
+ public DateTime AddTime { get; set; }
+ public bool State { get; set; }
+ public int TB_EquipmentTypeID { get; set; }
+ public int BaseID { get; set; }
+ public string Code { get; set; }
+ public int? MeterCode { get; set; }
+ public int? PortNumber { get; set; }
+ public int CT { get; set; }
+ public bool SoftTripsLock { get; set; }
+ public bool HardwareTripsLock { get; set; }
+ public bool ValveState { get; set; }
+ public bool ArchivesState { get; set; }
+ public int? SortNumber { get; set; }
+ public decimal Balance { get; set; }
+ public bool IsAlarm { get; set; }
+ public string sysExplan { get; set; }
+ public DateTime sysAddTime { get; set; }
+ public bool sysState { get; set; }
+ public int? TB_sysConcentratorID { get; set; }
+ public int? TB_sysChargingSchemeID { get; set; }
+ public int? TB_sysChargingSchemeID1 { get; set; }
+ public int TB_CustomerID { get; set; }
+ public int? TB_sysAlarmPlanID { get; set; }
+ public int? TB_sysCollectorID { get; set; }
+ public int? TB_sysRoomID { get; set; }
+ public string SpecialNoCode { get; set; }
+ public decimal? RatedCurrent { get; set; }
+ public int? TripDelayTime { get; set; }
+ public int? ClosingTime { get; set; }
+ public int? Remainder { get; set; }
+ public decimal? RatedPower { get; set; }
+ public bool? ParentAmmState { get; set; }
+ public int? ParentAmmID { get; set; }
+ public DateTime? LastUpdateTime { get; set; }
+ public bool? IsAuthentication { get; set; }
+ public bool? IsShowBalance { get; set; }
+ public string Number { get; set; }
+ public DateTime? LastAuthTime { get; set; }
+ public bool? IsAuthenticationFunction { get; set; }
+ public bool? IsShowBalanceFunction { get; set; }
+ public int TB_ProtocolID { get; set; }
+ public string Operator { get; set; }
+ public bool? IsTimingPowerSetting { get; set; }
+ public string CommSchemeCode { get; set; }
+ public string RoomAllName { get; set; }
+ public bool? IsLadderPrice { get; set; }
+ public int? LadderNum { get; set; }
+ public decimal? RoomBalance { get; set; }
+ public decimal? OtherBalance { get; set; }
+ public int? LastValveEventType { get; set; }
+ public decimal? ReadKwh4 { get; set; }
+ public decimal? ReadKwh3 { get; set; }
+ public decimal? ReadKwh2 { get; set; }
+ public decimal? ReadKwh1 { get; set; }
+ public decimal? ReadKwh { get; set; }
+ public DateTime? LastEventTime { get; set; }
+ public DateTime? LastReadTime { get; set; }
+ public string RoomNumber { get; set; }
+ public string EquipmentName { get; set; }
+ public int? EquipmentId { get; set; }
+ public bool? IsMalignantLoad { get; set; }
+ public string BrandName { get; set; }
+ public decimal? MalignantPower { get; set; }
+ public bool? MalignantPowerState { get; set; }
+ public bool? RatedPowerState { get; set; }
+ public string SolveStatus { get; set; }
+ public int? PowerDownStatus { get; set; }
+ public DateTime? SolveStatusTime { get; set; }
+ public decimal DisableKwh { get; set; }
+ public int? IsDeliver { get; set; }
+ public int? HandleUser { get; set; }
+ public string HandleUserName { get; set; }
+ public string Solutions { get; set; }
+ public decimal DisableKwh1 { get; set; }
+ public decimal DisableKwh2 { get; set; }
+ public decimal DisableKwh3 { get; set; }
+ public decimal DisableKwh4 { get; set; }
+ public bool DelaySwitchOff { get; set; }
+ public string MeterSolveStatus { get; set; }
+ public DateTime? DeliverTime { get; set; }
+ public bool EnableState { get; set; }
+ public string DxNbiotDeviceId { get; set; }
+ public int MeterStatus { get; set; }
+ public string AllowTripTime { get; set; }
+ public int? LastCostMilliSecond { get; set; }
+ public string DxNbiotIMEI { get; set; }
+ public decimal? ReadKwh5 { get; set; }
+ public decimal? ReadKwh6 { get; set; }
+ public decimal? ReadKwh7 { get; set; }
+ public decimal? ReadKwh8 { get; set; }
+ public decimal? DisableKwh5 { get; set; }
+ public decimal? DisableKwh6 { get; set; }
+ public decimal? DisableKwh7 { get; set; }
+ public decimal? DisableKwh8 { get; set; }
+ public bool? IsLadder { get; set; }
+ public int? TimeSpanSetNum { get; set; }
+ public string ExecutePeriod { get; set; }
+ public string FreqInterval { get; set; }
+ public int? Tb_sysUseValueAlarmID { get; set; }
+ public bool? IsMaxDemandKwh { get; set; }
+ public DateTime? OnLineTime { get; set; }
+ public int? OperatorId { get; set; }
+ public int PowerCT { get; set; }
+ public string CommunicationsModule { get; set; }
+ public bool? CanBlueTooth { get; set; }
+ public bool? CanRemote { get; set; }
+ public bool? IsDownPrice { get; set; }
+ public int? BuyCount { get; set; }
+ }
+}
diff --git a/src/JiShe.CollectBus.Domain/Protocols/ProtocolInfo.cs b/src/JiShe.CollectBus.Domain/IotSystems/Protocols/ProtocolInfo.cs
similarity index 96%
rename from src/JiShe.CollectBus.Domain/Protocols/ProtocolInfo.cs
rename to src/JiShe.CollectBus.Domain/IotSystems/Protocols/ProtocolInfo.cs
index 4ae8572..c193535 100644
--- a/src/JiShe.CollectBus.Domain/Protocols/ProtocolInfo.cs
+++ b/src/JiShe.CollectBus.Domain/IotSystems/Protocols/ProtocolInfo.cs
@@ -2,7 +2,7 @@
using JiShe.CollectBus.Interfaces;
using Volo.Abp.Domain.Entities;
-namespace JiShe.CollectBus.Protocols
+namespace JiShe.CollectBus.IotSystems.Protocols
{
public class ProtocolInfo : AggregateRoot, IProtocolInfo
{
diff --git a/src/JiShe.CollectBus.Domain/Records/ConrOnlineRecord.cs b/src/JiShe.CollectBus.Domain/IotSystems/Records/ConrOnlineRecord.cs
similarity index 95%
rename from src/JiShe.CollectBus.Domain/Records/ConrOnlineRecord.cs
rename to src/JiShe.CollectBus.Domain/IotSystems/Records/ConrOnlineRecord.cs
index e62525f..1c07b01 100644
--- a/src/JiShe.CollectBus.Domain/Records/ConrOnlineRecord.cs
+++ b/src/JiShe.CollectBus.Domain/IotSystems/Records/ConrOnlineRecord.cs
@@ -5,7 +5,7 @@ using System.Text;
using System.Threading.Tasks;
using Volo.Abp.Domain.Entities;
-namespace JiShe.CollectBus.Records
+namespace JiShe.CollectBus.IotSystems.Records
{
///
/// 集中器在线记录
diff --git a/src/JiShe.CollectBus.Domain/Records/CsqRecord.cs b/src/JiShe.CollectBus.Domain/IotSystems/Records/CsqRecord.cs
similarity index 95%
rename from src/JiShe.CollectBus.Domain/Records/CsqRecord.cs
rename to src/JiShe.CollectBus.Domain/IotSystems/Records/CsqRecord.cs
index e99235a..72b8638 100644
--- a/src/JiShe.CollectBus.Domain/Records/CsqRecord.cs
+++ b/src/JiShe.CollectBus.Domain/IotSystems/Records/CsqRecord.cs
@@ -5,7 +5,7 @@ using System.Text;
using System.Threading.Tasks;
using Volo.Abp.Domain.Entities;
-namespace JiShe.CollectBus.Records
+namespace JiShe.CollectBus.IotSystems.Records
{
///
/// 信号强度
diff --git a/src/JiShe.CollectBus.Domain/Records/FocusRecord.cs b/src/JiShe.CollectBus.Domain/IotSystems/Records/FocusRecord.cs
similarity index 97%
rename from src/JiShe.CollectBus.Domain/Records/FocusRecord.cs
rename to src/JiShe.CollectBus.Domain/IotSystems/Records/FocusRecord.cs
index 6436e33..d94e3e0 100644
--- a/src/JiShe.CollectBus.Domain/Records/FocusRecord.cs
+++ b/src/JiShe.CollectBus.Domain/IotSystems/Records/FocusRecord.cs
@@ -6,7 +6,7 @@ using System.Text;
using System.Threading.Tasks;
using Volo.Abp.Domain.Entities;
-namespace JiShe.CollectBus.Records
+namespace JiShe.CollectBus.IotSystems.Records
{
///
/// 集中器上下线、心跳记录
diff --git a/src/JiShe.CollectBus.Domain/Watermeter/WatermeterInfo.cs b/src/JiShe.CollectBus.Domain/IotSystems/Watermeter/WatermeterInfo.cs
similarity index 98%
rename from src/JiShe.CollectBus.Domain/Watermeter/WatermeterInfo.cs
rename to src/JiShe.CollectBus.Domain/IotSystems/Watermeter/WatermeterInfo.cs
index dd7e125..c735a9a 100644
--- a/src/JiShe.CollectBus.Domain/Watermeter/WatermeterInfo.cs
+++ b/src/JiShe.CollectBus.Domain/IotSystems/Watermeter/WatermeterInfo.cs
@@ -5,7 +5,7 @@ using System.Linq;
using System.Text;
using System.Threading.Tasks;
-namespace JiShe.CollectBus.Watermeter
+namespace JiShe.CollectBus.IotSystems.Watermeter
{
///
/// 水表信息
diff --git a/src/JiShe.CollectBus.Domain/JiShe.CollectBus.Domain.csproj b/src/JiShe.CollectBus.Domain/JiShe.CollectBus.Domain.csproj
index 7d4299b..035298c 100644
--- a/src/JiShe.CollectBus.Domain/JiShe.CollectBus.Domain.csproj
+++ b/src/JiShe.CollectBus.Domain/JiShe.CollectBus.Domain.csproj
@@ -8,6 +8,12 @@
JiShe.CollectBus
+
+
+
+
+
+
@@ -27,7 +33,9 @@
-
+
+
+
diff --git a/src/JiShe.CollectBus.Domain/PrepayModel/Vi_BaseAmmeterInfo.cs b/src/JiShe.CollectBus.Domain/PrepayModel/Vi_BaseAmmeterInfo.cs
deleted file mode 100644
index 2990b1e..0000000
--- a/src/JiShe.CollectBus.Domain/PrepayModel/Vi_BaseAmmeterInfo.cs
+++ /dev/null
@@ -1,129 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace JiShe.CollectBus.PrepayModel
-{
- ///
- /// 预付费电表视图模型
- ///
- public partial class Vi_BaseAmmeterInfo
- {
- public int ID { get; set; }
- public string BarCode { get; set; }
- public string Address { get; set; }
- public string BaudRate { get; set; }
- public string Password { get; set; }
- public string Explan { get; set; }
- public System.DateTime AddTime { get; set; }
- public bool State { get; set; }
- public int TB_EquipmentTypeID { get; set; }
- public int BaseID { get; set; }
- public string Code { get; set; }
- public Nullable MeterCode { get; set; }
- public Nullable PortNumber { get; set; }
- public int CT { get; set; }
- public bool SoftTripsLock { get; set; }
- public bool HardwareTripsLock { get; set; }
- public bool ValveState { get; set; }
- public bool ArchivesState { get; set; }
- public Nullable SortNumber { get; set; }
- public decimal Balance { get; set; }
- public bool IsAlarm { get; set; }
- public string sysExplan { get; set; }
- public System.DateTime sysAddTime { get; set; }
- public bool sysState { get; set; }
- public Nullable TB_sysConcentratorID { get; set; }
- public Nullable TB_sysChargingSchemeID { get; set; }
- public Nullable TB_sysChargingSchemeID1 { get; set; }
- public int TB_CustomerID { get; set; }
- public Nullable TB_sysAlarmPlanID { get; set; }
- public Nullable TB_sysCollectorID { get; set; }
- public Nullable TB_sysRoomID { get; set; }
- public string SpecialNoCode { get; set; }
- public Nullable RatedCurrent { get; set; }
- public Nullable TripDelayTime { get; set; }
- public Nullable ClosingTime { get; set; }
- public Nullable Remainder { get; set; }
- public Nullable RatedPower { get; set; }
- public Nullable ParentAmmState { get; set; }
- public Nullable ParentAmmID { get; set; }
- public Nullable LastUpdateTime { get; set; }
- public Nullable IsAuthentication { get; set; }
- public Nullable IsShowBalance { get; set; }
- public string Number { get; set; }
- public Nullable LastAuthTime { get; set; }
- public Nullable IsAuthenticationFunction { get; set; }
- public Nullable IsShowBalanceFunction { get; set; }
- public int TB_ProtocolID { get; set; }
- public string Operator { get; set; }
- public Nullable IsTimingPowerSetting { get; set; }
- public string CommSchemeCode { get; set; }
- public string RoomAllName { get; set; }
- public Nullable IsLadderPrice { get; set; }
- public Nullable LadderNum { get; set; }
- public Nullable RoomBalance { get; set; }
- public Nullable OtherBalance { get; set; }
- public Nullable LastValveEventType { get; set; }
- public Nullable ReadKwh4 { get; set; }
- public Nullable ReadKwh3 { get; set; }
- public Nullable ReadKwh2 { get; set; }
- public Nullable ReadKwh1 { get; set; }
- public Nullable ReadKwh { get; set; }
- public Nullable LastEventTime { get; set; }
- public Nullable LastReadTime { get; set; }
- public string RoomNumber { get; set; }
- public string EquipmentName { get; set; }
- public Nullable EquipmentId { get; set; }
- public Nullable IsMalignantLoad { get; set; }
- public string BrandName { get; set; }
- public Nullable MalignantPower { get; set; }
- public Nullable MalignantPowerState { get; set; }
- public Nullable RatedPowerState { get; set; }
- public string SolveStatus { get; set; }
- public Nullable PowerDownStatus { get; set; }
- public Nullable SolveStatusTime { get; set; }
- public decimal DisableKwh { get; set; }
- public Nullable IsDeliver { get; set; }
- public Nullable HandleUser { get; set; }
- public string HandleUserName { get; set; }
- public string Solutions { get; set; }
- public decimal DisableKwh1 { get; set; }
- public decimal DisableKwh2 { get; set; }
- public decimal DisableKwh3 { get; set; }
- public decimal DisableKwh4 { get; set; }
- public bool DelaySwitchOff { get; set; }
- public string MeterSolveStatus { get; set; }
- public Nullable DeliverTime { get; set; }
- public bool EnableState { get; set; }
- public string DxNbiotDeviceId { get; set; }
- public int MeterStatus { get; set; }
- public string AllowTripTime { get; set; }
- public Nullable LastCostMilliSecond { get; set; }
- public string DxNbiotIMEI { get; set; }
- public Nullable ReadKwh5 { get; set; }
- public Nullable ReadKwh6 { get; set; }
- public Nullable ReadKwh7 { get; set; }
- public Nullable ReadKwh8 { get; set; }
- public Nullable DisableKwh5 { get; set; }
- public Nullable DisableKwh6 { get; set; }
- public Nullable DisableKwh7 { get; set; }
- public Nullable DisableKwh8 { get; set; }
- public Nullable IsLadder { get; set; }
- public Nullable TimeSpanSetNum { get; set; }
- public string ExecutePeriod { get; set; }
- public string FreqInterval { get; set; }
- public Nullable Tb_sysUseValueAlarmID { get; set; }
- public Nullable IsMaxDemandKwh { get; set; }
- public Nullable OnLineTime { get; set; }
- public Nullable OperatorId { get; set; }
- public int PowerCT { get; set; }
- public string CommunicationsModule { get; set; }
- public Nullable CanBlueTooth { get; set; }
- public Nullable CanRemote { get; set; }
- public Nullable IsDownPrice { get; set; }
- public Nullable BuyCount { get; set; }
- }
-}
diff --git a/src/JiShe.CollectBus.Host/CollectBusHostModule.Configure.cs b/src/JiShe.CollectBus.Host/CollectBusHostModule.Configure.cs
index 3a0390a..567df93 100644
--- a/src/JiShe.CollectBus.Host/CollectBusHostModule.Configure.cs
+++ b/src/JiShe.CollectBus.Host/CollectBusHostModule.Configure.cs
@@ -18,8 +18,8 @@ using TouchSocket.Core;
using TouchSocket.Sockets;
using JiShe.CollectBus.Plugins;
using JiShe.CollectBus.Consumers;
-using JiShe.CollectBus.MessageReceiveds;
using JiShe.CollectBus.Protocol.Contracts;
+using JiShe.CollectBus.IotSystems.MessageReceiveds;
namespace JiShe.CollectBus.Host
diff --git a/src/JiShe.CollectBus.MongoDB/MongoDB/CollectBusMongoDbContext.cs b/src/JiShe.CollectBus.MongoDB/MongoDB/CollectBusMongoDbContext.cs
index 890a29f..a42a250 100644
--- a/src/JiShe.CollectBus.MongoDB/MongoDB/CollectBusMongoDbContext.cs
+++ b/src/JiShe.CollectBus.MongoDB/MongoDB/CollectBusMongoDbContext.cs
@@ -1,6 +1,6 @@
-using JiShe.CollectBus.Devices;
-using JiShe.CollectBus.MessageReceiveds;
-using JiShe.CollectBus.Protocols;
+using JiShe.CollectBus.IotSystems.Devices;
+using JiShe.CollectBus.IotSystems.MessageReceiveds;
+using JiShe.CollectBus.IotSystems.Protocols;
using MongoDB.Driver;
using Volo.Abp.Data;
using Volo.Abp.MongoDB;
diff --git a/src/JiShe.CollectBus.Protocol.Contracts/Abstracts/BaseProtocolPlugin.cs b/src/JiShe.CollectBus.Protocol.Contracts/Abstracts/BaseProtocolPlugin.cs
index 6f504f5..15fa60f 100644
--- a/src/JiShe.CollectBus.Protocol.Contracts/Abstracts/BaseProtocolPlugin.cs
+++ b/src/JiShe.CollectBus.Protocol.Contracts/Abstracts/BaseProtocolPlugin.cs
@@ -3,15 +3,15 @@ using DotNetCore.CAP;
using JiShe.CollectBus.Common.Enums;
using JiShe.CollectBus.Common.Extensions;
using JiShe.CollectBus.Common.Models;
-using JiShe.CollectBus.MessageReceiveds;
using JiShe.CollectBus.Protocol.Contracts.Interfaces;
-using JiShe.CollectBus.Protocols;
using Microsoft.Extensions.Logging;
using JiShe.CollectBus.Protocol.Contracts.Models;
using Volo.Abp.Domain.Repositories;
using JiShe.CollectBus.Common.BuildSendDatas;
using JiShe.CollectBus.Protocol.Contracts.AnalysisData;
using Microsoft.Extensions.DependencyInjection;
+using JiShe.CollectBus.IotSystems.MessageReceiveds;
+using JiShe.CollectBus.IotSystems.Protocols;
namespace JiShe.CollectBus.Protocol.Contracts.Abstracts
{
diff --git a/src/JiShe.CollectBus.Protocol.Contracts/Interfaces/IProtocolPlugin.cs b/src/JiShe.CollectBus.Protocol.Contracts/Interfaces/IProtocolPlugin.cs
index 1ccc45b..bd08d60 100644
--- a/src/JiShe.CollectBus.Protocol.Contracts/Interfaces/IProtocolPlugin.cs
+++ b/src/JiShe.CollectBus.Protocol.Contracts/Interfaces/IProtocolPlugin.cs
@@ -1,9 +1,9 @@
using System;
using System.Threading.Tasks;
using JiShe.CollectBus.Common.Models;
-using JiShe.CollectBus.MessageReceiveds;
+using JiShe.CollectBus.IotSystems.MessageReceiveds;
+using JiShe.CollectBus.IotSystems.Protocols;
using JiShe.CollectBus.Protocol.Contracts.Models;
-using JiShe.CollectBus.Protocols;
using TouchSocket.Sockets;
namespace JiShe.CollectBus.Protocol.Contracts.Interfaces
diff --git a/src/JiShe.CollectBus.Protocol/StandardProtocolPlugin.cs b/src/JiShe.CollectBus.Protocol/StandardProtocolPlugin.cs
index a6918fd..79a92dd 100644
--- a/src/JiShe.CollectBus.Protocol/StandardProtocolPlugin.cs
+++ b/src/JiShe.CollectBus.Protocol/StandardProtocolPlugin.cs
@@ -1,10 +1,10 @@
using JiShe.CollectBus.Common.Enums;
using JiShe.CollectBus.Common.Extensions;
using JiShe.CollectBus.Common.Models;
-using JiShe.CollectBus.MessageReceiveds;
+using JiShe.CollectBus.IotSystems.MessageReceiveds;
+using JiShe.CollectBus.IotSystems.Protocols;
using JiShe.CollectBus.Protocol.Contracts.Abstracts;
using JiShe.CollectBus.Protocol.Contracts.Models;
-using JiShe.CollectBus.Protocols;
using Newtonsoft.Json.Linq;
namespace JiShe.CollectBus.Protocol