Code Duplication    Length = 54-54 lines in 2 locations

myems-api/reports/combinedequipmentstatistics.py 1 location

@@ 622-675 (lines=54) @@
619
        result['reporting_period']['variances'] = list()
620
        result['reporting_period']['variances_increment_rate'] = list()
621
622
        if energy_category_set is not None and len(energy_category_set) > 0:
623
            for energy_category_id in energy_category_set:
624
                result['reporting_period']['names'].append(energy_category_dict[energy_category_id]['name'])
625
                result['reporting_period']['energy_category_ids'].append(energy_category_id)
626
                result['reporting_period']['units'].append(energy_category_dict[energy_category_id]['unit_of_measure'])
627
                result['reporting_period']['timestamps'].append(reporting[energy_category_id]['timestamps'])
628
                result['reporting_period']['values'].append(reporting[energy_category_id]['values'])
629
                result['reporting_period']['subtotals'].append(reporting[energy_category_id]['subtotal'])
630
                result['reporting_period']['means'].append(reporting[energy_category_id]['mean'])
631
                result['reporting_period']['means_increment_rate'].append(
632
                    (reporting[energy_category_id]['mean'] - base[energy_category_id]['mean']) /
633
                    base[energy_category_id]['mean'] if (base[energy_category_id]['mean'] is not None and
634
                                                         base[energy_category_id]['mean'] > Decimal(0.0))
635
                    else None)
636
                result['reporting_period']['medians'].append(reporting[energy_category_id]['median'])
637
                result['reporting_period']['medians_increment_rate'].append(
638
                    (reporting[energy_category_id]['median'] - base[energy_category_id]['median']) /
639
                    base[energy_category_id]['median'] if (base[energy_category_id]['median'] is not None and
640
                                                           base[energy_category_id]['median'] > Decimal(0.0))
641
                    else None)
642
                result['reporting_period']['minimums'].append(reporting[energy_category_id]['minimum'])
643
                result['reporting_period']['minimums_increment_rate'].append(
644
                    (reporting[energy_category_id]['minimum'] - base[energy_category_id]['minimum']) /
645
                    base[energy_category_id]['minimum'] if (base[energy_category_id]['minimum'] is not None and
646
                                                            base[energy_category_id]['minimum'] > Decimal(0.0))
647
                    else None)
648
                result['reporting_period']['maximums'].append(reporting[energy_category_id]['maximum'])
649
                result['reporting_period']['maximums_increment_rate'].append(
650
                    (reporting[energy_category_id]['maximum'] - base[energy_category_id]['maximum']) /
651
                    base[energy_category_id]['maximum'] if (base[energy_category_id]['maximum'] is not None and
652
                                                            base[energy_category_id]['maximum'] > Decimal(0.0))
653
                    else None)
654
                result['reporting_period']['stdevs'].append(reporting[energy_category_id]['stdev'])
655
                result['reporting_period']['stdevs_increment_rate'].append(
656
                    (reporting[energy_category_id]['stdev'] - base[energy_category_id]['stdev']) /
657
                    base[energy_category_id]['stdev'] if (base[energy_category_id]['stdev'] is not None and
658
                                                          base[energy_category_id]['stdev'] > Decimal(0.0))
659
                    else None)
660
                result['reporting_period']['variances'].append(reporting[energy_category_id]['variance'])
661
                result['reporting_period']['variances_increment_rate'].append(
662
                    (reporting[energy_category_id]['variance'] - base[energy_category_id]['variance']) /
663
                    base[energy_category_id]['variance'] if (base[energy_category_id]['variance'] is not None and
664
                                                             base[energy_category_id]['variance'] > Decimal(0.0))
665
                    else None)
666
667
                rate = list()
668
                for index, value in enumerate(reporting[energy_category_id]['values']):
669
                    if index < len(base[energy_category_id]['values']) \
670
                            and base[energy_category_id]['values'][index] != 0 and value != 0:
671
                        rate.append((value - base[energy_category_id]['values'][index])
672
                                    / base[energy_category_id]['values'][index])
673
                    else:
674
                        rate.append(None)
675
                result['reporting_period']['rates'].append(rate)
