Compare commits

...

2 Commits

Author SHA1 Message Date
7a18dc4df9 统一字段名称 2025-05-08 09:25:41 +08:00
0de5177472 统一解析字段名称 2025-05-08 09:25:17 +08:00
63 changed files with 197 additions and 81 deletions

View File

@ -48,7 +48,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_02H
data.ProjectId = ammeterInfo.ProjectID; data.ProjectId = ammeterInfo.ProjectID;
data.DeviceId = ammeterInfo.FocusId; data.DeviceId = ammeterInfo.FocusId;
data.DatabaseBusiID = ammeterInfo.DatabaseBusiID; data.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
data.MeterAddress = ammeterInfo.AmmerterAddress; data.DeviceAddress = ammeterInfo.Address;
data.DeviceType = MeterTypeEnum.Focus; data.DeviceType = MeterTypeEnum.Focus;
} }
UnitDataAnalysis<AnalysisBaseDto<string>> dto = new UnitDataAnalysis<AnalysisBaseDto<string>> UnitDataAnalysis<AnalysisBaseDto<string>> dto = new UnitDataAnalysis<AnalysisBaseDto<string>>

View File

@ -45,7 +45,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_02H
data.ProjectId = ammeterInfo.ProjectID; data.ProjectId = ammeterInfo.ProjectID;
data.DeviceId = ammeterInfo.FocusId; data.DeviceId = ammeterInfo.FocusId;
data.DatabaseBusiID = ammeterInfo.DatabaseBusiID; data.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
data.MeterAddress = ammeterInfo.AmmerterAddress; data.DeviceAddress = ammeterInfo.Address;
data.DeviceType = MeterTypeEnum.Focus; data.DeviceType = MeterTypeEnum.Focus;
} }
UnitDataAnalysis<AnalysisBaseDto<string>> dto = new UnitDataAnalysis<AnalysisBaseDto<string>> UnitDataAnalysis<AnalysisBaseDto<string>> dto = new UnitDataAnalysis<AnalysisBaseDto<string>>

View File

@ -45,7 +45,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_02H
data.ProjectId = ammeterInfo.ProjectID; data.ProjectId = ammeterInfo.ProjectID;
data.DeviceId = ammeterInfo.FocusId; data.DeviceId = ammeterInfo.FocusId;
data.DatabaseBusiID = ammeterInfo.DatabaseBusiID; data.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
data.MeterAddress = ammeterInfo.AmmerterAddress; data.DeviceAddress = ammeterInfo.Address;
data.DeviceType = MeterTypeEnum.Focus; data.DeviceType = MeterTypeEnum.Focus;
} }
UnitDataAnalysis<AnalysisBaseDto<string>> dto = new UnitDataAnalysis<AnalysisBaseDto<string>> UnitDataAnalysis<AnalysisBaseDto<string>> dto = new UnitDataAnalysis<AnalysisBaseDto<string>>

View File

