from typing import List
from . import DIMap
from ....model.types.data_type import DataItem
from ....model.types.dlt645_type import EventRecord
from ....common.transform import pad_with_zeros
[文档]
def init_event_record_def(EventRecordTypes: List[DataItem]):
"""初始化事件记录定义
Args:
EventRecordTypes: 事件记录类型列表,包含事件记录类型
"""
for data_type in EventRecordTypes:
if data_type.data_format.find(",") == -1:
value = EventRecord(
data_type.di, pad_with_zeros(len(data_type.data_format))
)
else:
value = EventRecord(
data_type.di,
(
pad_with_zeros(len(data_type.data_format.split(",")[0])),
pad_with_zeros(len(data_type.data_format.split(",")[1])),
),
)
if data_type.di not in DIMap:
DIMap[data_type.di] = []
data_item = DataItem(
di=data_type.di,
name=data_type.name,
data_format=data_type.data_format,
value=value,
unit=data_type.unit,
)
DIMap[data_type.di].append(data_item)