diff --git a/Directory.Build.props b/Directory.Build.props
index 9d3c0a0..e79fc14 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -2,7 +2,7 @@
- 1.0.5.01
+ 1.0.5.04
9.1.1
diff --git a/JiShe.CollectBus.sln b/JiShe.CollectBus.sln
index 677010f..4cf42bf 100644
--- a/JiShe.CollectBus.sln
+++ b/JiShe.CollectBus.sln
@@ -51,8 +51,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "0.Docs", "0.Docs", "{D8346C
readme.md = readme.md
EndProjectSection
EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "MainHost", "MainHost", "{A38B5EB3-2F55-44A2-944B-31A73DE91402}"
-EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -120,8 +118,8 @@ Global
{F2840BC7-0188-4606-9126-DADD0F5ABF7A} = {BA4DA3E7-9AD0-47AD-A0E6-A0BB6700DA23}
{BD65D04F-08D5-40C1-8C24-77CA0BACB877} = {BA4DA3E7-9AD0-47AD-A0E6-A0BB6700DA23}
{78040F9E-3501-4A40-82DF-00A597710F35} = {BA4DA3E7-9AD0-47AD-A0E6-A0BB6700DA23}
- {077AA5F8-8B61-420C-A6B5-0150A66FDB34} = {A38B5EB3-2F55-44A2-944B-31A73DE91402}
- {35829A15-4127-4F69-8BDE-9405DEAACA9A} = {A38B5EB3-2F55-44A2-944B-31A73DE91402}
+ {077AA5F8-8B61-420C-A6B5-0150A66FDB34} = {A02F7D8A-04DC-44D6-94D4-3F65712D6B94}
+ {35829A15-4127-4F69-8BDE-9405DEAACA9A} = {A02F7D8A-04DC-44D6-94D4-3F65712D6B94}
{AD2F1928-4411-4511-B564-5FB996EC08B9} = {EBF7C01F-9B4F-48E6-8418-2CBFDA51EB0B}
{8BA01C3D-297D-42DF-BD63-EF07202A0A67} = {BA4DA3E7-9AD0-47AD-A0E6-A0BB6700DA23}
{A377955E-7EA1-6F29-8CF7-774569E93925} = {3C3F9DB2-EC97-4464-B49F-BF1A0C2B46DC}
@@ -129,7 +127,6 @@ Global
{8A61DF78-069B-40B5-8811-614E2960443E} = {3C3F9DB2-EC97-4464-B49F-BF1A0C2B46DC}
{E27377CC-E2D3-4237-060F-96EA214D3129} = {3C3F9DB2-EC97-4464-B49F-BF1A0C2B46DC}
{75B7D419-C261-577D-58D6-AA3ACED9129F} = {3C3F9DB2-EC97-4464-B49F-BF1A0C2B46DC}
- {A38B5EB3-2F55-44A2-944B-31A73DE91402} = {A02F7D8A-04DC-44D6-94D4-3F65712D6B94}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {4324B3B4-B60B-4E3C-91D8-59576B4E26DD}
diff --git a/protocols/JiShe.CollectBus.Protocol.T1882018/GlobalUsings.cs b/protocols/JiShe.CollectBus.Protocol.T1882018/GlobalUsings.cs
new file mode 100644
index 0000000..61e52b6
--- /dev/null
+++ b/protocols/JiShe.CollectBus.Protocol.T1882018/GlobalUsings.cs
@@ -0,0 +1,8 @@
+// Global using directives
+
+global using System.Text;
+global using Volo.Abp.Modularity;
+global using JiShe.ServicePro.Enums;
+global using JiShe.ServicePro.FreeRedisProvider;
+global using JiShe.ServicePro.Consts;
+global using JiShe.ServicePro.Core;
\ No newline at end of file
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_00H/AFN0_F1_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_00H/AFN0_F1_Analysis.cs
index e2876b3..81f187e 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_00H/AFN0_F1_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_00H/AFN0_F1_Analysis.cs
@@ -44,7 +44,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_00H
DeviceCacheInfo? deviceInfo = await _dataStorage.GetDeviceInfoAsync(input.A.Code);
if (deviceInfo != null)
{
- data.ProjectId = deviceInfo.ProjectID;
+ data.ProjectId = deviceInfo.ProjectId;
data.DeviceId = deviceInfo.FocusId;
data.DatabaseBusiID = deviceInfo.DatabaseBusiID;
data.DeviceAddress = deviceInfo.FocusAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_00H/AFN0_F2_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_00H/AFN0_F2_Analysis.cs
index eab845a..8a76b57 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_00H/AFN0_F2_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_00H/AFN0_F2_Analysis.cs
@@ -39,7 +39,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_00H
DeviceCacheInfo? deviceInfo = await _dataStorage.GetDeviceInfoAsync(input.A.Code);
if (deviceInfo != null)
{
- data.ProjectId = deviceInfo.ProjectID;
+ data.ProjectId = deviceInfo.ProjectId;
data.DeviceId = deviceInfo.FocusId;
data.DatabaseBusiID = deviceInfo.DatabaseBusiID;
data.DeviceAddress = deviceInfo.FocusAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_02H/AFN2_F1_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_02H/AFN2_F1_Analysis.cs
index 4a9fe6c..c2cfaba 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_02H/AFN2_F1_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_02H/AFN2_F1_Analysis.cs
@@ -41,7 +41,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_02H
DeviceCacheInfo? deviceInfo = await _dataStorage.GetDeviceInfoAsync(input.A.Code);
if (deviceInfo != null)
{
- data.ProjectId = deviceInfo.ProjectID;
+ data.ProjectId = deviceInfo.ProjectId;
data.DeviceId = deviceInfo.FocusId;
data.DatabaseBusiID = deviceInfo.DatabaseBusiID;
data.DeviceAddress = deviceInfo.FocusAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_02H/AFN2_F2_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_02H/AFN2_F2_Analysis.cs
index 30ebc61..2f26ae1 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_02H/AFN2_F2_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_02H/AFN2_F2_Analysis.cs
@@ -41,7 +41,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_02H
DeviceCacheInfo? deviceInfo = await _dataStorage.GetDeviceInfoAsync(input.A.Code);
if (deviceInfo != null)
{
- data.ProjectId = deviceInfo.ProjectID;
+ data.ProjectId = deviceInfo.ProjectId;
data.DeviceId = deviceInfo.FocusId;
data.DatabaseBusiID = deviceInfo.DatabaseBusiID;
data.DeviceAddress = deviceInfo.FocusAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_02H/AFN2_F3_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_02H/AFN2_F3_Analysis.cs
index 1b3cf7d..b157325 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_02H/AFN2_F3_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_02H/AFN2_F3_Analysis.cs
@@ -41,7 +41,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_02H
DeviceCacheInfo? deviceInfo = await _dataStorage.GetDeviceInfoAsync(input.A.Code);
if (deviceInfo != null)
{
- data.ProjectId = deviceInfo.ProjectID;
+ data.ProjectId = deviceInfo.ProjectId;
data.DeviceId = deviceInfo.FocusId;
data.DatabaseBusiID = deviceInfo.DatabaseBusiID;
data.DeviceAddress = deviceInfo.FocusAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_09H/AFN9_F1_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_09H/AFN9_F1_Analysis.cs
index f77344f..dc99c5c 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_09H/AFN9_F1_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_09H/AFN9_F1_Analysis.cs
@@ -48,7 +48,7 @@ namespace JiShe.CollectBus.Protocol.AnalysisData.AFN_09H
DeviceCacheInfo? deviceInfo = await _dataStorage.GetDeviceInfoAsync(input.A.Code);
if (deviceInfo != null)
{
- data.ProjectId = deviceInfo.ProjectID;
+ data.ProjectId = deviceInfo.ProjectId;
data.DeviceId = deviceInfo.FocusId;
data.DatabaseBusiID = deviceInfo.DatabaseBusiID;
data.DeviceAddress = deviceInfo.FocusAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_09H/AFN9_F9_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_09H/AFN9_F9_Analysis.cs
index 2b58f22..fa8c753 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_09H/AFN9_F9_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_09H/AFN9_F9_Analysis.cs
@@ -42,7 +42,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_09H
DeviceCacheInfo? deviceInfo = await _dataStorage.GetDeviceInfoAsync(input.A.Code);
if (deviceInfo != null)
{
- data.ProjectId = deviceInfo.ProjectID;
+ data.ProjectId = deviceInfo.ProjectId;
data.DeviceId = deviceInfo.FocusId;
data.DatabaseBusiID = deviceInfo.DatabaseBusiID;
data.DeviceAddress = deviceInfo.FocusAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0AH/AFN10_F10_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0AH/AFN10_F10_Analysis.cs
index cf2d140..ad00f2c 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0AH/AFN10_F10_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0AH/AFN10_F10_Analysis.cs
@@ -47,7 +47,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0AH
DeviceCacheInfo? deviceInfo = await _dataStorage.GetDeviceInfoAsync(input.A.Code);
if (deviceInfo != null)
{
- data.ProjectId = deviceInfo.ProjectID;
+ data.ProjectId = deviceInfo.ProjectId;
data.DeviceId = deviceInfo.FocusId;
data.DatabaseBusiID = deviceInfo.DatabaseBusiID;
data.DeviceAddress = deviceInfo.FocusAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0AH/AFN10_F66_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0AH/AFN10_F66_Analysis.cs
index 7eb0b20..7dbaa7a 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0AH/AFN10_F66_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0AH/AFN10_F66_Analysis.cs
@@ -46,7 +46,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0AH
DeviceCacheInfo? deviceInfo = await _dataStorage.GetDeviceInfoAsync(input.A.Code);
if (deviceInfo != null)
{
- data.ProjectId = deviceInfo.ProjectID;
+ data.ProjectId = deviceInfo.ProjectId;
data.DeviceId = deviceInfo.FocusId;
data.DatabaseBusiID = deviceInfo.DatabaseBusiID;
data.DeviceAddress = deviceInfo.FocusAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0AH/AFN10_F68_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0AH/AFN10_F68_Analysis.cs
index 0807350..e096978 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0AH/AFN10_F68_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0AH/AFN10_F68_Analysis.cs
@@ -41,7 +41,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0AH
DeviceCacheInfo? deviceInfo = await _dataStorage.GetDeviceInfoAsync(input.A.Code);
if (deviceInfo != null)
{
- data.ProjectId = deviceInfo.ProjectID;
+ data.ProjectId = deviceInfo.ProjectId;
data.DeviceId = deviceInfo.FocusId;
data.DatabaseBusiID = deviceInfo.DatabaseBusiID;
data.DeviceAddress = deviceInfo.FocusAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F129_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F129_Analysis.cs
index 2a4b1e4..229c735 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F129_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F129_Analysis.cs
@@ -58,7 +58,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0CH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F130_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F130_Analysis.cs
index f322151..5ae6d70 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F130_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F130_Analysis.cs
@@ -46,7 +46,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0CH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F131_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F131_Analysis.cs
index 8993104..c9d9cbb 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F131_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F131_Analysis.cs
@@ -47,7 +47,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0CH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F132_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F132_Analysis.cs
index 6b2e094..9cdb741 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F132_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F132_Analysis.cs
@@ -8,7 +8,7 @@ using JiShe.CollectBus.Protocol.Contracts.Protocol.Dto;
using JiShe.CollectBus.Protocol.Dto;
using JiShe.CollectBus.Protocol.Interfaces;
using JiShe.CollectBus.Protocol.T37612012.Appendix;
-using JiShe.CollectBus.Protocol3761;
+using JiShe.CollectBus.Protocol3761;
using Microsoft.Extensions.Logging;
using YamlDotNet.Core.Tokens;
@@ -49,7 +49,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0CH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F145_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F145_Analysis.cs
index ced817f..9cf2c32 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F145_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F145_Analysis.cs
@@ -47,7 +47,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0CH
DeviceCacheInfo? deviceInfo = await _dataStorage.GetDeviceInfoAsync(input.A.Code, input.DA.Pn);
if (deviceInfo != null)
{
- data.ProjectId = deviceInfo.ProjectID;
+ data.ProjectId = deviceInfo.ProjectId;
data.DeviceId = deviceInfo.MeterId;
data.DatabaseBusiID = deviceInfo.DatabaseBusiID;
data.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F149_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F149_Analysis.cs
index 938a2d8..b261ac6 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F149_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F149_Analysis.cs
@@ -47,7 +47,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AFN_0CH
DeviceCacheInfo? deviceInfo = await _dataStorage.GetDeviceInfoAsync(input.A.Code, input.DA.Pn);
if (deviceInfo != null)
{
- data.ProjectId = deviceInfo.ProjectID;
+ data.ProjectId = deviceInfo.ProjectId;
data.DeviceId = deviceInfo.MeterId;
data.DatabaseBusiID = deviceInfo.DatabaseBusiID;
data.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F188_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F188_Analysis.cs
index 4037b3e..1c624d1 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F188_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F188_Analysis.cs
@@ -47,7 +47,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AFN_0CH
DeviceCacheInfo? deviceInfo = await _dataStorage.GetDeviceInfoAsync(input.A.Code, input.DA.Pn);
if (deviceInfo != null)
{
- data.ProjectId = deviceInfo.ProjectID;
+ data.ProjectId = deviceInfo.ProjectId;
data.DeviceId = deviceInfo.MeterId;
data.DatabaseBusiID = deviceInfo.DatabaseBusiID;
data.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F25_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F25_Analysis.cs
index 434d1ee..85fdf43 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F25_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F25_Analysis.cs
@@ -76,7 +76,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AFN_0CH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F2_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F2_Analysis.cs
index 85e59af..48d798c 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F2_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F2_Analysis.cs
@@ -46,7 +46,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AFN_0CH
DeviceCacheInfo? deviceInfo = await _dataStorage.GetDeviceInfoAsync(input.A.Code, input.DA.Pn);
if (deviceInfo != null)
{
- data.ProjectId = deviceInfo.ProjectID;
+ data.ProjectId = deviceInfo.ProjectId;
data.DeviceId = deviceInfo.MeterId;
data.DatabaseBusiID = deviceInfo.DatabaseBusiID;
data.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F33_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F33_Analysis.cs
index c36335f..861c256 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F33_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F33_Analysis.cs
@@ -52,7 +52,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AFN_0CH
DeviceCacheInfo? deviceInfo = await _dataStorage.GetDeviceInfoAsync(input.A.Code, input.DA.Pn);
if (deviceInfo != null)
{
- data.ProjectId = deviceInfo.ProjectID;
+ data.ProjectId = deviceInfo.ProjectId;
data.DeviceId = deviceInfo.MeterId;
data.DatabaseBusiID = deviceInfo.DatabaseBusiID;
data.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F49_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F49_Analysis.cs
index 389d254..7d6c448 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F49_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0CH/AFN12_F49_Analysis.cs
@@ -71,7 +71,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AFN_0CH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F100_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F100_Analysis.cs
index d8a40c6..128e522 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F100_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F100_Analysis.cs
@@ -52,7 +52,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F101_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F101_Analysis.cs
index d466ae4..9bfb4fe 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F101_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F101_Analysis.cs
@@ -50,7 +50,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F102_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F102_Analysis.cs
index a94d177..5e38127 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F102_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F102_Analysis.cs
@@ -51,7 +51,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F103_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F103_Analysis.cs
index c2e0d82..8a2333f 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F103_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F103_Analysis.cs
@@ -52,7 +52,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F104_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F104_Analysis.cs
index cb93f8c..8d45257 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F104_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F104_Analysis.cs
@@ -51,7 +51,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F105_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F105_Analysis.cs
index ad6107c..a34572c 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F105_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F105_Analysis.cs
@@ -51,7 +51,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F106_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F106_Analysis.cs
index 1084806..24d7589 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F106_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F106_Analysis.cs
@@ -51,7 +51,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F107_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F107_Analysis.cs
index 2dc1aa3..996ba77 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F107_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F107_Analysis.cs
@@ -50,7 +50,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F108_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F108_Analysis.cs
index 2e15913..3d423d9 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F108_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F108_Analysis.cs
@@ -51,7 +51,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F11_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F11_Analysis.cs
index ef9ee47..214d9e5 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F11_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F11_Analysis.cs
@@ -50,7 +50,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F145_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F145_Analysis.cs
index aa94dbf..07d99b2 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F145_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F145_Analysis.cs
@@ -50,7 +50,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F146_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F146_Analysis.cs
index 5f7b143..a41f93d 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F146_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F146_Analysis.cs
@@ -50,7 +50,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F147_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F147_Analysis.cs
index 983ae99..9aad2fe 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F147_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F147_Analysis.cs
@@ -50,7 +50,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F148_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F148_Analysis.cs
index aa5e886..4310d04 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F148_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F148_Analysis.cs
@@ -51,7 +51,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F161_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F161_Analysis.cs
index d4812ca..3890010 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F161_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F161_Analysis.cs
@@ -50,7 +50,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F162_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F162_Analysis.cs
index 7994748..01a3cac 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F162_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F162_Analysis.cs
@@ -49,7 +49,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F163_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F163_Analysis.cs
index 8cb466e..10be34e 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F163_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F163_Analysis.cs
@@ -50,7 +50,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F164_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F164_Analysis.cs
index 80b47ff..b9abaf5 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F164_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F164_Analysis.cs
@@ -49,7 +49,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F165_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F165_Analysis.cs
index 657c854..dedd9a7 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F165_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F165_Analysis.cs
@@ -49,7 +49,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F166_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F166_Analysis.cs
index 279bc54..1d58fcf 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F166_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F166_Analysis.cs
@@ -49,7 +49,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F167_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F167_Analysis.cs
index 7c564d8..cabe4ea 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F167_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F167_Analysis.cs
@@ -49,7 +49,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F168_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F168_Analysis.cs
index 1136899..bc30e29 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F168_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F168_Analysis.cs
@@ -49,7 +49,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F177_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F177_Analysis.cs
index b232e09..bb7c1e6 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F177_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F177_Analysis.cs
@@ -48,7 +48,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F178_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F178_Analysis.cs
index f3bef7c..d7807df 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F178_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F178_Analysis.cs
@@ -49,7 +49,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F179_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F179_Analysis.cs
index 3d02007..9a670dd 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F179_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F179_Analysis.cs
@@ -49,7 +49,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F180_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F180_Analysis.cs
index d68619e..9852016 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F180_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F180_Analysis.cs
@@ -48,7 +48,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F181_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F181_Analysis.cs
index 58b4a6a..d89f147 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F181_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F181_Analysis.cs
@@ -49,7 +49,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F182_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F182_Analysis.cs
index 692cc75..54510e5 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F182_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F182_Analysis.cs
@@ -49,7 +49,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F183_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F183_Analysis.cs
index 05b5f0f..29214c4 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F183_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F183_Analysis.cs
@@ -48,7 +48,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F184_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F184_Analysis.cs
index 2ca66f5..cc0f2f2 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F184_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F184_Analysis.cs
@@ -49,7 +49,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F189_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F189_Analysis.cs
index df778db..687167d 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F189_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F189_Analysis.cs
@@ -50,7 +50,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F190_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F190_Analysis.cs
index d785f27..54adf41 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F190_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F190_Analysis.cs
@@ -45,7 +45,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
DeviceCacheInfo? deviceInfo = await _dataStorage.GetDeviceInfoAsync(input.A.Code, input.DA.Pn);
if (deviceInfo != null)
{
- data.ProjectId = deviceInfo.ProjectID;
+ data.ProjectId = deviceInfo.ProjectId;
data.DeviceId = deviceInfo.MeterId;
data.DatabaseBusiID = deviceInfo.DatabaseBusiID;
data.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F193_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F193_Analysis.cs
index b95718e..3180e03 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F193_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F193_Analysis.cs
@@ -46,7 +46,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
DeviceCacheInfo? deviceInfo = await _dataStorage.GetDeviceInfoAsync(input.A.Code, input.DA.Pn);
if (deviceInfo != null)
{
- data.ProjectId = deviceInfo.ProjectID;
+ data.ProjectId = deviceInfo.ProjectId;
data.DeviceId = deviceInfo.MeterId;
data.DatabaseBusiID = deviceInfo.DatabaseBusiID;
data.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F195_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F195_Analysis.cs
index 78badd5..043ce9c 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F195_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F195_Analysis.cs
@@ -46,7 +46,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
DeviceCacheInfo? deviceInfo = await _dataStorage.GetDeviceInfoAsync(input.A.Code, input.DA.Pn);
if (deviceInfo != null)
{
- data.ProjectId = deviceInfo.ProjectID;
+ data.ProjectId = deviceInfo.ProjectId;
data.DeviceId = deviceInfo.MeterId;
data.DatabaseBusiID = deviceInfo.DatabaseBusiID;
data.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F19_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F19_Analysis.cs
index 5e805fe..13dfd15 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F19_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F19_Analysis.cs
@@ -51,7 +51,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F3_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F3_Analysis.cs
index 76455e0..bd7484b 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F3_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F3_Analysis.cs
@@ -54,7 +54,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F4_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F4_Analysis.cs
index ae9ce39..c3bfbcf 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F4_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F4_Analysis.cs
@@ -53,7 +53,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F81_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F81_Analysis.cs
index 27cb410..f395291 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F81_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F81_Analysis.cs
@@ -51,7 +51,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F82_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F82_Analysis.cs
index cb17381..0166d4d 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F82_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F82_Analysis.cs
@@ -52,7 +52,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F83_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F83_Analysis.cs
index f3e0f91..eeaeb74 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F83_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F83_Analysis.cs
@@ -52,7 +52,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F84_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F84_Analysis.cs
index 57280d4..25c96a4 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F84_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F84_Analysis.cs
@@ -51,7 +51,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F85_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F85_Analysis.cs
index 112b04d..e4a9ad0 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F85_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F85_Analysis.cs
@@ -52,7 +52,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F86_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F86_Analysis.cs
index dfa0d9a..c2d5d09 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F86_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F86_Analysis.cs
@@ -52,7 +52,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F87_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F87_Analysis.cs
index aa2e957..66a3367 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F87_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F87_Analysis.cs
@@ -51,7 +51,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F88_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F88_Analysis.cs
index 1600d8f..5858719 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F88_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F88_Analysis.cs
@@ -52,7 +52,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F89_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F89_Analysis.cs
index 17460b3..e480a9b 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F89_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F89_Analysis.cs
@@ -52,7 +52,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F90_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F90_Analysis.cs
index 77f9374..c06829d 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F90_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F90_Analysis.cs
@@ -52,7 +52,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F91_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F91_Analysis.cs
index aca32d8..aa0077b 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F91_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F91_Analysis.cs
@@ -51,7 +51,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F92_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F92_Analysis.cs
index 9f29fa2..a556c5e 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F92_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F92_Analysis.cs
@@ -52,7 +52,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F93_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F93_Analysis.cs
index 5cd13eb..a73763e 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F93_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F93_Analysis.cs
@@ -52,7 +52,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F94_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F94_Analysis.cs
index 72eaa55..cd7447f 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F94_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F94_Analysis.cs
@@ -52,7 +52,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F95_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F95_Analysis.cs
index 3d531dd..b2406af 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F95_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F95_Analysis.cs
@@ -52,7 +52,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F97_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F97_Analysis.cs
index 5673955..731ee4d 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F97_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F97_Analysis.cs
@@ -52,7 +52,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F98_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F98_Analysis.cs
index d4ffe16..b7d81fb 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F98_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F98_Analysis.cs
@@ -52,7 +52,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F99_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F99_Analysis.cs
index 2887c1c..64451ad 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F99_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0DH/AFN13_F99_Analysis.cs
@@ -52,7 +52,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0EH/AFN14_F1_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0EH/AFN14_F1_Analysis.cs
index 26b4e08..bec9102 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0EH/AFN14_F1_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_0EH/AFN14_F1_Analysis.cs
@@ -54,7 +54,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0EH
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_10H/AFN16_F1_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_10H/AFN16_F1_Analysis.cs
index b8ee37c..19c1fa5 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_10H/AFN16_F1_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_10H/AFN16_F1_Analysis.cs
@@ -72,7 +72,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_10H
DeviceCacheInfo? deviceInfo = await _dataStorage.GetDeviceInfoAsync(input.A.Code);
if (deviceInfo != null)
{
- data.ProjectId = deviceInfo.ProjectID;
+ data.ProjectId = deviceInfo.ProjectId;
data.DeviceId = deviceInfo.FocusId;
data.DatabaseBusiID = deviceInfo.DatabaseBusiID;
data.DeviceAddress = deviceInfo.FocusAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_10H/Ammeter/AFN16_F101_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_10H/Ammeter/AFN16_F101_Analysis.cs
index cc2615c..ebea790 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_10H/Ammeter/AFN16_F101_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_10H/Ammeter/AFN16_F101_Analysis.cs
@@ -43,7 +43,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_10H.Ammeter
DeviceCacheInfo? deviceInfo = await _dataStorage.GetDeviceInfoAsync(input.A.Code, input.DA.Pn);
if (deviceInfo != null)
{
- data.ProjectId = deviceInfo.ProjectID;
+ data.ProjectId = deviceInfo.ProjectId;
data.DeviceId = deviceInfo.MeterId;
data.DatabaseBusiID = deviceInfo.DatabaseBusiID;
data.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_10H/Ammeter/AFN16_F97_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_10H/Ammeter/AFN16_F97_Analysis.cs
index 5c221c0..0da01ca 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_10H/Ammeter/AFN16_F97_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_10H/Ammeter/AFN16_F97_Analysis.cs
@@ -49,7 +49,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_10H.Ammeter
DeviceCacheInfo? deviceInfo = await _dataStorage.GetDeviceInfoAsync(input.A.Code, input.DA.Pn, datas[1]);
if (deviceInfo != null)
{
- data.ProjectId = deviceInfo.ProjectID;
+ data.ProjectId = deviceInfo.ProjectId;
data.DeviceId = deviceInfo.MeterId;
data.DatabaseBusiID = deviceInfo.DatabaseBusiID;
data.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_10H/Ammeter/AFN16_F98_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_10H/Ammeter/AFN16_F98_Analysis.cs
index f02535b..36d9c66 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_10H/Ammeter/AFN16_F98_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_10H/Ammeter/AFN16_F98_Analysis.cs
@@ -50,7 +50,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_10H.Ammeter
DeviceCacheInfo? deviceInfo = await _dataStorage.GetDeviceInfoAsync(input.A.Code, input.DA.Pn);
if (deviceInfo != null)
{
- data.ProjectId = deviceInfo.ProjectID;
+ data.ProjectId = deviceInfo.ProjectId;
data.DeviceId = deviceInfo.MeterId;
data.DatabaseBusiID = deviceInfo.DatabaseBusiID;
data.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_10H/Watermeter/ES190DC_Analysis.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_10H/Watermeter/ES190DC_Analysis.cs
index c37dfa2..4c75999 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_10H/Watermeter/ES190DC_Analysis.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/AFN_10H/Watermeter/ES190DC_Analysis.cs
@@ -47,7 +47,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_10H.Watermeter
{
list.ForEach(item =>
{
- item.ProjectId = deviceInfo.ProjectID;
+ item.ProjectId = deviceInfo.ProjectId;
item.DeviceId = deviceInfo.MeterId;
item.DatabaseBusiID = deviceInfo.DatabaseBusiID;
item.DeviceAddress = deviceInfo.MeterAddress;
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/DataStorage.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/DataStorage.cs
index e94a7a3..aa80d1f 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/DataStorage.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/AnalysisData/DataStorage.cs
@@ -1,11 +1,11 @@
using FreeRedis;
using JiShe.CollectBus.Common;
using JiShe.CollectBus.Common.Consts;
-using JiShe.CollectBus.Common.Encrypt;
-using JiShe.CollectBus.Common.Helpers;
using JiShe.CollectBus.Protocol.Contracts.Protocol.Dto;
using JiShe.CollectBus.Protocol.Dto;
-using JiShe.ServicePro.FreeRedisProvider;
+using JiShe.ServicePro.Consts;
+using JiShe.ServicePro.Core;
+using JiShe.ServicePro.Encrypt;
using JiShe.ServicePro.IoTDBManagement.Model;
using JiShe.ServicePro.IoTDBManagement.Options;
using JiShe.ServicePro.IoTDBManagement.SessionPools;
@@ -17,6 +17,7 @@ using Microsoft.Extensions.Options;
using System.Threading.Channels;
using Volo.Abp.DependencyInjection;
using Volo.Abp.Guids;
+using static FreeSql.Internal.GlobalFilter;
using static JiShe.CollectBus.Common.Consts.T37612012PacketItemCodeConst;
namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData
@@ -141,7 +142,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData
DeviceId = $"{data.DeviceId}",
DeviceType = $"{data.DeviceType.ToString()}",
ProjectId = $"{data.ProjectId}",
- DataType = analysisBaseDto.DataType,
+ IoTDataType = analysisBaseDto.DataType,
Timestamps = data.TimeSpan!.Value.GetFormatTime(analysisBaseDto.DensityUnit, analysisBaseDto.TimeDensity).GetDateTimeOffset().ToUnixTimeNanoseconds(),
SingleMeasuring = (data.FiledName ?? string.Empty, data.DataValue ?? default)
};
@@ -168,7 +169,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData
ProjectId = $"{data.ProjectId}",
DeviceType = $"{data.DeviceType}",
DeviceId = $"{data.DeviceId}",
- DataType = analysisBaseDto.DataType,
+ IoTDataType = analysisBaseDto.DataType,
FocusId = data.FocusId,
FocusAddress = analysisBaseDto.Code,
Timestamps = DateTime.Now.GetDateTimeOffset().ToUnixTimeNanoseconds(),
@@ -206,7 +207,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData
DeviceId = $"{data.DeviceId}",
DeviceType = $"{data.DeviceType}",
ProjectId = $"{data.ProjectId}",
- DataType = analysisBaseDto.DataType,
+ IoTDataType = analysisBaseDto.DataType,
Timestamps = meter.Timestamps,
SingleMeasuring = (IotDbFieldConst.IsSync, false)
};
@@ -219,7 +220,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData
DeviceId = $"{data.DeviceId}",
DeviceType = $"{data.DeviceType}",
ProjectId = $"{data.ProjectId}",
- DataType = analysisBaseDto.DataType,
+ IoTDataType = analysisBaseDto.DataType,
Timestamps = meter.Timestamps,
SingleMeasuring = (IotDbFieldConst.DatabaseBusiID, data.DatabaseBusiID)
};
@@ -279,7 +280,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData
DeviceId = $"{item.DeviceId}",
DeviceType = $"{item.DeviceType}",
ProjectId = $"{item.ProjectId}",
- DataType = analysisBaseDto.DataType,
+ IoTDataType = analysisBaseDto.DataType,
Timestamps = item.TimeSpan!.Value.GetFormatTime(analysisBaseDto.DensityUnit, analysisBaseDto.TimeDensity).GetDateTimeOffset().ToUnixTimeNanoseconds(), // TODO:这里暂时格式化15分钟数据,需要进行调整
SingleMeasuring =(item.FiledName ?? string.Empty, item.DataValue ?? default)
};
@@ -305,7 +306,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData
ProjectId = $"{item.ProjectId}",
DeviceType = $"{item.DeviceType}",
DeviceId = $"{item.DeviceId}",
- DataType = IOTDBDataTypeConst.Log, // 匹配不到下发记录标记为LOG
+ IoTDataType = IOTDBDataTypeConst.Log, // 匹配不到下发记录标记为LOG
Timestamps = DateTime.Now.CheckTimePoint().GetDateTimeOffset().ToUnixTimeNanoseconds(),
DatabaseBusiID = item.DatabaseBusiID,
PendingCopyReadTime = item.TimeSpan.Value.GetFormatTime(analysisBaseDto.DensityUnit, analysisBaseDto.TimeDensity),
@@ -333,7 +334,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData
}
meterReadingTelemetryPacketInfos.Add(taskData);
//如果无字段名,则不保存数据,如saveData=false 也不保存数据
- if (!string.IsNullOrWhiteSpace(item.FiledName) && item.ProjectId>0)
+ if (!string.IsNullOrWhiteSpace(item.FiledName) && !string.IsNullOrWhiteSpace(item.ProjectId))
{
treeModelSingleMeasuringEntities.Add(meter);
@@ -344,11 +345,11 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData
DeviceId = $"{item.DeviceId}",
DeviceType = $"{item.DeviceType}",
ProjectId = $"{item.ProjectId}",
- DataType = analysisBaseDto.DataType,
+ IoTDataType = analysisBaseDto.DataType,
Timestamps = meter.Timestamps,
SingleMeasuring = (IotDbFieldConst.IsSync, false)
};
- if(!meterIsSyncs.Any(a=> a.DataType == meterIsSync.DataType && a.ProjectId == meterIsSync.ProjectId && a.SystemName== meterIsSync.SystemName && a.DeviceId== meterIsSync.DeviceId && a.Timestamps== meterIsSync.Timestamps))
+ if(!meterIsSyncs.Any(a=> a.IoTDataType == meterIsSync.IoTDataType && a.ProjectId == meterIsSync.ProjectId && a.SystemName== meterIsSync.SystemName && a.DeviceId== meterIsSync.DeviceId && a.Timestamps== meterIsSync.Timestamps))
meterIsSyncs.Add(meterIsSync);
// 数据库业务ID
@@ -358,11 +359,11 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData
DeviceId = $"{item.DeviceId}",
DeviceType = $"{item.DeviceType}",
ProjectId = $"{item.ProjectId}",
- DataType = analysisBaseDto.DataType,
+ IoTDataType = analysisBaseDto.DataType,
Timestamps = meter.Timestamps,
SingleMeasuring = (IotDbFieldConst.DatabaseBusiID, item.DatabaseBusiID)
};
- if (!meterDataBaseIDs.Any(a => a.DataType == meterIsSync.DataType && a.ProjectId == meterIsSync.ProjectId && a.SystemName == meterIsSync.SystemName && a.DeviceId == meterIsSync.DeviceId && a.Timestamps == meterIsSync.Timestamps))
+ if (!meterDataBaseIDs.Any(a => a.IoTDataType == meterIsSync.IoTDataType && a.ProjectId == meterIsSync.ProjectId && a.SystemName == meterIsSync.SystemName && a.DeviceId == meterIsSync.DeviceId && a.Timestamps == meterIsSync.Timestamps))
meterDataBaseIDs.Add(meterIsDatabaseBusiID);
}
@@ -398,7 +399,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData
if (!data.TimeSpan.HasValue)
data.TimeSpan = analysisBaseDto.ReceivedTime;
// 类型(心跳,登录,上电,掉电)
- if (data.ProjectId > 0)
+ if (!string.IsNullOrWhiteSpace(data.ProjectId))
{
long timestamps = DateTime.Now.GetDateTimeOffset().ToUnixTimeNanoseconds();
var treeData = new TreeModelSingleMeasuringEntity()
@@ -407,7 +408,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData
DeviceId = $"{data.DeviceId}",
DeviceType = $"{data.DeviceType}",
ProjectId = $"{data.ProjectId}",
- DataType = IOTDBDataTypeConst.Status,
+ IoTDataType = IOTDBDataTypeConst.Status,
Timestamps = timestamps,
SingleMeasuring = (data.FiledName!, data.DataValue!)
};
@@ -419,7 +420,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData
DeviceId = $"{data.DeviceId}",
DeviceType = $"{data.DeviceType}",
ProjectId = $"{data.ProjectId}",
- DataType = IOTDBDataTypeConst.Status,
+ IoTDataType = IOTDBDataTypeConst.Status,
Timestamps = timestamps,
SingleMeasuring = (IotDbFieldConst.FrameData, analysisBaseDto.ReceivedHexMessage ?? string.Empty)
};
@@ -433,7 +434,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData
DeviceType = $"{data.DeviceType}",
ProjectId = $"{data.ProjectId}",
Timestamps = timestamps,
- DataType = IOTDBDataTypeConst.Status,
+ IoTDataType = IOTDBDataTypeConst.Status,
SingleMeasuring = (IotDbFieldConst.RecordingTime, data.TimeSpan.HasValue ? data.TimeSpan.Value : DateTime.Now)
};
await _dbProvider.GetSessionPool(false).InsertAsync(treeRecordingTimeData);
@@ -450,7 +451,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData
ProjectId = $"{data.ProjectId}",
DeviceType = $"{data.DeviceType}",
DeviceId = $"{data.DeviceId}",
- DataType = analysisBaseDto.DataType,
+ IoTDataType = analysisBaseDto.DataType,
FocusId = data.FocusId,
FocusAddress = analysisBaseDto.Code,
Timestamps = DateTime.Now.GetDateTimeOffset().ToUnixTimeNanoseconds(),
@@ -500,7 +501,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData
if (!item.TimeSpan.HasValue)
item.TimeSpan = analysisBaseDto.ReceivedTime;
// 类型(心跳,登录,上电,掉电)
- if (item.ProjectId > 0)
+ if (!string.IsNullOrWhiteSpace(item.ProjectId))
{
long timestamps = DateTime.Now.GetDateTimeOffset().ToUnixTimeNanoseconds();
var treeData = new TreeModelSingleMeasuringEntity()
@@ -509,7 +510,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData
DeviceId = $"{item.DeviceId}",
DeviceType = $"{item.DeviceType}",
ProjectId = $"{item.ProjectId}",
- DataType = IOTDBDataTypeConst.Status,
+ IoTDataType = IOTDBDataTypeConst.Status,
Timestamps = timestamps,
SingleMeasuring = (item.FiledName!, item.DataValue!)
};
@@ -520,7 +521,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData
SystemName = _applicationOptions.SystemType,
DeviceType = $"{item.DeviceType}",
ProjectId = $"{item.ProjectId}",
- DataType = IOTDBDataTypeConst.Status,
+ IoTDataType = IOTDBDataTypeConst.Status,
Timestamps = timestamps,
SingleMeasuring = (IotDbFieldConst.FrameData, analysisBaseDto.ReceivedHexMessage ?? string.Empty)
};
@@ -533,7 +534,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData
SystemName = _applicationOptions.SystemType,
DeviceType = $"{item.DeviceType}",
ProjectId = $"{item.ProjectId}",
- DataType = IOTDBDataTypeConst.Status,
+ IoTDataType = IOTDBDataTypeConst.Status,
Timestamps = timestamps,
SingleMeasuring = (IotDbFieldConst.RecordingTime, item.TimeSpan.HasValue ? item.TimeSpan.Value : DateTime.Now)
};
@@ -552,7 +553,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData
ProjectId = $"{item.ProjectId}",
DeviceType = $"{item.DeviceType}",
DeviceId = $"{item.DeviceId}",
- DataType = analysisBaseDto.DataType,
+ IoTDataType = analysisBaseDto.DataType,
Timestamps = DateTime.Now.GetDateTimeOffset().ToUnixTimeNanoseconds(),
DatabaseBusiID = item.DatabaseBusiID,
PendingCopyReadTime = item.TimeSpan!.Value.GetFormatTime(analysisBaseDto.DensityUnit, analysisBaseDto.TimeDensity),
diff --git a/protocols/JiShe.CollectBus.Protocol.T37612012/GlobalUsings.cs b/protocols/JiShe.CollectBus.Protocol.T37612012/GlobalUsings.cs
index 69f2fa7..61e52b6 100644
--- a/protocols/JiShe.CollectBus.Protocol.T37612012/GlobalUsings.cs
+++ b/protocols/JiShe.CollectBus.Protocol.T37612012/GlobalUsings.cs
@@ -3,4 +3,6 @@
global using System.Text;
global using Volo.Abp.Modularity;
global using JiShe.ServicePro.Enums;
-global using JiShe.ServicePro.FreeRedisProvider;
\ No newline at end of file
+global using JiShe.ServicePro.FreeRedisProvider;
+global using JiShe.ServicePro.Consts;
+global using JiShe.ServicePro.Core;
\ No newline at end of file
diff --git a/protocols/JiShe.CollectBus.Protocol.T6452007/GlobalUsings.cs b/protocols/JiShe.CollectBus.Protocol.T6452007/GlobalUsings.cs
new file mode 100644
index 0000000..61e52b6
--- /dev/null
+++ b/protocols/JiShe.CollectBus.Protocol.T6452007/GlobalUsings.cs
@@ -0,0 +1,8 @@
+// Global using directives
+
+global using System.Text;
+global using Volo.Abp.Modularity;
+global using JiShe.ServicePro.Enums;
+global using JiShe.ServicePro.FreeRedisProvider;
+global using JiShe.ServicePro.Consts;
+global using JiShe.ServicePro.Core;
\ No newline at end of file
diff --git a/services/JiShe.CollectBus.Application.Contracts/GlobalUsings.cs b/services/JiShe.CollectBus.Application.Contracts/GlobalUsings.cs
index 0345c2a..6b81fc0 100644
--- a/services/JiShe.CollectBus.Application.Contracts/GlobalUsings.cs
+++ b/services/JiShe.CollectBus.Application.Contracts/GlobalUsings.cs
@@ -8,4 +8,6 @@ global using JiShe.ServicePro.IoTDBManagement.Options;
global using JiShe.ServicePro.IoTDBManagement.SessionPools;
global using JiShe.ServicePro.IoTDBManagement.TableModels;
global using JiShe.ServicePro.Kafka.Consts;
-global using JiShe.ServicePro.Kafka.Internal;
\ No newline at end of file
+global using JiShe.ServicePro.Kafka.Internal;
+global using JiShe.ServicePro.Consts;
+global using JiShe.ServicePro.Core;
\ No newline at end of file
diff --git a/services/JiShe.CollectBus.Application/GlobalUsings.cs b/services/JiShe.CollectBus.Application/GlobalUsings.cs
index 2c4c3a8..998ad2c 100644
--- a/services/JiShe.CollectBus.Application/GlobalUsings.cs
+++ b/services/JiShe.CollectBus.Application/GlobalUsings.cs
@@ -12,3 +12,5 @@ global using JiShe.ServicePro.Kafka.Internal;
global using JiShe.ServicePro.Kafka.Attributes;
global using JiShe.ServicePro.FreeSqlProvider;
global using JiShe.ServicePro.Kafka.Producer;
+global using JiShe.ServicePro.Consts;
+global using JiShe.ServicePro.Core;
diff --git a/services/JiShe.CollectBus.Application/JiShe.CollectBus.Application.csproj b/services/JiShe.CollectBus.Application/JiShe.CollectBus.Application.csproj
index e70ad23..96ad2e7 100644
--- a/services/JiShe.CollectBus.Application/JiShe.CollectBus.Application.csproj
+++ b/services/JiShe.CollectBus.Application/JiShe.CollectBus.Application.csproj
@@ -9,6 +9,12 @@
True
+
+
+
+
+
+
@@ -30,8 +36,4 @@
-
-
-
-
diff --git a/services/JiShe.CollectBus.Application/ScheduledMeterReading/BasicScheduledMeterReadingService.cs b/services/JiShe.CollectBus.Application/ScheduledMeterReading/BasicScheduledMeterReadingService.cs
index 87909e3..8e04734 100644
--- a/services/JiShe.CollectBus.Application/ScheduledMeterReading/BasicScheduledMeterReadingService.cs
+++ b/services/JiShe.CollectBus.Application/ScheduledMeterReading/BasicScheduledMeterReadingService.cs
@@ -1,16 +1,16 @@
using JiShe.CollectBus.Common;
using JiShe.CollectBus.Common.Consts;
using JiShe.CollectBus.Common.DeviceBalanceControl;
-using JiShe.CollectBus.Common.Encrypt;
using JiShe.CollectBus.Common.Enums;
using JiShe.CollectBus.Common.Extensions;
-using JiShe.CollectBus.Common.Helpers;
using JiShe.CollectBus.Common.Models;
using JiShe.CollectBus.DataChannels;
using JiShe.CollectBus.GatherItem;
using JiShe.CollectBus.IotSystems.Ammeters;
using JiShe.CollectBus.Protocol.Interfaces;
using JiShe.CollectBus.Protocol.Models;
+using JiShe.ServicePro.Core;
+using JiShe.ServicePro.Encrypt;
using Mapster;
using Microsoft.Extensions.Logging;
using Microsoft.Extensions.Options;
@@ -1524,7 +1524,7 @@ namespace JiShe.CollectBus.ScheduledMeterReading
return new MeterReadingTelemetryPacketInfo()
{
SystemName = SystemType,
- ProjectId = $"{ammeterInfo.ProjectID}",
+ ProjectId = $"{ammeterInfo.ProjectId}",
DeviceType = $"{MeterTypeEnum.Ammeter}",
DeviceId = $"{ammeterInfo.MeterId}",
Timestamps = timestamps,
diff --git a/services/JiShe.CollectBus.Application/ScheduledMeterReading/EnergySystemScheduledMeterReadingService.cs b/services/JiShe.CollectBus.Application/ScheduledMeterReading/EnergySystemScheduledMeterReadingService.cs
index 6cfcb13..a76c551 100644
--- a/services/JiShe.CollectBus.Application/ScheduledMeterReading/EnergySystemScheduledMeterReadingService.cs
+++ b/services/JiShe.CollectBus.Application/ScheduledMeterReading/EnergySystemScheduledMeterReadingService.cs
@@ -7,6 +7,8 @@ using JiShe.CollectBus.GatherItem;
using JiShe.CollectBus.IotSystems.Ammeters;
using JiShe.CollectBus.Protocol.Interfaces;
using JiShe.CollectBus.Protocol.Models;
+using JiShe.ServicePro.Consts;
+using JiShe.ServicePro.Core;
using Microsoft.AspNetCore.Authorization;
using Microsoft.Extensions.Logging;
using Microsoft.Extensions.Options;
@@ -210,9 +212,14 @@ namespace JiShe.CollectBus.ScheduledMeterReading
TimeDensity = 15,
BrandType = "DTS1980",
Password = "000000",
- ProjectID = 1,
MeterType = MeterTypeEnum.Ammeter,
MeteringPort = MeteringPortConst.MeteringPortTwo,
+ SystemName = SystemType,
+ IoTDataType = IOTDBDataTypeConst.Data,
+ ProjectId = "1",
+ DeviceType = JiShe.ServicePro.Enums.MeterTypeEnum.Ammeter.ToString(),
+ DeviceId = "78973",
+
});
FreeRedisProvider.Instance.Set(redisCacheDeviceCacheInfoHashKeyTemp, ammeterInfos);
@@ -591,18 +598,22 @@ namespace JiShe.CollectBus.ScheduledMeterReading
BrandType = "云集",
MeterTypeName = "水表",
MeterType = MeterTypeEnum.WaterMeter,
- ProjectID = 1,
MeteringPort = MeteringPortConst.MeteringPortTwo,
Password = "000000",
LinkType = "RS-485",
TimesRate = 1.0000m,
Protocol = 30,
+ SystemName = SystemType,
+ IoTDataType = IOTDBDataTypeConst.Data,
+ ProjectId = "1",
+ DeviceType = JiShe.ServicePro.Enums.MeterTypeEnum.WaterMeter.ToString(),
+ DeviceId = "1025",
});
FreeRedisProvider.Instance.Set(redisCacheDeviceCacheInfoHashKeyTemp, DeviceCacheInfos);
}
-
- return DeviceCacheInfos;
+
+ return DeviceCacheInfos;
#else
string sql = $@"SELECT
A.ID as MeterId,
diff --git a/services/JiShe.CollectBus.Domain/GlobalUsings.cs b/services/JiShe.CollectBus.Domain/GlobalUsings.cs
index 69f2fa7..61e52b6 100644
--- a/services/JiShe.CollectBus.Domain/GlobalUsings.cs
+++ b/services/JiShe.CollectBus.Domain/GlobalUsings.cs
@@ -3,4 +3,6 @@
global using System.Text;
global using Volo.Abp.Modularity;
global using JiShe.ServicePro.Enums;
-global using JiShe.ServicePro.FreeRedisProvider;
\ No newline at end of file
+global using JiShe.ServicePro.FreeRedisProvider;
+global using JiShe.ServicePro.Consts;
+global using JiShe.ServicePro.Core;
\ No newline at end of file
diff --git a/services/JiShe.CollectBus.Domain/IotSystems/Ammeters/AmmeterInfo.cs b/services/JiShe.CollectBus.Domain/IotSystems/Ammeters/AmmeterInfo.cs
index 7a732b3..8a9d854 100644
--- a/services/JiShe.CollectBus.Domain/IotSystems/Ammeters/AmmeterInfo.cs
+++ b/services/JiShe.CollectBus.Domain/IotSystems/Ammeters/AmmeterInfo.cs
@@ -1,5 +1,6 @@
using FreeSql.DataAnnotations;
using JiShe.CollectBus.Common.Models;
+using JiShe.ServicePro.Core;
using JiShe.ServicePro.FreeRedisProvider;
using System;
using System.Collections.Generic;
@@ -21,7 +22,7 @@ namespace JiShe.CollectBus.IotSystems.Ammeters
/// ZSet排序索引分数值,具体值可以根据不同业务场景进行定义,例如时间戳
///
[Column(IsIgnore = true)]
- public override long ScoreValue => Common.Helpers.CommonHelper.GetFocusScores(FocusAddress,MeteringCode);
+ public override long ScoreValue => CommonHelper.GetFocusScores(FocusAddress,MeteringCode);
///
/// 电表名称
diff --git a/services/JiShe.CollectBus.Domain/Protocol3761/Dto/AnalysisBaseDto.cs b/services/JiShe.CollectBus.Domain/Protocol3761/Dto/AnalysisBaseDto.cs
index 94434e8..6a6e8a2 100644
--- a/services/JiShe.CollectBus.Domain/Protocol3761/Dto/AnalysisBaseDto.cs
+++ b/services/JiShe.CollectBus.Domain/Protocol3761/Dto/AnalysisBaseDto.cs
@@ -45,7 +45,7 @@ namespace JiShe.CollectBus.Protocol.Contracts.Protocol.Dto
///
/// 项目Id
///
- public int ProjectId { get; set; }
+ public string ProjectId { get; set; }
///
/// 设备ID(电表ID,水表ID,气表ID,集中器ID等)
diff --git a/shared/JiShe.CollectBus.Common/Consts/CommonConst.cs b/shared/JiShe.CollectBus.Common/Consts/CommonConst.cs
deleted file mode 100644
index c3f1e9a..0000000
--- a/shared/JiShe.CollectBus.Common/Consts/CommonConst.cs
+++ /dev/null
@@ -1,41 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace JiShe.CollectBus.Common.Consts
-{
- ///
- /// 常用常量管理
- ///
- public class CommonConst
- {
-
- ///
- /// Kafka
- ///
- public const string Kafka = "Kafka";
-
- ///
- /// 服务器标识
- ///
- public const string ServerTagName = $"{Kafka}:ServerTagName";
-
- ///
- /// Kafka副本数量
- ///
- public const string KafkaReplicationFactor = $"{Kafka}:KafkaReplicationFactor";
-
- ///
- /// Kafka主题分区数量
- ///
- public const string NumPartitions = $"{Kafka}:NumPartitions";
-
- ///
- /// 首次采集时间
- ///
- public const string FirstCollectionTime = "FirstCollectionTime";
-
- }
-}
diff --git a/shared/JiShe.CollectBus.Common/Consts/IOTDBDataTypeConst.cs b/shared/JiShe.CollectBus.Common/Consts/IOTDBDataTypeConst.cs
deleted file mode 100644
index 872c099..0000000
--- a/shared/JiShe.CollectBus.Common/Consts/IOTDBDataTypeConst.cs
+++ /dev/null
@@ -1,39 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace JiShe.CollectBus.Common.Consts
-{
- ///
- /// IOTDB数据树类型
- ///
- public class IOTDBDataTypeConst
- {
- ///
- /// 数据
- ///
- public const string Data = "Data";
-
- ///
- /// 事件
- ///
- public const string Event = "Event";
-
- ///
- /// 状态
- ///
- public const string Status = "Status";
-
- ///
- /// 日志
- ///
- public const string Log = "Log";
-
- ///
- /// 参数
- ///
- public const string Param= "Param";
- }
-}
diff --git a/shared/JiShe.CollectBus.Common/Consts/MeteringPortConst.cs b/shared/JiShe.CollectBus.Common/Consts/MeteringPortConst.cs
deleted file mode 100644
index c65b027..0000000
--- a/shared/JiShe.CollectBus.Common/Consts/MeteringPortConst.cs
+++ /dev/null
@@ -1,24 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace JiShe.CollectBus.Common.Consts
-{
- ///
- /// 计量端口常量
- ///
- public class MeteringPortConst
- {
- ///
- /// 计量端口1
- ///
- public const int MeteringPortOne = 1;
-
- ///
- /// 计量端口2
- ///
- public const int MeteringPortTwo = 2;
- }
-}
diff --git a/shared/JiShe.CollectBus.Common/DeviceBalanceControl/DeviceGroupBalanceControl.cs b/shared/JiShe.CollectBus.Common/DeviceBalanceControl/DeviceGroupBalanceControl.cs
deleted file mode 100644
index 470efe7..0000000
--- a/shared/JiShe.CollectBus.Common/DeviceBalanceControl/DeviceGroupBalanceControl.cs
+++ /dev/null
@@ -1,431 +0,0 @@
-using System;
-using System.Collections.Concurrent;
-using System.Collections.Generic;
-using System.Diagnostics;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using Volo.Abp.DependencyInjection;
-
-namespace JiShe.CollectBus.Common.DeviceBalanceControl
-{
- ///
- /// 设备组负载控制
- ///
- public class DeviceGroupBalanceControl
- {
- private static readonly object _syncRoot = new object();
-
- private static volatile CacheState _currentCache;
-
- ///
- /// 使用ConcurrentDictionary保证线程安全的设备分组映射
- ///
- private sealed class CacheState
- {
- public readonly ConcurrentDictionary BalancedMapping;
- public readonly List[] CachedGroups;
-
- public CacheState(int groupCount)
- {
- BalancedMapping = new ConcurrentDictionary();
- CachedGroups = new List[groupCount];
- for (int i = 0; i < groupCount; i++)
- {
- CachedGroups[i] = new List();
- }
- }
- }
-
- ///
- /// 初始化或增量更新缓存
- ///
- public static void InitializeCache(List deviceList, int groupCount = 30)
- {
- if (deviceList == null || deviceList.Count <= 0)
- {
- throw new ArgumentException($"{nameof(InitializeCache)} 设备分组初始化失败,设备数据为空");
- }
-
- if (groupCount > 60 || groupCount <= 0)
- {
- groupCount = 60;
- }
-
- lock (_syncRoot)
- {
- // 首次初始化
- if (_currentCache == null)
- {
- var newCache = new CacheState(groupCount);
- UpdateCacheWithDevices(newCache, deviceList, groupCount);
- _currentCache = newCache;
- }
- // 后续增量更新
- else
- {
- if (_currentCache.CachedGroups.Length != groupCount)
- {
- throw new ArgumentException($"{nameof(InitializeCache)} 设备分组初始化完成以后,分组数量不能更改");
- }
-
- var clonedCache = CloneExistingCache();
- UpdateCacheWithDevices(clonedCache, deviceList, groupCount);
- _currentCache = clonedCache;
- }
- }
- }
-
- ///
- /// 带锁的缓存克隆(写入时复制)
- ///
- private static CacheState CloneExistingCache()
- {
- var oldCache = _currentCache;
- var newCache = new CacheState(oldCache.CachedGroups.Length);
-
- // 复制已有映射
- foreach (var kvp in oldCache.BalancedMapping)
- {
- newCache.BalancedMapping.TryAdd(kvp.Key, kvp.Value);
- }
-
- // 复制分组数据
- for (int i = 0; i < oldCache.CachedGroups.Length; i++)
- {
- newCache.CachedGroups[i].AddRange(oldCache.CachedGroups[i]);
- }
-
- return newCache;
- }
-
- ///
- /// 更新设备到缓存
- ///
- private static void UpdateCacheWithDevices(CacheState cache, List deviceList, int groupCount)
- {
- foreach (var deviceId in deviceList)
- {
- // 原子操作:如果设备不存在则计算分组
- cache.BalancedMapping.GetOrAdd(deviceId, id =>
- {
- int groupId = GetGroupId(id, groupCount);
- lock (cache.CachedGroups[groupId])
- {
- cache.CachedGroups[groupId].Add(id);
- }
- return groupId;
- });
- }
- }
-
- ///
- /// 并行处理泛型数据集(支持动态线程分配)
- ///
- /// 已经分组的设备信息
- /// 部分或者全部的已经分组的设备集合
- /// 从泛型对象提取deviceId
- /// 处理委托(参数:当前对象,线程ID)
- /// 可选线程限制
- ///
- ///
- public static async Task ProcessGenericListAsync(
- List items, Func deviceIdSelector, Action processor, int? maxThreads = null)
- {
- var cache = _currentCache ?? throw new InvalidOperationException("缓存未初始化");
-
- // 创建分组任务队列
- var groupQueues = new ConcurrentQueue[cache.CachedGroups.Length];
- for (int i = 0; i < groupQueues.Length; i++)
- {
- groupQueues[i] = new ConcurrentQueue();
- }
-
- // 阶段1:分发数据到分组队列
- Parallel.ForEach(items, item =>
- {
- var deviceId = deviceIdSelector(item);
- if (cache.BalancedMapping.TryGetValue(deviceId, out int groupId))
- {
- groupQueues[groupId].Enqueue(item);
- }
- });
-
- if ((maxThreads.HasValue && maxThreads.Value > cache.CachedGroups.Length) || maxThreads.HasValue == false)
- {
- maxThreads = cache.CachedGroups.Length;
- }
-
- // 阶段2:并行处理队列
- var options = new ParallelOptions
- {
- MaxDegreeOfParallelism = maxThreads.Value,
- };
-
- await Task.Run(() =>
- {
- Parallel.For(0, cache.CachedGroups.Length, options, async groupId =>
- {
- var queue = groupQueues[groupId];
- while (queue.TryDequeue(out T item))
- {
- processor(item, groupId);
- }
- });
- });
- }
-
-
- ///
- /// 智能节流处理(CPU友好型)
- ///
- /// 已经分组的设备信息
- /// 部分或者全部的已经分组的设备集合
- /// 从泛型对象提取deviceId
- /// 处理委托(参数:当前对象,分组ID)
- /// 可选最佳并发度
- ///
- ///
- public static async Task ProcessWithThrottleAsync(
- List items,
- Func deviceIdSelector,
- Action processor,
- int? maxConcurrency = null)
- {
- var cache = _currentCache ?? throw new InvalidOperationException("缓存未初始化");
- //var timer = Stopwatch.StartNew();
-
- // 自动计算最佳并发度
- int recommendedThreads = CalculateOptimalThreadCount();
- if ((maxConcurrency.HasValue && maxConcurrency.Value > cache.CachedGroups.Length) || maxConcurrency.HasValue == false)
- {
- maxConcurrency = cache.CachedGroups.Length;
- }
-
- int actualThreads = maxConcurrency ?? recommendedThreads;
-
-
- // 创建节流器
- using var throttler = new SemaphoreSlim(initialCount: actualThreads);
-
- // 使用LongRunning避免线程池饥饿
- var tasks = items.Select(async item =>
- {
- await throttler.WaitAsync();
- try
- {
- var deviceId = deviceIdSelector(item);
- if (cache.BalancedMapping.TryGetValue(deviceId, out int groupId))
- {
- // 分组级处理(保持顺序性)
- await ProcessItemAsync(item, processor, groupId);
- }
- }
- finally
- {
- throttler.Release();
- }
- });
-
- await Task.WhenAll(tasks);
- //timer.Stop();
- //Console.WriteLine($"任务处理完成,耗时:{timer.ElapsedMilliseconds}ms");
- }
-
- ///
- /// 自动计算最优线程数
- ///
- public static int CalculateOptimalThreadCount()
- {
- int coreCount = Environment.ProcessorCount;
- return Math.Min(
- coreCount * 8, // 超线程优化
- _currentCache?.CachedGroups.Length ?? 60
- );
- }
-
- ///
- /// 分组异步处理(带节流)
- ///
- private static async Task ProcessItemAsync(T item, Action processor, int groupId)
- {
- // 使用内存缓存降低CPU负载
- await Task.Yield(); // 立即释放当前线程
-
- // 分组处理上下文
- var context = ExecutionContext.Capture();
- ThreadPool.QueueUserWorkItem(_ =>
- {
- ExecutionContext.Run(context!, state =>
- {
- processor(item,groupId);
- }, null);
- });
- }
-
-
- ///
- /// 通过 deviceId 获取所在的分组集合
- ///
- public static List GetGroup(string deviceId)
- {
- var cache = _currentCache;
- if (cache == null)
- throw new InvalidOperationException("缓存未初始化");
-
- return cache.CachedGroups[cache.BalancedMapping[deviceId]];
- }
-
- ///
- /// 通过 deviceId 获取分组Id
- ///
- public static int GetDeviceGroupId(string deviceId)
- {
- var cache = _currentCache;
- if (cache == null)
- throw new InvalidOperationException("缓存未初始化");
-
- return cache.BalancedMapping[deviceId];
- }
-
-
- ///
- /// 创建均衡映射表
- ///
- /// 数据集合
- /// 分组数量
- /// 允许的最大偏差百分比
- ///
- public static Dictionary CreateBalancedMapping(List deviceList, int groupCount, int maxDeviation = 5)
- {
- var mapping = new Dictionary();
- int targetPerGroup = deviceList.Count / groupCount;
- int maxAllowed = (int)(targetPerGroup * (1 + maxDeviation / 100.0));
-
- // 初始化分组计数器
- int[] groupCounters = new int[groupCount];
-
- foreach (var deviceId in deviceList)
- {
- int preferredGroup = GetGroupId(deviceId, groupCount);
-
- // 如果首选分组未满,直接分配
- if (groupCounters[preferredGroup] < maxAllowed)
- {
- mapping[deviceId] = preferredGroup;
- groupCounters[preferredGroup]++;
- }
- else
- {
- // 寻找当前最空闲的分组
- int fallbackGroup = Array.IndexOf(groupCounters, groupCounters.Min());
- mapping[deviceId] = fallbackGroup;
- groupCounters[fallbackGroup]++;
- }
- }
-
- return mapping;
- }
-
- ///
- /// 分析分组分布
- ///
- ///
- ///
- ///
- public static Dictionary AnalyzeDistribution(List deviceList, int groupCount)
- {
- Dictionary distribution = new Dictionary();
- foreach (var deviceId in deviceList)
- {
- int groupId = GetGroupId(deviceId, groupCount);
- distribution[groupId] = distribution.TryGetValue(groupId, out var count) ? count + 1 : 1;
- }
- return distribution;
- }
-
- ///
- /// 获取设备ID对应的分组ID
- ///
- ///
- ///
- ///
- public static int GetGroupId(string deviceId, int groupCount)
- {
- int hash = Fnv1aHash(deviceId);
- // 双重取模确保分布均匀
- return (hash % groupCount + groupCount) % groupCount;
- }
-
- ///
- /// FNV-1a哈希算法
- ///
- ///
- ///
- public static int Fnv1aHash(string input)
- {
- const uint fnvPrime = 16777619;
- const uint fnvOffsetBasis = 2166136261;
-
- uint hash = fnvOffsetBasis;
- foreach (char c in input)
- {
- hash ^= (byte)c;
- hash *= fnvPrime;
- }
- return (int)hash;
- }
-
- ///
- /// CRC16算法实现
- ///
- ///
- ///
- public static ushort CRC16Hash(byte[] bytes)
- {
- ushort crc = 0xFFFF;
- for (int i = 0; i < bytes.Length; i++)
- {
- crc ^= bytes[i];
- for (int j = 0; j < 8; j++)
- {
- if ((crc & 0x0001) == 1)
- {
- crc = (ushort)((crc >> 1) ^ 0xA001);
- }
- else
- {
- crc >>= 1;
- }
- }
- }
- return crc;
- }
-
- ///
- /// 打印分组统计数据
- ///
- public static void PrintDistributionStats()
- {
- var cache = _currentCache;
- if (cache == null)
- {
- Console.WriteLine("缓存未初始化");
- return;
- }
-
- var stats = cache.CachedGroups
- .Select((group, idx) => new { GroupId = idx, Count = group.Count })
- .OrderBy(x => x.GroupId);
-
- Console.WriteLine("分组数据量统计:");
- foreach (var stat in stats)
- {
- Console.WriteLine($"Group {stat.GroupId}: {stat.Count} 条数据");
- }
-
- Console.WriteLine($"总共: {stats.Sum(d=>d.Count)} 条数据");
- }
-
- }
-}
diff --git a/shared/JiShe.CollectBus.Common/Encrypt/EncryptUtil.cs b/shared/JiShe.CollectBus.Common/Encrypt/EncryptUtil.cs
deleted file mode 100644
index 72cdf41..0000000
--- a/shared/JiShe.CollectBus.Common/Encrypt/EncryptUtil.cs
+++ /dev/null
@@ -1,65 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Security.Cryptography;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace JiShe.CollectBus.Common.Encrypt
-{
- ///
- /// 各种加密辅助类
- ///
- public static class EncryptUtil
- {
- #region MD5加密
-
- ///
- /// MD5加密
- ///
- public static string Md5Fun(this string value)
- {
- if (value == null)
- {
- throw new ArgumentNullException("未将对象引用设置到对象的实例。");
- }
-
- var encoding = Encoding.UTF8;
- MD5 md5 = MD5.Create();
- return HashAlgorithmBase(md5, value, encoding);
- }
-
- ///
- /// 加权MD5加密
- ///
- public static string Md5Fun(this string value, string salt)
- {
- return salt == null ? value.Md5Fun() : (value + "『" + salt + "』").Md5Fun();
- }
-
- #endregion
-
- ///
- /// HashAlgorithm 加密统一方法
- ///
- private static string HashAlgorithmBase(HashAlgorithm hashAlgorithmObj, string source, Encoding encoding)
- {
- byte[] btStr = encoding.GetBytes(source);
- byte[] hashStr = hashAlgorithmObj.ComputeHash(btStr);
- return hashStr.Bytes2Str();
- }
-
- ///
- /// 转换成字符串
- ///
- private static string Bytes2Str(this IEnumerable source, string formatStr = "{0:X2}")
- {
- StringBuilder pwd = new StringBuilder();
- foreach (byte btStr in source)
- {
- pwd.AppendFormat(formatStr, btStr);
- }
- return pwd.ToString();
- }
- }
-}
diff --git a/shared/JiShe.CollectBus.Common/Helpers/BusJsonSerializer.cs b/shared/JiShe.CollectBus.Common/Helpers/BusJsonSerializer.cs
deleted file mode 100644
index 713501e..0000000
--- a/shared/JiShe.CollectBus.Common/Helpers/BusJsonSerializer.cs
+++ /dev/null
@@ -1,204 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Text.Encodings.Web;
-using System.Text.Json.Serialization;
-using System.Text.Json;
-using System.Threading.Tasks;
-
-namespace JiShe.CollectBus.Common.Helpers
-{
- ///
- /// json帮助类
- ///
- public static class BusJsonSerializer
- {
- ///
- /// json对象转换成字符串
- ///
- /// 需要序列化的对象
- /// 是否忽略实体中实体,不再序列化里面包含的实体
- /// 配置
- ///
- public static string Serialize(this object obj, bool IsIgnore = false, JsonSerializerOptions jsonSerializerOptions = null)
- {
- if (jsonSerializerOptions == null)
- {
- jsonSerializerOptions = new JsonSerializerOptions
- {
- DefaultIgnoreCondition = JsonIgnoreCondition.Never,
- WriteIndented = false,// 设置格式化输出
- Encoder = JavaScriptEncoder.UnsafeRelaxedJsonEscaping,// 允许特殊字符
- IgnoreReadOnlyFields = true,
- IgnoreReadOnlyProperties = true,
- NumberHandling = JsonNumberHandling.AllowReadingFromString, // 允许数字字符串
- AllowTrailingCommas = true, // 忽略尾随逗号
- ReadCommentHandling = JsonCommentHandling.Skip, // 忽略注释
- PropertyNameCaseInsensitive = true, // 属性名称大小写不敏感
- PropertyNamingPolicy = JsonNamingPolicy.CamelCase, // 属性名称使用驼峰命名规则
- Converters = { new DateTimeJsonConverter() }, // 注册你的自定义转换器,
- DefaultBufferSize = 4096,
- };
- }
-
- if (IsIgnore == true)
- {
- jsonSerializerOptions.ReferenceHandler = ReferenceHandler.IgnoreCycles; // 忽略循环引用
-
- return JsonSerializer.Serialize(obj, jsonSerializerOptions);
- }
- else
- {
- return JsonSerializer.Serialize(obj, jsonSerializerOptions);
- }
- }
-
- ///
- /// json字符串转换成json对象
- ///
- ///
- ///
- /// 是否忽略实体中实体,不再序列化里面包含的实体
- /// 配置
- ///
- public static T? Deserialize(this string json, bool IsIgnore = false, JsonSerializerOptions jsonSerializerOptions = null)
- {
- if (jsonSerializerOptions == null)
- {
- jsonSerializerOptions = new JsonSerializerOptions
- {
- DefaultIgnoreCondition = JsonIgnoreCondition.Never,
- WriteIndented = false,// 设置格式化输出
- Encoder = JavaScriptEncoder.UnsafeRelaxedJsonEscaping,// 允许特殊字符
- IgnoreReadOnlyFields = true,
- IgnoreReadOnlyProperties = true,
- NumberHandling = JsonNumberHandling.AllowReadingFromString, // 允许数字字符串
- AllowTrailingCommas = true, // 忽略尾随逗号
- ReadCommentHandling = JsonCommentHandling.Skip, // 忽略注释
- PropertyNameCaseInsensitive = true, // 属性名称大小写不敏感
- PropertyNamingPolicy = JsonNamingPolicy.CamelCase, // 属性名称使用驼峰命名规则
- Converters = { new DateTimeJsonConverter() }, // 注册你的自定义转换器,
- DefaultBufferSize = 4096,
- };
- }
-
- if (IsIgnore == true)
- {
- jsonSerializerOptions.ReferenceHandler = ReferenceHandler.IgnoreCycles; // 忽略循环引用
-
- return json == null ? default(T) : JsonSerializer.Deserialize(json, jsonSerializerOptions);
- }
- else
- {
- return json == null ? default(T) : JsonSerializer.Deserialize(json, jsonSerializerOptions);
- }
- }
-
- ///
- /// json字符串转换成json对象
- ///
- ///
- ///
- /// 是否忽略实体中实体,不再序列化里面包含的实体
- /// 配置
- ///
- public static object? Deserialize(this string json, Type type, bool IsIgnore = false, JsonSerializerOptions jsonSerializerOptions = null)
- {
- if (jsonSerializerOptions == null)
- {
- jsonSerializerOptions = new JsonSerializerOptions
- {
- DefaultIgnoreCondition = JsonIgnoreCondition.Never,
- WriteIndented = false,// 设置格式化输出
- Encoder = JavaScriptEncoder.UnsafeRelaxedJsonEscaping,// 允许特殊字符
- IgnoreReadOnlyFields = true,
- IgnoreReadOnlyProperties = true,
- NumberHandling = JsonNumberHandling.AllowReadingFromString, // 允许数字字符串
- AllowTrailingCommas = true, // 忽略尾随逗号
- ReadCommentHandling = JsonCommentHandling.Skip, // 忽略注释
- PropertyNameCaseInsensitive = true, // 属性名称大小写不敏感
- PropertyNamingPolicy = JsonNamingPolicy.CamelCase, // 属性名称使用驼峰命名规则
- Converters = { new DateTimeJsonConverter() } // 注册你的自定义转换器,
- };
- }
-
-
-
- if (IsIgnore == true)
- {
- jsonSerializerOptions.ReferenceHandler = ReferenceHandler.IgnoreCycles; // 忽略循环引用
-
- return json == null ? null : JsonSerializer.Deserialize(json, type, jsonSerializerOptions);
- }
- else
- {
- return json == null ? null : JsonSerializer.Deserialize(json, type, jsonSerializerOptions);
- }
- }
-
- ///
- /// list json字符串转换成list
- ///
- ///
- ///
- ///
- public static List? DeserializeToList(this string json)
- {
- return json == null ? default(List) : Deserialize>(json);
- }
- }
-
-
- public class DateTimeJsonConverter : JsonConverter
- {
- private readonly string _dateFormatString;
- public DateTimeJsonConverter()
- {
- _dateFormatString = "yyyy-MM-dd HH:mm:ss";
- }
-
- public DateTimeJsonConverter(string dateFormatString)
- {
- _dateFormatString = dateFormatString;
- }
-
- public override DateTime Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
- {
- return DateTime.Parse(reader.GetString());
- }
-
- public override void Write(Utf8JsonWriter writer, DateTime value, JsonSerializerOptions options)
- {
- writer.WriteStringValue(value.ToString(_dateFormatString));
- }
- }
-
- ///
- /// Unix格式时间格式化
- ///
- public class UnixTimeConverter : JsonConverter
- {
- public override DateTime Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
- {
- if (reader.TokenType == JsonTokenType.String)
- {
- if (long.TryParse(reader.GetString(), out long timestamp))
- return DateTimeOffset.FromUnixTimeSeconds(timestamp).DateTime;
- }
-
- if (reader.TokenType == JsonTokenType.Number)
- {
- long timestamp = reader.GetInt64();
- return DateTimeOffset.FromUnixTimeSeconds(timestamp).DateTime;
- }
- return reader.GetDateTime();
- }
-
- public override void Write(Utf8JsonWriter writer, DateTime value, JsonSerializerOptions options)
- {
- long timestamp = new DateTimeOffset(value).ToUnixTimeSeconds();
- writer.WriteStringValue(timestamp.ToString());
- }
- }
-}
diff --git a/shared/JiShe.CollectBus.Common/Helpers/CommonHelper.cs b/shared/JiShe.CollectBus.Common/Helpers/CommonHelper.cs
deleted file mode 100644
index 7c7ef1f..0000000
--- a/shared/JiShe.CollectBus.Common/Helpers/CommonHelper.cs
+++ /dev/null
@@ -1,936 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.ComponentModel.DataAnnotations;
-using System.ComponentModel;
-using System.Linq;
-using System.Reflection;
-using System.Runtime.InteropServices;
-using System.Security.Cryptography;
-using System.Text;
-using System.Threading.Tasks;
-using JiShe.CollectBus.Common.Attributes;
-using System.Collections.Specialized;
-using JiShe.CollectBus.Common.Enums;
-using Newtonsoft.Json.Linq;
-
-namespace JiShe.CollectBus.Common.Helpers
-{
- public static class CommonHelper
- {
- ///
- /// 获得无符号GUID
- ///
- ///
- public static string GetGUID()
- {
- return Guid.NewGuid().ToString("N");
- }
-
- ///
- /// 获取时间戳
- ///
- /// 是否返回秒,false返回毫秒
- ///
- public static long GetTimeStampTen(bool isSeconds)
- {
- if (isSeconds)
- {
- return DateTimeOffset.UtcNow.ToUnixTimeSeconds();
- }
- else
- {
- return DateTimeOffset.UtcNow.ToUnixTimeMilliseconds();
- }
- }
-
- ///
- /// 获取指定长度的随机数
- ///
- ///
- ///
- public static string GetRandomNumber(int length = 8)
- {
- if (length <= 8)
- {
- length = 8;
- }
-
- if (length > 31)
- {
- length = 32;
- }
-
- var randomArray = RandomNumberGenerator.GetBytes(length);
- StringBuilder stringBuilder = new StringBuilder();
- foreach (var item in randomArray)
- {
- stringBuilder.Append(item);
- }
-
- return stringBuilder.ToString().Substring(0, length);
- }
-
- ///
- /// C#反射遍历对象属性获取键值对
- ///
- /// 对象类型
- /// 对象
- public static Dictionary GetClassProperties(T model)
- {
- Type t = model.GetType();
- List propertyList = new List();
-
- PropertyInfo[] tempPropertyList = t.GetProperties();
- if (tempPropertyList != null && tempPropertyList.Length > 0)
- {
- propertyList.AddRange(tempPropertyList);
- }
-
- var parentPropertyInfo = t.BaseType?.GetProperties();
- if (parentPropertyInfo != null && parentPropertyInfo.Length > 0)
- {
- foreach (var item in parentPropertyInfo)
- {
- if (!propertyList.Any(d => d.Name == item.Name)) //如果子类已经包含父类的属性或者字段,跳过不处理
- {
- propertyList.Add(item);
- }
- }
- }
-
- Dictionary resultData = new Dictionary();
-
- foreach (PropertyInfo item in propertyList)
- {
- resultData.Add(item.Name, item.GetValue(model, null));
- }
-
- return resultData;
- }
-
- ///
- /// C#反射遍历对象属性,将键值对赋值给属性
- ///
- public static object SetClassProperties(string typeModel, Dictionary keyValues)
- {
- if (keyValues.Count <= 0)
- {
- return null;
- }
-
- Type tType = Type.GetType(typeModel);
-
-
- PropertyInfo[] PropertyList = tType.GetProperties();
-
- object objModel = tType.Assembly.CreateInstance(tType.FullName);
- foreach (PropertyInfo item in PropertyList)
- {
- if (keyValues.ContainsKey(item.Name))
- {
- object objectValue = keyValues[item.Name];
- item.SetValue(objModel, objectValue);
- }
- }
-
- return objModel;
- }
-
-
-
- ///
- /// 获取指定枚举的所有 Attribute 说明以及value组成的键值对
- ///
- /// 对象类
- /// false获取字段、true获取属性
- ///
- public static List GetEnumAttributeList(Type type, bool getPropertie = false)
- {
- if (type == null)
- {
- return null;
- }
-
- List selectResults = new List();
- List memberInfos = new List();
-
- if (getPropertie == false)
- {
- FieldInfo[] fieldArray = type.GetFields();
- if (null == fieldArray || fieldArray.Length <= 0)
- {
- return null;
- }
-
- memberInfos.AddRange(fieldArray);
- //获取父类的字段
- var parentFieldInfo = type.BaseType?.GetFields();
- if (parentFieldInfo != null && parentFieldInfo.Length > 0)
- {
- foreach (var item in parentFieldInfo)
- {
- if (!memberInfos.Any(d => d.Name == item.Name)) //如果子类已经包含父类的属性或者字段,跳过不处理
- {
- memberInfos.Add(item);
- }
- }
- }
- }
- else
- {
- PropertyInfo[] properties = type.GetProperties();
- if (null == properties || properties.Length <= 0)
- {
- return null;
- }
-
- memberInfos.AddRange(properties);
- //获取父类的属性
- var parentPropertyInfo = type.BaseType?.GetProperties();
- if (parentPropertyInfo != null && parentPropertyInfo.Length > 0)
- {
- foreach (var item in parentPropertyInfo)
- {
- if (!memberInfos.Any(d => d.Name == item.Name)) //如果子类已经包含父类的属性或者字段,跳过不处理
- {
- memberInfos.Add(item);
- }
- }
- }
- }
-
- foreach (var item in memberInfos)
- {
- DescriptionAttribute[] EnumAttributes =
- (DescriptionAttribute[])item.GetCustomAttributes(typeof(DescriptionAttribute), false);
-
- dynamic infoObject = null;
- if (getPropertie == false)
- {
- infoObject = (FieldInfo)item;
- }
- else
- {
- infoObject = (PropertyInfo)item;
- }
-
- if (EnumAttributes.Length > 0)
- {
- SelectResult selectResult = new SelectResult()
- {
- Key = Convert.ToInt32(infoObject.GetValue(null)).ToString(),
- Value = EnumAttributes[0].Description,
- };
-
- selectResults.Add(selectResult);
- }
-
- DisplayAttribute[] DisplayAttributes =
- (DisplayAttribute[])item.GetCustomAttributes(typeof(DisplayAttribute), false);
- if (DisplayAttributes.Length > 0)
- {
- SelectResult selectResult =
- selectResults.FirstOrDefault(e => e.Key == Convert.ToInt32(infoObject.GetValue(null)).ToString());
- if (selectResult != null)
- {
- selectResult.SecondValue = DisplayAttributes[0].Name;
- }
- }
- }
-
- return selectResults;
- }
-
- ///
- /// 获取指定枚举的所有 Attribute 说明以及value组成的键值对
- ///
- /// 对象类
- /// 第三个标签类型
- /// 第三个标签类型取值名称
- /// false获取字段、true获取属性
- ///
- public static List GetEnumAttributeListWithThirdValue(Type type, Type thirdAttributeType, string thirdAttributePropertieName, bool getPropertie = false)
- {
- if (type == null)
- {
- return null;
- }
-
- List selectResults = new List();
- List memberInfos = new List();
-
- if (getPropertie == false)
- {
- FieldInfo[] EnumInfo = type.GetFields();
- if (null == EnumInfo || EnumInfo.Length <= 0)
- {
- return null;
- }
- memberInfos.AddRange(EnumInfo);
- var parentFieldInfo = type.BaseType?.GetFields();
- if (parentFieldInfo != null && parentFieldInfo.Length > 0)
- {
- memberInfos.AddRange(parentFieldInfo);
- }
- }
- else
- {
- PropertyInfo[] EnumInfo = type.GetProperties();
- if (null == EnumInfo || EnumInfo.Length <= 0)
- {
- return null;
- }
- memberInfos.AddRange(EnumInfo);
- var parentPropertyInfo = type.BaseType?.GetProperties();
- if (parentPropertyInfo != null && parentPropertyInfo.Length > 0)
- {
- memberInfos.AddRange(parentPropertyInfo);
- }
- }
-
- foreach (var item in memberInfos)
- {
- var thirdAttributes = item.
- GetCustomAttributes(thirdAttributeType, false);
- if (thirdAttributes == null || thirdAttributes.Length <= 0)
- {
- continue;
- }
-
- DescriptionAttribute[] descriptionAttributes = (DescriptionAttribute[])item.
- GetCustomAttributes(typeof(DescriptionAttribute), false);
-
- dynamic infoObject = null;
- if (getPropertie == false)
- {
- infoObject = (FieldInfo)item;
- }
- else
- {
- infoObject = (PropertyInfo)item;
- }
-
- if (descriptionAttributes.Length > 0)
- {
- SelectResult selectResult = new SelectResult()
- {
- Key = infoObject.Name,
- Value = descriptionAttributes[0].Description,
- };
-
- selectResults.Add(selectResult);
- }
-
- DisplayAttribute[] displayAttributes = (DisplayAttribute[])item.
- GetCustomAttributes(typeof(DisplayAttribute), false);
- if (displayAttributes.Length > 0)
- {
- SelectResult selectResult = selectResults.FirstOrDefault(e => e.Key == infoObject.Name);
- if (selectResult != null)
- {
- selectResult.SecondValue = displayAttributes[0].Name;
- }
- }
-
- if (thirdAttributes.Length > 0 && !string.IsNullOrWhiteSpace(thirdAttributePropertieName))
- {
- foreach (var attr in thirdAttributes)
- {
- // 使用反射获取特性的属性值
- var properties = thirdAttributeType.GetProperties();
- foreach (var prop in properties)
- {
- // 假设你要获取特性的某个属性值,例如 TypeName
- if (prop.Name == thirdAttributePropertieName)
- {
- object value = prop.GetValue(attr);
- SelectResult selectResult = selectResults.FirstOrDefault(e => e.Key == infoObject.Name);
- if (selectResult != null)
- {
- selectResult.ThirdValue = value?.ToString(); // 将属性值赋给 ThirdValue
- }
- break; // 如果找到了需要的属性,可以跳出循环
- }
- }
- }
- }
- }
-
- return selectResults;
- }
-
- ///
- /// 获取指定类、指定常量值的Description说明
- /// 包含直接继承的父级字段
- ///
- /// 对象类
- ///
- ///
- public static List> GetTypeDescriptionListToTuple(Type t, bool getPropertie = false)
- {
- if (t == null)
- {
- return null;
- }
-
- List memberInfos = new List();
-
- if (getPropertie == false)
- {
- FieldInfo[] fieldInfo = t.GetFields();
- if (null == fieldInfo || fieldInfo.Length <= 0)
- {
- return null;
- }
-
- memberInfos.AddRange(fieldInfo);
- var parentFieldInfo = t.BaseType?.GetFields();
- if (parentFieldInfo != null && parentFieldInfo.Length > 0)
- {
- foreach (var item in parentFieldInfo)
- {
- if (!memberInfos.Any(d => d.Name == item.Name)) //如果子类已经包含父类的属性或者字段,跳过不处理
- {
- memberInfos.Add(item);
- }
- }
- }
- }
- else
- {
- PropertyInfo[] fieldInfo = t.GetProperties();
- if (null == fieldInfo || fieldInfo.Length <= 0)
- {
- return null;
- }
-
- memberInfos.AddRange(fieldInfo);
- var parentPropertyInfo = t.BaseType?.GetProperties();
- if (parentPropertyInfo != null && parentPropertyInfo.Length > 0)
- {
- foreach (var item in parentPropertyInfo)
- {
- if (!memberInfos.Any(d => d.Name == item.Name)) //如果子类已经包含父类的属性或者字段,跳过不处理
- {
- memberInfos.Add(item);
- }
- }
- }
- }
-
- List> tuples = new List>();
-
- foreach (var item in memberInfos)
- {
- DescriptionAttribute[] descriptionAttribute =
- (DescriptionAttribute[])item.GetCustomAttributes(typeof(DescriptionAttribute), false);
-
- NumericalOrderAttribute[] indexAttributes =
- (NumericalOrderAttribute[])item.GetCustomAttributes(typeof(NumericalOrderAttribute), false);
-
-
- if (descriptionAttribute.Length > 0 && indexAttributes.Length > 0)
- {
- Tuple tuple = new Tuple(item.Name,
- descriptionAttribute[0].Description, indexAttributes[0].Index);
- tuples.Add(tuple);
- }
- }
-
- return tuples;
- }
-
- ///
- /// 获取指定类、指定常量值的常量说明
- ///
- /// 常量字段名称
- ///属性还是字段
- ///
- public static string GetTypeDescriptionName(string fieldName, bool getPropertie = false)
- {
- if (string.IsNullOrEmpty(fieldName))
- {
- return "";
- }
-
- MemberInfo memberInfo = null;
- if (getPropertie == false)
- {
- memberInfo = typeof(T).GetField(fieldName);
- }
- else
- {
- memberInfo = typeof(T).GetProperty(fieldName);
- }
-
- if (null == memberInfo)
- {
- return "";
- }
-
- DescriptionAttribute[] EnumAttributes =
- (DescriptionAttribute[])memberInfo.GetCustomAttributes(typeof(DescriptionAttribute), false);
- if (EnumAttributes.Length <= 0)
- {
- return "";
- }
-
- return EnumAttributes[0].Description;
- }
-
- ///
- /// 获取指定命名空间下指定常量值的常量说明
- ///
- /// 常量字段名称
- /// 命名空间,主要用来找到对应程序集
- ///属性还是字段
- ///
- public static string GetTypeDescriptionName(string fieldName, string assemblyName, bool getPropertie = false)
- {
- if (string.IsNullOrWhiteSpace(fieldName) || string.IsNullOrWhiteSpace(assemblyName))
- {
- return null;
- }
-
- string desc = "";
- foreach (var item in GetEnumList(assemblyName))
- {
- desc = GetTypeDescriptionName(item, fieldName, getPropertie);
- if (!string.IsNullOrEmpty(desc))
- {
- break;
- }
- }
-
- return desc;
- }
-
- ///
- /// 获取指定类、指定常量值的常量说明
- ///
- /// 对象类
- /// 常量字段名称
- ///属性还是字段
- ///
- public static string GetTypeDescriptionName(this Type t, string fieldName, bool getPropertie = false)
- {
- if (string.IsNullOrWhiteSpace(fieldName))
- {
- return "";
- }
-
- MemberInfo memberInfo = null;
- if (getPropertie == false)
- {
- memberInfo = t.GetField(fieldName);
- }
- else
- {
- memberInfo = t.GetProperty(fieldName);
- }
-
- if (null != memberInfo)
- {
- DescriptionAttribute[] EnumAttributes =
- (DescriptionAttribute[])memberInfo.GetCustomAttributes(typeof(DescriptionAttribute), false);
- if (EnumAttributes.Length > 0)
- {
- return EnumAttributes[0].Description;
- }
- }
-
- return "";
- }
-
- ///
- /// 扩展方法,获得枚举值集合
- ///
- ///枚举的DisplayName
- public static List GetEnumList() where T : Enum
- {
- List enumList = new List();
- foreach (T value in Enum.GetValues(typeof(T)))
- {
- enumList.Add(value);
- }
-
- return enumList;
- }
-
- private static List GetEnumList(string assemblyName)
- {
- if (!String.IsNullOrEmpty(assemblyName))
- {
- Assembly assembly = Assembly.Load(assemblyName);
- List ts = assembly.GetTypes().Where(x => x.GetTypeInfo().IsClass).ToList();
- return ts;
- }
-
- return new List();
- }
-
- ///
- /// 扩展方法,获得枚举的Display值
- ///
- ///枚举值
- ///当枚举值没有定义DisplayNameAttribute,是否使用枚举名代替,默认是使用
- ///属性还是字段
- ///枚举的DisplayName
- public static string GetDisplayName(this Enum value, Boolean nameInstead = true, bool getPropertie = false)
- {
- Type type = value.GetType();
- string name = Enum.GetName(type, value);
- if (name == null)
- {
- return null;
- }
-
- DisplayAttribute attribute = null;
-
- if (getPropertie == false)
- {
- attribute = Attribute.GetCustomAttribute(type.GetField(name), typeof(DisplayAttribute)) as DisplayAttribute;
- }
- else
- {
- attribute =
- Attribute.GetCustomAttribute(type.GetProperty(name), typeof(DisplayAttribute)) as DisplayAttribute;
- }
-
-
- if (attribute == null && nameInstead == true)
- {
- return name;
- }
-
- return attribute == null ? null : attribute.Name;
- }
-
- ///
- /// 获取枚举的描述信息
- ///
- ///
- ///
- public static string GetEnumDescription(this Enum value)
- {
- var name = value.ToString();
- var field = value.GetType().GetField(name);
- if (field == null) return name;
-
- var att = Attribute.GetCustomAttribute(field, typeof(DescriptionAttribute), false);
-
- return att == null ? field.Name : ((DescriptionAttribute)att).Description;
- }
-
-
- ///
- /// 根据枚举类型值返回枚举定义Description属性
- ///
- ///
- ///
- ///
- public static string GetEnumDescription(this int value, Type enumType)
- {
- NameValueCollection nameValueCollection = new NameValueCollection();
- Type typeFromHandle = typeof(DescriptionAttribute);
- FieldInfo[] fields = enumType.GetFields();
- foreach (FieldInfo fieldInfo in fields)
- {
- if (fieldInfo.FieldType.IsEnum)
- {
- string name = ((int)enumType.InvokeMember(fieldInfo.Name, BindingFlags.GetField, null, null, null)).ToString();
- object[] customAttributes = fieldInfo.GetCustomAttributes(typeFromHandle, inherit: true);
- string value2 = ((customAttributes.Length == 0) ? "" : ((DescriptionAttribute)customAttributes[0]).Description);
- nameValueCollection.Add(name, value2);
- }
- }
-
- return nameValueCollection[value.ToString()];
- }
-
-
- ///
- /// 将传入的字符串中间部分字符替换成特殊字符
- ///
- /// 需要替换的字符串
- /// 前保留长度
- /// 尾保留长度
- /// 特殊字符
- /// 被特殊字符替换的字符串
- public static string ReplaceWithSpecialChar(this string value, int startLen = 1, int endLen = 1,
- char specialChar = '*')
- {
- if (string.IsNullOrEmpty(value))
- {
- return value;
- }
-
- try
- {
-
- if (value.Length <= startLen + endLen)
- {
- var temStartVal = value.Substring(0, startLen);
- return $"{temStartVal}{"".PadLeft(endLen, specialChar)}";
- }
-
- if (value.Length == 10 && endLen == 1)
- {
- endLen = 3;
- }
-
- var startVal = value.Substring(0, startLen);
- var endVal = value.Substring(value.Length - endLen);
- if (value.Length == 2)
- {
- endVal = "";
- }
-
- value = $"{startVal}{endVal.PadLeft(value.Length - startLen, specialChar)}";
- }
- catch (Exception)
- {
- throw;
- }
-
- return value;
- }
-
- ///
- /// Linux下字体名称转换
- ///
- ///
- ///
- public static string GetLinuxFontFamily(this string fontValue)
- {
- if (RuntimeInformation.IsOSPlatform(OSPlatform.Linux))
- {
- if (fontValue == "楷体")
- {
- fontValue = "KaiTi";
- }
- else if (fontValue == "隶书")
- {
- fontValue = "LiSu";
- }
- else if (fontValue == "宋体")
- {
- fontValue = "SimSun";
- }
- else if (fontValue == "微软雅黑")
- {
- fontValue = "Microsoft YaHei";
- }
- else if (fontValue == "新宋体")
- {
- fontValue = "NSimSun";
- }
- else if (fontValue == "仿宋")
- {
- fontValue = "FangSong";
- }
- else if (fontValue == "黑体")
- {
- fontValue = "SimHei";
- }
-
- }
-
- return fontValue;
- }
-
- ///
- /// 获取任务标识
- ///
- ///
- ///
- ///
- ///
- ///
- ///
- public static string GetTaskMark(int afn, int fn, int pn, int msa, int seq)
- {
- var makstr = $"{afn.ToString().PadLeft(2, '0')}{fn.ToString().PadLeft(2, '0')}{pn.ToString().PadLeft(2, '0')}{msa.ToString().PadLeft(2, '0')}{seq.ToString().PadLeft(2, '0')}";
-
- return makstr;// Convert.ToInt32(makstr) << 32 | msa;
- }
-
- ///
- /// 判断是生成月
- ///
- ///
- ///
- ///
- public static bool JudgeIsGenerate_Month(string eachMonthWith, DateTime curTime)
- {
- var arr = eachMonthWith.Split(',');
- if (arr.Contains(curTime.Day.ToString()))
- return true;
- return false;
- }
-
- ///
- /// 判断是生成一次
- ///
- ///
- ///
- ///
- public static bool JudgeIsGenerate_Once(DateTime onceWithDate, DateTime curTime) => curTime.Date.Equals(onceWithDate);//为当天时发送
-
- ///
- /// 判断是生成日
- ///
- ///
- ///
- ///
- public static bool JudgeIsGenerate_Day(string eachDayWithout, DateTime curTime)
- {
- if (string.IsNullOrWhiteSpace(eachDayWithout))
- {
- return false;
- }
-
- var weekName = strWeeks[(int)curTime.DayOfWeek];
- var arr = eachDayWithout.Split(',');
- return !arr.Contains(weekName);
- }
-
- public static readonly List strWeeks = new List() { "周日", "周一", "周二", "周三", "周四", "周五", "周六" };
-
- ///
- /// 判断是生成周
- ///
- ///
- ///
- ///
- public static bool JudgeIsGenerate_Week(string eachWeekWith, DateTime curTime)
- {
- if (string.IsNullOrWhiteSpace(eachWeekWith))
- {
- return false;
- }
-
- var weekName = strWeeks[(int)curTime.DayOfWeek];
- var arr = eachWeekWith.Split(',');
- return arr.Contains(weekName);
-
- }
-
- ///
- /// 系统采集频率转换为集中器采集密度
- ///
- ///
- ///
- public static int GetFocusDensity(this int timeDensity) => timeDensity switch
- {
- 0 => 0,//无
- 1 => 255,//1分钟
- 5 => 245,//5分钟
- 15 => 1,//15分钟
- 30 => 2,//30分钟
- 60 => 3,//60分钟
- _ => -1//采集项本身无密度位
- };
-
- ///
- /// 集中器采集密度转换为系统采集频率
- ///
- ///
- ///
- public static int GetSystemDensity(this int density) => density switch
- {
- 0 => 0,//无
- 255 => 1,//1分钟
- 245 => 5,//5分钟
- 1 => 15,//15分钟
- 2 => 30,//30分钟
- 3 => 60,//60分钟
- _ => -1//采集项本身无密度位
- };
-
- ///
- /// 获取集中器ZSet Scores
- ///
- ///
- ///
- ///
- public static long GetFocusScores(string focusScores, int point)
- {
- bool hasInvalidChars = focusScores.Any(c => !(c >= '0' && c <= '9'));
- if (hasInvalidChars)
- {
- throw new Exception($"{nameof(GetFocusScores)} 集中器地址格式错误");
- }
- var scoresStr = $"{focusScores}{point.ToString().PadLeft(2, '0')}";
-
- return Convert.ToInt64(scoresStr);
- }
-
- ///
- /// 加载指定名称的程序集
- ///
- ///
- ///
- public static List LoadAssemblies(string[] assemblyNames)
- {
- var assemblies = new List();
-
- // 获取已加载的程序集
- foreach (var asm in AppDomain.CurrentDomain.GetAssemblies())
- {
- if (assemblyNames.Contains(asm.GetName().Name))
- assemblies.Add(asm);
- }
-
- // 尝试加载未加载的程序集
- foreach (var name in assemblyNames)
- {
- if (!assemblies.Any(a => a.GetName().Name == name))
- {
- try
- {
- var assembly = Assembly.Load(name);
- assemblies.Add(assembly);
- }
- catch (FileNotFoundException)
- {
- // 若Load失败,尝试从基目录加载
- var path = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $"{name}.dll");
- if (File.Exists(path))
- {
- try
- {
- assemblies.Add(Assembly.LoadFrom(path));
- }
- catch { /* 记录错误 */ }
- }
- }
- }
- }
-
- return assemblies;
- }
-
- ///
- /// 创建类型实例
- ///
- ///
- ///
- public static List