@ -46,7 +46,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AFN_0CH
data.ProjectId = ammeterInfo.ProjectID; data.ProjectId = ammeterInfo.ProjectID;
data.DeviceId = ammeterInfo.MeterId; data.DeviceId = ammeterInfo.MeterId;
data.DatabaseBusiID=ammeterInfo.DatabaseBusiID; data.DatabaseBusiID=ammeterInfo.DatabaseBusiID;
data.MeterAddress= ammeterInfo.AmmerterAddress; data.DeviceAddress= ammeterInfo.AmmerterAddress;
} }
UnitDataAnalysis<AnalysisBaseDto<decimal>> unitDataAnalysis = new UnitDataAnalysis<AnalysisBaseDto<decimal>> UnitDataAnalysis<AnalysisBaseDto<decimal>> unitDataAnalysis = new UnitDataAnalysis<AnalysisBaseDto<decimal>>
{ {

View File

@ -51,7 +51,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -49,7 +49,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -51,7 +51,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -51,7 +51,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -50,7 +50,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -50,7 +50,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -50,7 +50,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -49,7 +49,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -50,7 +50,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -48,7 +48,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -49,7 +49,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -49,7 +49,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -49,7 +49,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -50,7 +50,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -49,7 +49,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -48,7 +48,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -49,7 +49,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -48,7 +48,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -48,7 +48,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -48,7 +48,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -48,7 +48,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -48,7 +48,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -47,7 +47,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -48,7 +48,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -48,7 +48,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -47,7 +47,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -48,7 +48,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -48,7 +48,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -47,7 +47,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -48,7 +48,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -49,7 +49,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -45,7 +45,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
data.ProjectId = ammeterInfo.ProjectID; data.ProjectId = ammeterInfo.ProjectID;
data.DeviceId = ammeterInfo.MeterId; data.DeviceId = ammeterInfo.MeterId;
data.DatabaseBusiID = ammeterInfo.DatabaseBusiID; data.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
data.MeterAddress = ammeterInfo.AmmerterAddress; data.DeviceAddress = ammeterInfo.AmmerterAddress;
} }
UnitDataAnalysis<AnalysisBaseDto<decimal>> unitDataAnalysis = new UnitDataAnalysis<AnalysisBaseDto<decimal>> UnitDataAnalysis<AnalysisBaseDto<decimal>> unitDataAnalysis = new UnitDataAnalysis<AnalysisBaseDto<decimal>>
{ {

View File

@ -45,7 +45,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
data.ProjectId = ammeterInfo.ProjectID; data.ProjectId = ammeterInfo.ProjectID;
data.DeviceId = ammeterInfo.MeterId; data.DeviceId = ammeterInfo.MeterId;
data.DatabaseBusiID = ammeterInfo.DatabaseBusiID; data.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
data.MeterAddress = ammeterInfo.AmmerterAddress; data.DeviceAddress = ammeterInfo.AmmerterAddress;
} }
UnitDataAnalysis<AnalysisBaseDto<decimal>> unitDataAnalysis = new UnitDataAnalysis<AnalysisBaseDto<decimal>> UnitDataAnalysis<AnalysisBaseDto<decimal>> unitDataAnalysis = new UnitDataAnalysis<AnalysisBaseDto<decimal>>
{ {

View File

@ -45,7 +45,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
data.ProjectId = ammeterInfo.ProjectID; data.ProjectId = ammeterInfo.ProjectID;
data.DeviceId = ammeterInfo.MeterId; data.DeviceId = ammeterInfo.MeterId;
data.DatabaseBusiID = ammeterInfo.DatabaseBusiID; data.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
data.MeterAddress = ammeterInfo.AmmerterAddress; data.DeviceAddress = ammeterInfo.AmmerterAddress;
} }
UnitDataAnalysis<AnalysisBaseDto<decimal>> unitDataAnalysis = new UnitDataAnalysis<AnalysisBaseDto<decimal>> UnitDataAnalysis<AnalysisBaseDto<decimal>> unitDataAnalysis = new UnitDataAnalysis<AnalysisBaseDto<decimal>>
{ {

View File

@ -49,7 +49,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -53,7 +53,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -52,7 +52,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -50,7 +50,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -51,7 +51,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -51,7 +51,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -50,7 +50,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -51,7 +51,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -51,7 +51,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -50,7 +50,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -51,7 +51,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -51,7 +51,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -51,7 +51,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -50,7 +50,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -51,7 +51,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -51,7 +51,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -51,7 +51,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -51,7 +51,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -51,7 +51,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -51,7 +51,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -51,7 +51,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0DH
item.ProjectId = ammeterInfo.ProjectID; item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.MeterId; item.DeviceId = ammeterInfo.MeterId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID; item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.MeterAddress = ammeterInfo.AmmerterAddress; item.DeviceAddress = ammeterInfo.AmmerterAddress;
}); });
} }
} }

View File