676
677
        result['parameters'] = {
678
            "names": parameters_data['names'],

myems-api/reports/equipmentstatistics.py 1 location

@@ 575-628 (lines=54) @@
572
        result['reporting_period']['variances'] = list()
573
        result['reporting_period']['variances_increment_rate'] = list()
574
575
        if energy_category_set is not None and len(energy_category_set) > 0:
576
            for energy_category_id in energy_category_set:
577
                result['reporting_period']['names'].append(energy_category_dict[energy_category_id]['name'])
578
                result['reporting_period']['energy_category_ids'].append(energy_category_id)
579
                result['reporting_period']['units'].append(energy_category_dict[energy_category_id]['unit_of_measure'])
580
                result['reporting_period']['timestamps'].append(reporting[energy_category_id]['timestamps'])
581
                result['reporting_period']['values'].append(reporting[energy_category_id]['values'])
582
                result['reporting_period']['subtotals'].append(reporting[energy_category_id]['subtotal'])
583
                result['reporting_period']['means'].append(reporting[energy_category_id]['mean'])
584
                result['reporting_period']['means_increment_rate'].append(
585
                    (reporting[energy_category_id]['mean'] - base[energy_category_id]['mean']) /
586
                    base[energy_category_id]['mean'] if (base[energy_category_id]['mean'] is not None and
587
                                                         base[energy_category_id]['mean'] > Decimal(0.0))
588
                    else None)
589
                result['reporting_period']['medians'].append(reporting[energy_category_id]['median'])
590
                result['reporting_period']['medians_increment_rate'].append(
591
                    (reporting[energy_category_id]['median'] - base[energy_category_id]['median']) /
592
                    base[energy_category_id]['median'] if (base[energy_category_id]['median'] is not None and
593
                                                           base[energy_category_id]['median'] > Decimal(0.0))
594
                    else None)
595
                result['reporting_period']['minimums'].append(reporting[energy_category_id]['minimum'])
596
                result['reporting_period']['minimums_increment_rate'].append(
597
                    (reporting[energy_category_id]['minimum'] - base[energy_category_id]['minimum']) /
598
                    base[energy_category_id]['minimum'] if (base[energy_category_id]['minimum'] is not None and
599
                                                            base[energy_category_id]['minimum'] > Decimal(0.0))
600
                    else None)
601
                result['reporting_period']['maximums'].append(reporting[energy_category_id]['maximum'])
602
                result['reporting_period']['maximums_increment_rate'].append(
603
                    (reporting[energy_category_id]['maximum'] - base[energy_category_id]['maximum']) /
604
                    base[energy_category_id]['maximum'] if (base[energy_category_id]['maximum'] is not None and
605
                                                            base[energy_category_id]['maximum'] > Decimal(0.0))
606
                    else None)
607
                result['reporting_period']['stdevs'].append(reporting[energy_category_id]['stdev'])
608
                result['reporting_period']['stdevs_increment_rate'].append(
609
                    (reporting[energy_category_id]['stdev'] - base[energy_category_id]['stdev']) /
610
                    base[energy_category_id]['stdev'] if (base[energy_category_id]['stdev'] is not None and
611
                                                          base[energy_category_id]['stdev'] > Decimal(0.0))
612
                    else None)
613
                result['reporting_period']['variances'].append(reporting[energy_category_id]['variance'])
614
                result['reporting_period']['variances_increment_rate'].append(
615
                    (reporting[energy_category_id]['variance'] - base[energy_category_id]['variance']) /
616
                    base[energy_category_id]['variance'] if (base[energy_category_id]['variance'] is not None and
617
                                                             base[energy_category_id]['variance'] > Decimal(0.0))
618
                    else None)
619
620
                rate = list()
621
                for index, value in enumerate(reporting[energy_category_id]['values']):
622
                    if index < len(base[energy_category_id]['values']) \
623
                            and base[energy_category_id]['values'][index] != 0 and value != 0:
624
                        rate.append((value - base[energy_category_id]['values'][index])
625
                                    / base[energy_category_id]['values'][index])
626
                    else:
627
                        rate.append(None)
628
                result['reporting_period']['rates'].append(rate)
629
630
        result['parameters'] = {
631
            "names": parameters_data['names'],