diff --git a/modules/JiShe.CollectBus.IoTDB/Interface/IIoTDBProvider.cs b/modules/JiShe.CollectBus.IoTDB/Interface/IIoTDBProvider.cs
index 02ac3ee..b896bdf 100644
--- a/modules/JiShe.CollectBus.IoTDB/Interface/IIoTDBProvider.cs
+++ b/modules/JiShe.CollectBus.IoTDB/Interface/IIoTDBProvider.cs
@@ -1,6 +1,6 @@
using JiShe.CollectBus.Common.Models;
+using JiShe.CollectBus.IoTDB.Model;
using JiShe.CollectBus.IoTDB.Options;
-using JiShe.CollectBus.IoTDB.Provider;
namespace JiShe.CollectBus.IoTDB.Interface
{
diff --git a/modules/JiShe.CollectBus.IoTDB/JiShe.CollectBus.IoTDB.csproj b/modules/JiShe.CollectBus.IoTDB/JiShe.CollectBus.IoTDB.csproj
index dc8f2fb..8cc4b33 100644
--- a/modules/JiShe.CollectBus.IoTDB/JiShe.CollectBus.IoTDB.csproj
+++ b/modules/JiShe.CollectBus.IoTDB/JiShe.CollectBus.IoTDB.csproj
@@ -6,7 +6,6 @@
enable
-
diff --git a/modules/JiShe.CollectBus.IoTDB/Provider/IoTEntity.cs b/modules/JiShe.CollectBus.IoTDB/Model/IoTEntity.cs
similarity index 79%
rename from modules/JiShe.CollectBus.IoTDB/Provider/IoTEntity.cs
rename to modules/JiShe.CollectBus.IoTDB/Model/IoTEntity.cs
index fc965e6..6431e6f 100644
--- a/modules/JiShe.CollectBus.IoTDB/Provider/IoTEntity.cs
+++ b/modules/JiShe.CollectBus.IoTDB/Model/IoTEntity.cs
@@ -1,9 +1,9 @@
using JiShe.CollectBus.IoTDB.Attribute;
-namespace JiShe.CollectBus.IoTDB.Provider
+namespace JiShe.CollectBus.IoTDB.Model
{
///
- /// IoT实体基类
+ /// IoT实体基类,此类适用于多个数据测点记录场景,单个测点请使用子类 SingleMeasuringEntity
///
public abstract class IoTEntity
{
@@ -32,7 +32,7 @@ namespace JiShe.CollectBus.IoTDB.Provider
public required string DeviceId { get; set; }
///
- /// 当前时间戳,单位毫秒
+ /// 当前时间戳,单位毫秒,必须通过DateTimeOffset获取
///
public required long Timestamps { get; set; } = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds();
}
diff --git a/services/JiShe.CollectBus.Domain/IotSystems/AFNEntity/SingleMeasuringAFNDataEntity.cs b/modules/JiShe.CollectBus.IoTDB/Model/SingleMeasuringEntity.cs
similarity index 58%
rename from services/JiShe.CollectBus.Domain/IotSystems/AFNEntity/SingleMeasuringAFNDataEntity.cs
rename to modules/JiShe.CollectBus.IoTDB/Model/SingleMeasuringEntity.cs
index 0440c1d..72a8ae6 100644
--- a/services/JiShe.CollectBus.Domain/IotSystems/AFNEntity/SingleMeasuringAFNDataEntity.cs
+++ b/modules/JiShe.CollectBus.IoTDB/Model/SingleMeasuringEntity.cs
@@ -4,19 +4,21 @@ using System.Linq;
using System.Text;
using System.Threading.Tasks;
using JiShe.CollectBus.IoTDB.Attribute;
+using JiShe.CollectBus.IoTDB.Enums;
using JiShe.CollectBus.IoTDB.Provider;
-namespace JiShe.CollectBus.IotSystems.AFNEntity
+namespace JiShe.CollectBus.IoTDB.Model
{
///
- /// AFN单项数据实体
+ /// 单项数据实体
///
- public class SingleMeasuringAFNDataEntity : IoTEntity
+ [EntityType(EntityTypeEnum.TreeModel)]
+ public class SingleMeasuringEntity : IoTEntity
{
///
/// 单项数据对象
///
[SingleMeasuring(nameof(SingleMeasuring))]
- public Tuple SingleMeasuring { get; set; }
+ public required Tuple SingleMeasuring { get; set; }
}
}
diff --git a/modules/JiShe.CollectBus.IoTDB/Provider/DevicePathBuilder.cs b/modules/JiShe.CollectBus.IoTDB/Provider/DevicePathBuilder.cs
index b78dfa3..a858c73 100644
--- a/modules/JiShe.CollectBus.IoTDB/Provider/DevicePathBuilder.cs
+++ b/modules/JiShe.CollectBus.IoTDB/Provider/DevicePathBuilder.cs
@@ -1,4 +1,6 @@
-namespace JiShe.CollectBus.IoTDB.Provider
+using JiShe.CollectBus.IoTDB.Model;
+
+namespace JiShe.CollectBus.IoTDB.Provider
{
///
/// 设备路径构建器
diff --git a/modules/JiShe.CollectBus.IoTDB/Provider/IoTDBProvider.cs b/modules/JiShe.CollectBus.IoTDB/Provider/IoTDBProvider.cs
index fdb9789..1fac82a 100644
--- a/modules/JiShe.CollectBus.IoTDB/Provider/IoTDBProvider.cs
+++ b/modules/JiShe.CollectBus.IoTDB/Provider/IoTDBProvider.cs
@@ -8,8 +8,10 @@ using JiShe.CollectBus.Common.Models;
using JiShe.CollectBus.IoTDB.Attribute;
using JiShe.CollectBus.IoTDB.Context;
using JiShe.CollectBus.IoTDB.Interface;
+using JiShe.CollectBus.IoTDB.Model;
using JiShe.CollectBus.IoTDB.Options;
using Microsoft.Extensions.Logging;
+using Volo.Abp.DependencyInjection;
using Volo.Abp.Domain.Entities;
namespace JiShe.CollectBus.IoTDB.Provider
@@ -56,13 +58,7 @@ namespace JiShe.CollectBus.IoTDB.Provider
var tablet = BuildTablet(new[] { entity }, metadata);
- await CurrentSession.InsertAsync(tablet);
-
- //int result = await _currentSession.InsertAsync(tablet);
- //if (result <= 0)
- //{
- // _logger.LogError($"{typeof(T).Name}插入数据没有成功");
- //}
+ await CurrentSession.InsertAsync(tablet);
}
///
@@ -80,12 +76,7 @@ namespace JiShe.CollectBus.IoTDB.Provider
foreach (var batch in batches)
{
var tablet = BuildTablet(batch, metadata);
- await CurrentSession.InsertAsync(tablet);
- //var result = await _currentSession.InsertAsync(tablet);
- //if (result <= 0)
- //{
- // _logger.LogWarning($"{typeof(T).Name} 批量插入数据第{batch}批次没有成功,共{batches}批次。");
- //}
+ await CurrentSession.InsertAsync(tablet);
}
}
@@ -159,7 +150,7 @@ namespace JiShe.CollectBus.IoTDB.Provider
throw new ArgumentException($"{nameof(BuildTablet)} 构建存储结构{nameof(Tablet)}时 {nameof(T)}的EntityType 和{nameof(DeviceMetadata)}的 EntityType 不一致,属于异常情况,-102");
}
- if(metadata.EntityType == Enums.EntityTypeEnum.TreeModel && _runtimeContext.UseTableSessionPool == true)
+ if (metadata.EntityType == Enums.EntityTypeEnum.TreeModel && _runtimeContext.UseTableSessionPool == true)
{
throw new ArgumentException($"{nameof(BuildTablet)} 构建存储结构{nameof(Tablet)}时 tree模型不能使用table模型Session连接,属于异常情况,-103");
}
@@ -169,77 +160,65 @@ namespace JiShe.CollectBus.IoTDB.Provider
}
- foreach (var entity in entities)
+ foreach (var entity in entities)
+ {
+ timestamps.Add(entity.Timestamps);
+ var rowValues = new List