@ -1,9 +1,13 @@
using JiShe.CollectBus.Common.Enums; using JiShe.CollectBus.Common.Enums;
using JiShe.CollectBus.Common.Extensions; using JiShe.CollectBus.Common.Extensions;
using JiShe.CollectBus.IotSystems.Ammeters;
using JiShe.CollectBus.Protocol.Contracts.Protocol.Dto;
using JiShe.CollectBus.Protocol.Dto; using JiShe.CollectBus.Protocol.Dto;
using JiShe.CollectBus.Protocol.Interfaces; using JiShe.CollectBus.Protocol.Interfaces;
using JiShe.CollectBus.Protocol3761; using JiShe.CollectBus.Protocol3761;
using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging;
using System;
using System.Collections.Generic;
namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0EH namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0EH
{ {
@ -15,13 +19,14 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0EH
public class AFN14_F1_Analysis : IAnalysisStrategy<TB3761> public class AFN14_F1_Analysis : IAnalysisStrategy<TB3761>
{ {
private readonly ILogger<AFN14_F1_Analysis> _logger; private readonly ILogger<AFN14_F1_Analysis> _logger;
private readonly DataStorage _dataStorage;
public AFN14_F1_Analysis(ILogger<AFN14_F1_Analysis> logger) public AFN14_F1_Analysis(ILogger<AFN14_F1_Analysis> logger, DataStorage dataStorage)
{ {
_logger = logger; _logger = logger;
_dataStorage= dataStorage;
} }
public Task<bool> ExecuteAsync(TB3761 input, Action<dynamic>? result = null) public async Task<bool> ExecuteAsync(TB3761 input, Action<dynamic>? result = null)
{ {
try try
{ {
@ -31,15 +36,35 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0EH
bool isOnOffPower = erc.Equals(14) ? true : false; bool isOnOffPower = erc.Equals(14) ? true : false;
if (!isOnOffPower) if (!isOnOffPower)
{ {
throw new Exception($"ERC{erc}非上掉电事件"); // TODO非终端停/上电事件直接确认
_logger.LogWarning($"0E_1解析ERC{erc}非终端停/上电事件:{input.A.Code}-{input.DT.Fn}-{input.BaseHexMessage.HexMessageString}");
return await Task.FromResult(true);
} }
UnitDataAnalysis<Tuple<string, string>> dto = new UnitDataAnalysis<Tuple<string, string>>
List<AnalysisBaseDto<string>> data = AnalysisDataUnit(input.UnitData.HexMessageList);
if (data.Count > 0)
{
// 查询电表信息
AmmeterInfo ammeterInfo = await _dataStorage.GetMeterInfoAsync(data[0].DeviceType.ToString(), "15");
if (ammeterInfo != null)
{
data.ForEach(item =>
{
item.ProjectId = ammeterInfo.ProjectID;
item.DeviceId = ammeterInfo.FocusId;
item.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
item.DeviceAddress = ammeterInfo.Address;
item.DeviceType = MeterTypeEnum.Focus;
});
}
}
UnitDataAnalysis<List<AnalysisBaseDto<string>>> dto = new UnitDataAnalysis<List<AnalysisBaseDto<string>>>
{ {
Code = input.A.Code!, Code = input.A.Code!,
AFN = input.AFN_FC.AFN, AFN = input.AFN_FC.AFN,
Fn = input.DT.Fn, Fn = input.DT.Fn,
Pn = input.DA.Pn, Pn = input.DA.Pn,
Data = AnalysisDataUnit(input.UnitData.HexMessageList), Data = data,
HexMessage = input.BaseHexMessage.HexMessageString, HexMessage = input.BaseHexMessage.HexMessageString,
MessageId = input.MessageId, MessageId = input.MessageId,
ReceivedTime = input.ReceivedTime, ReceivedTime = input.ReceivedTime,
@ -48,37 +73,55 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_0EH
}; };
// meterData.DataType = "0E_1"; // meterData.DataType = "0E_1";
result?.Invoke(dto); result?.Invoke(dto);
return Task.FromResult(true); await _dataStorage.SaveMultipleStatusToIotDbAsync<string>(dto);
return await Task.FromResult(true);
} }
catch (Exception ex) catch (Exception ex)
{ {
_logger.LogError(ex, $"0E_1解析失败:{input.A.Code}-{input.DT.Fn}-{input.BaseHexMessage.HexMessageString},{ex.Message}"); _logger.LogError(ex, $"0E_1解析失败:{input.A.Code}-{input.DT.Fn}-{input.BaseHexMessage.HexMessageString},{ex.Message}");
} }
return Task.FromResult(false); return await Task.FromResult(false);
} }
private Tuple<string, string> AnalysisDataUnit(List<string> hexMessageList) private List<AnalysisBaseDto<string>> AnalysisDataUnit(List<string> hexMessageList)
{ {
/// Item1=停电事件 /// Item1=停电事件
/// Item2=上电事件 /// Item2=上电事件
return Tuple.Create(HandlerTime(hexMessageList.GetRange(10, 5)), HandlerTime(hexMessageList.GetRange(15, 5))); List <AnalysisBaseDto<string>> values = new List<AnalysisBaseDto<string>>
{
new AnalysisBaseDto<string>
{
FiledDesc = "停电事件",
FiledName = "Type",
DataValue = "PowerDownEvent",
TimeSpan=HandlerTime(hexMessageList.GetRange(10, 5))
},
new AnalysisBaseDto<string>
{
FiledDesc = "上电事件",
FiledName = "Type",
DataValue = "PowerOnEvent",
TimeSpan=HandlerTime(hexMessageList.GetRange(15, 5))
}
};
return values;
} }
/// <summary> /// <summary>
/// /解析时间 /// /解析时间
/// </summary> /// </summary>
/// <param name="times"></param> /// <param name="times"></param>
/// <param name="isSetCurTime">时间验证失败是否默认为当前时间</param>
/// <returns></returns> /// <returns></returns>
private string HandlerTime(List<string> times) private DateTime? HandlerTime(List<string> times)
{ {
var time = string.Empty;
try try
{ {
times.Reverse(); times.Reverse();
time = $"{DateTime.Now.ToString("yyyy").Substring(0, 2)}{times[0]}-{times[1]}-{times[2]} {times[3]}:{times[4]}:00"; string time = $"{DateTime.Now.ToString("yyyy").Substring(0, 2)}{times[0]}-{times[1]}-{times[2]} {times[3]}:{times[4]}:00";
DateTime.TryParse(time, out DateTime dateTime);
return dateTime;
} }
catch { } catch { }
return time; return null;
} }
} }
} }

