Code Duplication    Length = 12-12 lines in 2 locations

virtualmeter.py 2 locations

@@ 366-377 (lines=12) @@
363
                        common_end_datetime_utc = max(energy_hourly.keys())
364
365
    print("getting common time slot of energy values for all offline meters...")
366
    if common_start_datetime_utc is not None and common_start_datetime_utc is not None:
367
        if energy_offline_meter_hourly is not None and len(energy_offline_meter_hourly) > 0:
368
            for meter_id, energy_hourly in energy_offline_meter_hourly.items():
369
                if energy_hourly is None or len(energy_hourly) == 0:
370
                    common_start_datetime_utc = None
371
                    common_end_datetime_utc = None
372
                    break
373
                else:
374
                    if common_start_datetime_utc < min(energy_hourly.keys()):
375
                        common_start_datetime_utc = min(energy_hourly.keys())
376
                    if common_end_datetime_utc > max(energy_hourly.keys()):
377
                        common_end_datetime_utc = max(energy_hourly.keys())
378
379
    print("evaluating the equation with SymPy...")
380
    normalized_values = list()
@@ 352-363 (lines=12) @@
349
                    common_end_datetime_utc = max(energy_hourly.keys())
350
351
    print("getting common time slot of energy values for all virtual meters...")
352
    if common_start_datetime_utc is not None and common_start_datetime_utc is not None:
353
        if energy_virtual_meter_hourly is not None and len(energy_virtual_meter_hourly) > 0:
354
            for meter_id, energy_hourly in energy_virtual_meter_hourly.items():
355
                if energy_hourly is None or len(energy_hourly) == 0:
356
                    common_start_datetime_utc = None
357
                    common_end_datetime_utc = None
358
                    break
359
                else:
360
                    if common_start_datetime_utc < min(energy_hourly.keys()):
361
                        common_start_datetime_utc = min(energy_hourly.keys())
362
                    if common_end_datetime_utc > max(energy_hourly.keys()):
363
                        common_end_datetime_utc = max(energy_hourly.keys())
364
365
    print("getting common time slot of energy values for all offline meters...")
366
    if common_start_datetime_utc is not None and common_start_datetime_utc is not None: