def _get_partial_suggestion(self, packet, packet_mapping):
unresolved, additional = self.model_validator.get_unmapped_parameters(packet, packet_mapping)
if len(unresolved) > 0 or len(additional) > 0:
parameters = []
last_sid = ""
for parameter, mapping in itertools.zip_longest(packet.get_parameters_as_flattened_list(),
packet_mapping.parameters):
if parameter is not None:
if last_sid != "":
sid_proposition = last_sid[0:4] \
+ "%04i" % (int(last_sid[4:].lstrip('0')) + 1)
else:
sid_proposition = ""
sid = mapping.sid if mapping is not None else sid_proposition
last_sid = sid
parameters.append({
"uid": parameter.uid,
"sid": sid,
})
return {
"uid": packet.uid,
"parameters": parameters,
}
else:
return None
评论列表
文章目录