Code Duplication    Length = 34-34 lines in 2 locations

myems-api/core/combinedequipment.py 2 locations

@@ 1312-1345 (lines=34) @@
1309
            point = None
1310
            numerator_meter = None
1311
            denominator_meter = None
1312
            if row[2] == 'point':
1313
                point = point_dict.get(row[4], None)
1314
                if point is None and row[4] is not None:
1315
                    query = (" SELECT id, name "
1316
                             " FROM tbl_points "
1317
                             " WHERE id = %s ")
1318
                    cursor.execute(query, (row[4],))
1319
                    point_row = cursor.fetchone()
1320
                    if point_row is not None:
1321
                        point = {"id": point_row[0],
1322
                                 "name": point_row[1]}
1323
                constant = None
1324
                numerator_meter = None
1325
                denominator_meter = None
1326
            elif row[2] == 'constant':
1327
                constant = row[3]
1328
                point = None
1329
                numerator_meter = None
1330
                denominator_meter = None
1331
            elif row[2] == 'fraction':
1332
                constant = None
1333
                point = None
1334
                # find numerator meter by uuid
1335
                numerator_meter = meter_dict.get(row[5], None)
1336
                if numerator_meter is None:
1337
                    numerator_meter = virtual_meter_dict.get(row[5], None)
1338
                if numerator_meter is None:
1339
                    numerator_meter = offline_meter_dict.get(row[5], None)
1340
                # find denominator meter by uuid
1341
                denominator_meter = meter_dict.get(row[6], None)
1342
                if denominator_meter is None:
1343
                    denominator_meter = virtual_meter_dict.get(row[6], None)
1344
                if denominator_meter is None:
1345
                    denominator_meter = offline_meter_dict.get(row[6], None)
1346
1347
            meta_result = {"id": row[0],
1348
                           "name": row[1],
@@ 941-974 (lines=34) @@
938
                point = None
939
                numerator_meter = None
940
                denominator_meter = None
941
                if row[2] == 'point':
942
                    point = point_dict.get(row[4], None)
943
                    if point is None and row[4] is not None:
944
                        query = (" SELECT id, name "
945
                                 " FROM tbl_points "
946
                                 " WHERE id = %s ")
947
                        cursor.execute(query, (row[4],))
948
                        point_row = cursor.fetchone()
949
                        if point_row is not None:
950
                            point = {"id": point_row[0],
951
                                     "name": point_row[1]}
952
                    constant = None
953
                    numerator_meter = None
954
                    denominator_meter = None
955
                elif row[2] == 'constant':
956
                    constant = row[3]
957
                    point = None
958
                    numerator_meter = None
959
                    denominator_meter = None
960
                elif row[2] == 'fraction':
961
                    constant = None
962
                    point = None
963
                    # find numerator meter by uuid
964
                    numerator_meter = meter_dict.get(row[5], None)
965
                    if numerator_meter is None:
966
                        numerator_meter = virtual_meter_dict.get(row[5], None)
967
                    if numerator_meter is None:
968
                        numerator_meter = offline_meter_dict.get(row[5], None)
969
                    # find denominator meter by uuid
970
                    denominator_meter = meter_dict.get(row[6], None)
971
                    if denominator_meter is None:
972
                        denominator_meter = virtual_meter_dict.get(row[6], None)
973
                    if denominator_meter is None:
974
                        denominator_meter = offline_meter_dict.get(row[6], None)
975
976
                meta_result = {"id": row[0],
977
                               "name": row[1],