Skip to content
Snippets Groups Projects

Feature/dboard3 921

Merged Neda Moeini requested to merge feature/DBOARD3-921 into develop
All threads resolved!
1 file
+ 38
43
Compare changes
  • Side-by-side
  • Inline
@@ -1290,18 +1290,19 @@ def transform_ims_data(data):
circuit_ids_to_monitor = data['circuit_ids_to_monitor']
additional_circuit_customers = data['additional_circuit_customers']
# data in this gets modified
# This is only used within this function and the populate_mic_with_third_party_data
# The following data gets added to this
# contacts
# planned_work_contacts
# sid
# third_party_id - only if it exists for the circuit
hierarchy = data['hierarchy']
hierarchy = data['hierarchy'] # data in this gets modified
# This just gets the flex ILS data added to it
# These two just gets the flex ILS data added to them.
# They are also used for building interface_services
port_id_details = data['port_id_details'] # data in this gets modified
port_id_services = data['port_id_services'] # data in this gets modified
circuit_ids_and_sids = data['circuit_ids_sids']
circuit_ids_and_third_party_ids = data['circuit_ids_third_party_ids']
geant_nodes = data['geant_nodes']
@@ -1553,46 +1554,40 @@ def transform_ims_data(data):
_build_interface_services()
def _build_sid_services():
for circuits in interface_services.values():
for circuit in circuits:
if 'sid' in circuit:
sid = circuit['sid']
sid_info = {
'circuit_id': circuit['id'],
'sid': sid,
'status': circuit['original_status'],
'monitored': circuit['monitored'],
'name': circuit['name'],
'speed': circuit['calculated-speed'],
'service_type': circuit['service_type'],
'project': circuit['project'],
'customer': circuit['customer'],
'equipment': circuit['equipment'],
'port': circuit['port'],
'geant_equipment': circuit['equipment'] in geant_nodes
}
if sid_info not in sid_services.setdefault(sid, []):
sid_services[sid].append(sid_info)
_build_sid_services()
def _build_services_by_type():
for circuits in interface_services.values():
for circuit in circuits:
type_key = ims_sorted_service_type_key(circuit['service_type'])
services_by_type.setdefault(type_key, {})[circuit['id']] = circuit
_build_services_by_type()
def _build_node_pair_services():
for circuits in interface_services.values():
for circuit in circuits:
if circuit['other_end_equipment']:
node_pair_key = f"{circuit['equipment']}/{circuit['other_end_equipment']}"
node_pair_services.setdefault(node_pair_key, {})[circuit['id']] = circuit
_build_node_pair_services()
def _add_to_sid_services(_circuit):
if 'sid' in _circuit:
sid = _circuit['sid']
sid_info = {
'circuit_id': _circuit['id'],
'sid': sid,
'status': _circuit['original_status'],
'monitored': _circuit['monitored'],
'name': _circuit['name'],
'speed': _circuit['calculated-speed'],
'service_type': _circuit['service_type'],
'project': _circuit['project'],
'customer': _circuit['customer'],
'equipment': _circuit['equipment'],
'port': _circuit['port'],
'geant_equipment': _circuit['equipment'] in geant_nodes
}
if sid_info not in sid_services.setdefault(sid, []):
sid_services[sid].append(sid_info)
def _add_to_services_by_type(_circuit):
type_key = ims_sorted_service_type_key(_circuit['service_type'])
services_by_type.setdefault(type_key, {})[_circuit['id']] = _circuit
def _add_to_node_pair_services(_circuit):
if _circuit['other_end_equipment']:
node_pair_key = f"{_circuit['equipment']}/{_circuit['other_end_equipment']}"
node_pair_services.setdefault(node_pair_key, {})[_circuit['id']] = _circuit
for circuits in interface_services.values():
for circuit in circuits:
_add_to_sid_services(circuit)
_add_to_services_by_type(circuit)
_add_to_node_pair_services(circuit)
return {
'hierarchy': hierarchy,
Loading