View File

@ -45,7 +45,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData.AFN_10H
data.ProjectId = ammeterInfo.ProjectID; data.ProjectId = ammeterInfo.ProjectID;
data.DeviceId = ammeterInfo.MeterId; data.DeviceId = ammeterInfo.MeterId;
data.DatabaseBusiID = ammeterInfo.DatabaseBusiID; data.DatabaseBusiID = ammeterInfo.DatabaseBusiID;
data.MeterAddress = ammeterInfo.AmmerterAddress; data.DeviceAddress = ammeterInfo.AmmerterAddress;
} }
UnitDataAnalysis<AnalysisBaseDto<decimal>> unitDataAnalysis = new UnitDataAnalysis<AnalysisBaseDto<decimal>> UnitDataAnalysis<AnalysisBaseDto<decimal>> unitDataAnalysis = new UnitDataAnalysis<AnalysisBaseDto<decimal>>
{ {

View File

@ -123,7 +123,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData
DatabaseBusiID = data.DatabaseBusiID, DatabaseBusiID = data.DatabaseBusiID,
PendingCopyReadTime = data.TimeSpan.Value.GetFormatTime(analysisBaseDto.DensityUnit, analysisBaseDto.TimeDensity), PendingCopyReadTime = data.TimeSpan.Value.GetFormatTime(analysisBaseDto.DensityUnit, analysisBaseDto.TimeDensity),
CreationTime = currentTime, CreationTime = currentTime,
MeterAddress = data.MeterAddress, MeterAddress = data.DeviceAddress,
AFN = analysisBaseDto.AFN, AFN = analysisBaseDto.AFN,
Fn = analysisBaseDto.Fn, Fn = analysisBaseDto.Fn,
Seq = analysisBaseDto.PSEQ, Seq = analysisBaseDto.PSEQ,
@ -226,7 +226,7 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData
DatabaseBusiID = item.DatabaseBusiID, DatabaseBusiID = item.DatabaseBusiID,
PendingCopyReadTime = item.TimeSpan.Value.GetFormatTime(analysisBaseDto.DensityUnit, analysisBaseDto.TimeDensity), PendingCopyReadTime = item.TimeSpan.Value.GetFormatTime(analysisBaseDto.DensityUnit, analysisBaseDto.TimeDensity),
CreationTime = currentTime, CreationTime = currentTime,
MeterAddress = item.MeterAddress, MeterAddress = item.DeviceAddress,
AFN = analysisBaseDto.AFN, AFN = analysisBaseDto.AFN,
Fn = analysisBaseDto.Fn, Fn = analysisBaseDto.Fn,
Seq = analysisBaseDto.PSEQ, Seq = analysisBaseDto.PSEQ,
@ -269,8 +269,8 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData
public async Task<bool> SaveStatusToIotDbAsync<T>(UnitDataAnalysis<AnalysisBaseDto<T>> analysisBaseDto) public async Task<bool> SaveStatusToIotDbAsync<T>(UnitDataAnalysis<AnalysisBaseDto<T>> analysisBaseDto)
{ {
ArgumentNullException.ThrowIfNull(nameof(analysisBaseDto.Data)); ArgumentNullException.ThrowIfNull(nameof(analysisBaseDto.Data));
ArgumentNullException.ThrowIfNullOrWhiteSpace(nameof(analysisBaseDto.Data.FiledName)); ArgumentException.ThrowIfNullOrWhiteSpace(nameof(analysisBaseDto.Data.FiledName));
ArgumentNullException.ThrowIfNullOrWhiteSpace(nameof(analysisBaseDto.Data.DataValue)); ArgumentException.ThrowIfNullOrWhiteSpace(nameof(analysisBaseDto.Data.DataValue));
var data = analysisBaseDto.Data!; var data = analysisBaseDto.Data!;
if (!data.TimeSpan.HasValue) if (!data.TimeSpan.HasValue)
data.TimeSpan = analysisBaseDto.ReceivedTime; data.TimeSpan = analysisBaseDto.ReceivedTime;
@ -329,5 +329,78 @@ namespace JiShe.CollectBus.Protocol.T37612012.AnalysisData
return await Task.FromResult(true); return await Task.FromResult(true);
} }
/// <summary>
/// 保存状态到IotDb
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="analysisBaseDto"></param>
/// <returns></returns>
public async Task<bool> SaveMultipleStatusToIotDbAsync<T>(UnitDataAnalysis<List<AnalysisBaseDto<T>>> analysisBaseDto)
{
ArgumentNullException.ThrowIfNull(nameof(analysisBaseDto.Data));
var data = analysisBaseDto.Data!;
foreach (var item in data)
{
ArgumentException.ThrowIfNullOrWhiteSpace(nameof(item.FiledName));
ArgumentException.ThrowIfNullOrWhiteSpace(nameof(item.DataValue));
if (!item.TimeSpan.HasValue)
item.TimeSpan = analysisBaseDto.ReceivedTime;
// 类型(心跳,登录,上电,掉电)
long timestamps = DateTime.Now.GetDateTimeOffset().ToUnixTimeNanoseconds();
var treeData = new TreeModelSingleMeasuringEntity<T>()
{
SystemName = _applicationOptions.SystemType,
DeviceId = $"{item.DeviceId}",
DeviceType = $"{item.DeviceType}.{IOTDBDataType.Status}",
ProjectId = $"{item.ProjectId}",
Timestamps = timestamps,
SingleMeasuring = new Tuple<string, T>(item.FiledName!, item.DataValue!)
};
_runtimeContext.UseTableSessionPool = false; // 使树模型池
await _dbProvider.InsertAsync(treeData);
// 数据帧
var treeFrameData = new TreeModelSingleMeasuringEntity<string>()
{
SystemName = _applicationOptions.SystemType,
DeviceId = $"{item.DeviceId}",
DeviceType = $"{item.DeviceType}.{IOTDBDataType.Status}",
ProjectId = $"{item.ProjectId}",
Timestamps = timestamps,
SingleMeasuring = new Tuple<string, string>(ConcentratorStatusFieldConst.FrameData, analysisBaseDto.HexMessage ?? string.Empty)
};
_runtimeContext.UseTableSessionPool = false; // 使树模型池
await _dbProvider.InsertAsync(treeFrameData);
// 时间
var treeRecordingTimeData = new TreeModelSingleMeasuringEntity<long>()
{
SystemName = _applicationOptions.SystemType,
DeviceId = $"{item.DeviceId}",
DeviceType = $"{item.DeviceType}.{IOTDBDataType.Status}",
ProjectId = $"{item.ProjectId}",
Timestamps = timestamps,
SingleMeasuring = new Tuple<string, long>(ConcentratorStatusFieldConst.RecordingTime, (data.TimeSpan.HasValue ? data.TimeSpan.Value : DateTime.Now).GetDateTimeOffset().ToUnixTimeNanoseconds())
};
_runtimeContext.UseTableSessionPool = false; // 使树模型池
await _dbProvider.InsertAsync(treeRecordingTimeData);
// 备注
var treeRemarkData = new TreeModelSingleMeasuringEntity<string>()
{
SystemName = _applicationOptions.SystemType,
DeviceId = $"{item.DeviceId}",
DeviceType = $"{item.DeviceType}.{IOTDBDataType.Status}",
ProjectId = $"{item.ProjectId}",
Timestamps = timestamps,
SingleMeasuring = new Tuple<string, string>(ConcentratorStatusFieldConst.Remark, data.FiledDesc ?? string.Empty)
};
_runtimeContext.UseTableSessionPool = false; // 使树模型池
await _dbProvider.InsertAsync(treeRemarkData);
}
return await Task.FromResult(true);
}
} }
} }

View File

@ -63,9 +63,9 @@ namespace JiShe.CollectBus.Protocol.Contracts.Protocol.Dto
public int DatabaseBusiID { get; set; } public int DatabaseBusiID { get; set; }
/// <summary> /// <summary>
/// 表地址 /// 设备地址(电表地址,水表地址,气表地址,集中器地址等)
/// </summary> /// </summary>
public string MeterAddress { get; set; } = null!; public string DeviceAddress { get; set; } = null!;
} }