@@ 446-495 (lines=50) @@ | ||
443 | cursor.execute(query_expression, (id_,)) |
|
444 | row_expression = cursor.fetchone() |
|
445 | ||
446 | if row_expression is not None: |
|
447 | expression = {'id': row_expression['id'], |
|
448 | 'uuid': row_expression['uuid'], |
|
449 | 'equation': row_expression['equation'], |
|
450 | 'variables': []} |
|
451 | ||
452 | query_variables = (" SELECT v.id, v.name, v.meter_type, v.meter_id " |
|
453 | " FROM tbl_expressions e, tbl_variables v " |
|
454 | " WHERE e.id = %s AND v.expression_id = e.id " |
|
455 | " ORDER BY v.name ") |
|
456 | cursor.execute(query_variables, (row_expression['id'],)) |
|
457 | rows_variables = cursor.fetchall() |
|
458 | if rows_variables is not None: |
|
459 | for row_variable in rows_variables: |
|
460 | if row_variable['meter_type'].lower() == 'meter': |
|
461 | query_meter = (" SELECT m.name " |
|
462 | " FROM tbl_meters m " |
|
463 | " WHERE m.id = %s ") |
|
464 | cursor.execute(query_meter, (row_variable['meter_id'],)) |
|
465 | row_meter = cursor.fetchone() |
|
466 | if row_meter is not None: |
|
467 | expression['variables'].append({'id': row_variable['id'], |
|
468 | 'name': row_variable['name'], |
|
469 | 'meter_type': row_variable['meter_type'], |
|
470 | 'meter_id': row_variable['meter_id'], |
|
471 | 'meter_name': row_meter['name']}) |
|
472 | elif row_variable['meter_type'].lower() == 'offline_meter': |
|
473 | query_meter = (" SELECT m.name " |
|
474 | " FROM tbl_offline_meters m " |
|
475 | " WHERE m.id = %s ") |
|
476 | cursor.execute(query_meter, (row_variable['meter_id'],)) |
|
477 | row_meter = cursor.fetchone() |
|
478 | if row_meter is not None: |
|
479 | expression['variables'].append({'id': row_variable['id'], |
|
480 | 'name': row_variable['name'], |
|
481 | 'meter_type': row_variable['meter_type'], |
|
482 | 'meter_id': row_variable['meter_id'], |
|
483 | 'meter_name': row_meter['name']}) |
|
484 | elif row_variable['meter_type'].lower() == 'virtual_meter': |
|
485 | query_meter = (" SELECT m.name " |
|
486 | " FROM tbl_virtual_meters m " |
|
487 | " WHERE m.id = %s ") |
|
488 | cursor.execute(query_meter, (row_variable['meter_id'],)) |
|
489 | row_meter = cursor.fetchone() |
|
490 | if row_meter is not None: |
|
491 | expression['variables'].append({'id': row_variable['id'], |
|
492 | 'name': row_variable['name'], |
|
493 | 'meter_type': row_variable['meter_type'], |
|
494 | 'meter_id': row_variable['meter_id'], |
|
495 | 'meter_name': row_meter['name']}) |
|
496 | ||
497 | meta_result['expression'] = expression |
|
498 | ||
@@ 88-137 (lines=50) @@ | ||
85 | cursor.execute(query_expression, (row['id'],)) |
|
86 | row_expression = cursor.fetchone() |
|
87 | ||
88 | if row_expression is not None: |
|
89 | expression = {'id': row_expression['id'], |
|
90 | 'uuid': row_expression['uuid'], |
|
91 | 'equation': row_expression['equation'], |
|
92 | 'variables': []} |
|
93 | ||
94 | query_variables = (" SELECT v.id, v.name, v.meter_type, v.meter_id " |
|
95 | " FROM tbl_expressions e, tbl_variables v " |
|
96 | " WHERE e.id = %s AND v.expression_id = e.id " |
|
97 | " ORDER BY v.name ") |
|
98 | cursor.execute(query_variables, (row_expression['id'],)) |
|
99 | rows_variables = cursor.fetchall() |
|
100 | if rows_variables is not None: |
|
101 | for row_variable in rows_variables: |
|
102 | if row_variable['meter_type'].lower() == 'meter': |
|
103 | query_meter = (" SELECT m.name " |
|
104 | " FROM tbl_meters m " |
|
105 | " WHERE m.id = %s ") |
|
106 | cursor.execute(query_meter, (row_variable['meter_id'],)) |
|
107 | row_meter = cursor.fetchone() |
|
108 | if row_meter is not None: |
|
109 | expression['variables'].append({'id': row_variable['id'], |
|
110 | 'name': row_variable['name'], |
|
111 | 'meter_type': row_variable['meter_type'], |
|
112 | 'meter_id': row_variable['meter_id'], |
|
113 | 'meter_name': row_meter['name']}) |
|
114 | elif row_variable['meter_type'].lower() == 'offline_meter': |
|
115 | query_meter = (" SELECT m.name " |
|
116 | " FROM tbl_offline_meters m " |
|
117 | " WHERE m.id = %s ") |
|
118 | cursor.execute(query_meter, (row_variable['meter_id'],)) |
|
119 | row_meter = cursor.fetchone() |
|
120 | if row_meter is not None: |
|
121 | expression['variables'].append({'id': row_variable['id'], |
|
122 | 'name': row_variable['name'], |
|
123 | 'meter_type': row_variable['meter_type'], |
|
124 | 'meter_id': row_variable['meter_id'], |
|
125 | 'meter_name': row_meter['name']}) |
|
126 | elif row_variable['meter_type'].lower() == 'virtual_meter': |
|
127 | query_meter = (" SELECT m.name " |
|
128 | " FROM tbl_virtual_meters m " |
|
129 | " WHERE m.id = %s ") |
|
130 | cursor.execute(query_meter, (row_variable['meter_id'],)) |
|
131 | row_meter = cursor.fetchone() |
|
132 | if row_meter is not None: |
|
133 | expression['variables'].append({'id': row_variable['id'], |
|
134 | 'name': row_variable['name'], |
|
135 | 'meter_type': row_variable['meter_type'], |
|
136 | 'meter_id': row_variable['meter_id'], |
|
137 | 'meter_name': row_meter['name']}) |
|
138 | ||
139 | meta_result['expression'] = expression |
|
140 | result.append(meta_result) |