diff --git a/myems-api/excelexporters/equipmentefficiency.py b/myems-api/excelexporters/equipmentefficiency.py
index b43b50f9..263de198 100644
--- a/myems-api/excelexporters/equipmentefficiency.py
+++ b/myems-api/excelexporters/equipmentefficiency.py
@@ -168,6 +168,8 @@ def generate_excel(report,
current_row_number += 1
category = reporting_period_data['names']
+ numerator_names = reporting_period_data['numerator_names']
+ denominator_names = reporting_period_data['denominator_names']
ca_len = len(category)
ws.row_dimensions[current_row_number].height = 80
@@ -186,6 +188,29 @@ def generate_excel(report,
col = chr(ord(col) + 1)
+ nu_len = len(numerator_names)
+ for i in range(0, nu_len):
+ ws[col + str(current_row_number)].fill = table_fill
+ ws[col + str(current_row_number)].font = name_font
+ ws[col + str(current_row_number)].alignment = c_c_alignment
+ ws[col + str(current_row_number)].border = f_border
+ ws[col + str(current_row_number)] = \
+ reporting_period_data['numerator_names'][i] + " (" + reporting_period_data['numerator_units'][i] + ")"
+
+ col = chr(ord(col) + 1)
+
+ de_len = len(denominator_names)
+ for i in range(0, de_len):
+ ws[col + str(current_row_number)].fill = table_fill
+ ws[col + str(current_row_number)].font = name_font
+ ws[col + str(current_row_number)].alignment = c_c_alignment
+ ws[col + str(current_row_number)].border = f_border
+ ws[col + str(current_row_number)] = \
+ reporting_period_data['denominator_names'][i] + " (" + \
+ reporting_period_data['denominator_units'][i] + ")"
+
+ col = chr(ord(col) + 1)
+
current_row_number += 1
ws['B' + str(current_row_number)].font = title_font
@@ -203,6 +228,22 @@ def generate_excel(report,
col = chr(ord(col) + 1)
+ for i in range(0, nu_len):
+ ws[col + str(current_row_number)].font = name_font
+ ws[col + str(current_row_number)].alignment = c_c_alignment
+ ws[col + str(current_row_number)].border = f_border
+ ws[col + str(current_row_number)] = round(reporting_period_data['numerator_cumulation'][i], 2)
+
+ col = chr(ord(col) + 1)
+
+ for i in range(0, de_len):
+ ws[col + str(current_row_number)].font = name_font
+ ws[col + str(current_row_number)].alignment = c_c_alignment
+ ws[col + str(current_row_number)].border = f_border
+ ws[col + str(current_row_number)] = round(reporting_period_data['denominator_cumulation'][i], 2)
+
+ col = chr(ord(col) + 1)
+
current_row_number += 1
ws['B' + str(current_row_number)].font = title_font
@@ -222,6 +263,25 @@ def generate_excel(report,
col = chr(ord(col) + 1)
+ for i in range(0, nu_len):
+ ws[col + str(current_row_number)].font = name_font
+ ws[col + str(current_row_number)].alignment = c_c_alignment
+ ws[col + str(current_row_number)].border = f_border
+ ws[col + str(current_row_number)] = str(
+ round(reporting_period_data['increment_rates_num'][i] * 100, 2)) + '%' \
+ if reporting_period_data['increment_rates_num'][i] is not None else '-'
+
+ col = chr(ord(col) + 1)
+
+ for i in range(0, de_len):
+ ws[col + str(current_row_number)].font = name_font
+ ws[col + str(current_row_number)].alignment = c_c_alignment
+ ws[col + str(current_row_number)].border = f_border
+ ws[col + str(current_row_number)] = str(
+ round(reporting_period_data['increment_rates_den'][i] * 100, 2)) + '%' \
+ if reporting_period_data['increment_rates_den'][i] is not None else '-'
+
+ col = chr(ord(col) + 1)
current_row_number += 2
####################################################################################################################
@@ -262,6 +322,8 @@ def generate_excel(report,
if has_values_data and has_timestamps_data:
ca_len = len(reporting_period_data['names'])
+ de_len = len(reporting_period_data['denominator_names'])
+ nu_len = len(reporting_period_data['numerator_names'])
time = reporting_period_data['timestamps'][0]
ws['B' + str(current_row_number)].font = title_font
@@ -271,7 +333,7 @@ def generate_excel(report,
chart_start_row_number = current_row_number
- current_row_number += ca_len * 6 + 1
+ current_row_number += ca_len * 6 + de_len * 6 + nu_len * 6 + 1
if has_parameters_names_and_timestamps_and_values_data:
current_sheet_parameters_row_number = current_row_number
@@ -303,6 +365,26 @@ def generate_excel(report,
reporting_period_data['names'][i] + " (" + reporting_period_data['units'][i] + ")"
col = chr(ord(col) + 1)
+ for i in range(0, nu_len):
+ ws[col + str(current_row_number)].fill = table_fill
+ ws[col + str(current_row_number)].font = title_font
+ ws[col + str(current_row_number)].alignment = c_c_alignment
+ ws[col + str(current_row_number)].border = f_border
+ ws[col + str(current_row_number)] = \
+ reporting_period_data['numerator_names'][i] + " (" + reporting_period_data['numerator_units'][i] + ")"
+ col = chr(ord(col) + 1)
+
+ for i in range(0, de_len):
+ ws[col + str(current_row_number)].fill = table_fill
+ ws[col + str(current_row_number)].font = name_font
+ ws[col + str(current_row_number)].alignment = c_c_alignment
+ ws[col + str(current_row_number)].border = f_border
+ ws[col + str(current_row_number)] = \
+ reporting_period_data['denominator_names'][i] + " (" + \
+ reporting_period_data['denominator_units'][i] + ")"
+
+ col = chr(ord(col) + 1)
+
current_row_number += 1
for i in range(0, len(time)):
@@ -320,6 +402,22 @@ def generate_excel(report,
if reporting_period_data['values'][j][i] is not None else 0.00
col = chr(ord(col) + 1)
+ for j in range(0, nu_len):
+ ws[col + str(current_row_number)].font = title_font
+ ws[col + str(current_row_number)].alignment = c_c_alignment
+ ws[col + str(current_row_number)].border = f_border
+ ws[col + str(current_row_number)] = round(reporting_period_data['numerator_values'][j][i], 2) \
+ if reporting_period_data['numerator_values'][j][i] is not None else 0.00
+ col = chr(ord(col) + 1)
+
+ for j in range(0, de_len):
+ ws[col + str(current_row_number)].font = title_font
+ ws[col + str(current_row_number)].alignment = c_c_alignment
+ ws[col + str(current_row_number)].border = f_border
+ ws[col + str(current_row_number)] = round(reporting_period_data['denominator_values'][j][i], 2) \
+ if reporting_period_data['denominator_values'][j][i] is not None else 0.00
+ col = chr(ord(col) + 1)
+
current_row_number += 1
table_end_row_number = current_row_number - 1
@@ -338,6 +436,22 @@ def generate_excel(report,
ws[col + str(current_row_number)] = round(reporting_period_data['cumulations'][i], 2)
col = chr(ord(col) + 1)
+ for i in range(0, nu_len):
+ ws[col + str(current_row_number)].font = title_font
+ ws[col + str(current_row_number)].alignment = c_c_alignment
+ ws[col + str(current_row_number)].border = f_border
+ ws[col + str(current_row_number)] = round(reporting_period_data['numerator_cumulation'][i], 2)
+
+ col = chr(ord(col) + 1)
+
+ for i in range(0, de_len):
+ ws[col + str(current_row_number)].font = title_font
+ ws[col + str(current_row_number)].alignment = c_c_alignment
+ ws[col + str(current_row_number)].border = f_border
+ ws[col + str(current_row_number)] = round(reporting_period_data['denominator_cumulation'][i], 2)
+
+ col = chr(ord(col) + 1)
+
current_row_number += 2
format_time_width_number = 1.0
@@ -386,6 +500,58 @@ def generate_excel(report,
chart_start_row_number += 6
ws.add_chart(line, chart_cell)
+ for i in range(0, nu_len):
+ line = LineChart()
+ line.title = 'Reporting Period Cumulative Efficiency - ' + \
+ reporting_period_data['numerator_names'][i] + " (" + \
+ reporting_period_data['numerator_units'][i] + ")"
+ labels = Reference(ws, min_col=2, min_row=table_start_row_number + 1, max_row=table_end_row_number)
+ line_data = Reference(ws, min_col=3 + i, min_row=table_start_row_number, max_row=table_end_row_number)
+ line.add_data(line_data, titles_from_data=True)
+ line.set_categories(labels)
+ line_data = line.series[0]
+ line_data.marker.symbol = "circle"
+ line_data.smooth = True
+ line.x_axis.crosses = 'min'
+ line.height = 8.25
+ line.width = format_time_width_number * len(time) if len(time) > min_len_number else min_width_number
+ if line.width > 24:
+ line.width = 24
+ line.dLbls = DataLabelList()
+ line.dLbls.dLblPos = 't'
+ line.dLbls.showVal = True
+ line.dLbls.showPercent = False
+ chart_col = 'B'
+ chart_cell = chart_col + str(chart_start_row_number)
+ chart_start_row_number += 6
+ ws.add_chart(line, chart_cell)
+
+ for i in range(0, de_len):
+ line = LineChart()
+ line.title = 'Reporting Period Cumulative Efficiency - ' + \
+ reporting_period_data['denominator_names'][i] + " (" + \
+ reporting_period_data['denominator_units'][i] + ")"
+ labels = Reference(ws, min_col=2, min_row=table_start_row_number + 1, max_row=table_end_row_number)
+ line_data = Reference(ws, min_col=3 + i, min_row=table_start_row_number, max_row=table_end_row_number)
+ line.add_data(line_data, titles_from_data=True)
+ line.set_categories(labels)
+ line_data = line.series[0]
+ line_data.marker.symbol = "circle"
+ line_data.smooth = True
+ line.x_axis.crosses = 'min'
+ line.height = 8.25
+ line.width = format_time_width_number * len(time) if len(time) > min_len_number else min_width_number
+ if line.width > 24:
+ line.width = 24
+ line.dLbls = DataLabelList()
+ line.dLbls.dLblPos = 't'
+ line.dLbls.showVal = True
+ line.dLbls.showPercent = False
+ chart_col = 'B'
+ chart_cell = chart_col + str(chart_start_row_number)
+ chart_start_row_number += 6
+ ws.add_chart(line, chart_cell)
+
####################################################################################################################
if has_parameters_names_and_timestamps_and_values_data:
diff --git a/myems-api/reports/equipmentefficiency.py b/myems-api/reports/equipmentefficiency.py
index 9e3836f8..1faf4854 100644
--- a/myems-api/reports/equipmentefficiency.py
+++ b/myems-api/reports/equipmentefficiency.py
@@ -195,7 +195,7 @@ class Reporting:
################################################################################################################
# get all meters
meter_dict = dict()
- query = (" SELECT m.id, m.uuid, ec.unit_of_measure "
+ query = (" SELECT m.id, m.uuid, ec.unit_of_measure, ec.name "
" FROM tbl_meters m, tbl_energy_categories ec "
" WHERE m.energy_category_id = ec.id ")
cursor_system.execute(query)
@@ -203,10 +203,10 @@ class Reporting:
if rows_meters is not None and len(rows_meters) > 0:
for row in rows_meters:
- meter_dict[row[1]] = {'id': row[0], 'unit': row[2]}
+ meter_dict[row[1]] = {'id': row[0], 'unit': row[2], 'name': row[3]}
# get all offline meters
offline_meter_dict = dict()
- query = (" SELECT m.id, m.uuid, ec.unit_of_measure "
+ query = (" SELECT m.id, m.uuid, ec.unit_of_measure, ec.name "
" FROM tbl_offline_meters m, tbl_energy_categories ec "
" WHERE m.energy_category_id = ec.id ")
cursor_system.execute(query)
@@ -214,10 +214,10 @@ class Reporting:
if rows_offline_meters is not None and len(rows_offline_meters) > 0:
for row in rows_offline_meters:
- offline_meter_dict[row[1]] = {'id': row[0], 'unit': row[2]}
+ offline_meter_dict[row[1]] = {'id': row[0], 'unit': row[2], 'name': row[3]}
# get all virtual meters
virtual_meter_dict = dict()
- query = (" SELECT m.id, m.uuid, ec.unit_of_measure "
+ query = (" SELECT m.id, m.uuid, ec.unit_of_measure, ec.name "
" FROM tbl_virtual_meters m, tbl_energy_categories ec "
" WHERE m.energy_category_id = ec.id ")
cursor_system.execute(query)
@@ -225,32 +225,38 @@ class Reporting:
if rows_virtual_meters is not None and len(rows_virtual_meters) > 0:
for row in rows_virtual_meters:
- virtual_meter_dict[row[1]] = {'id': row[0], 'unit': row[2]}
+ virtual_meter_dict[row[1]] = {'id': row[0], 'unit': row[2], 'name': row[3]}
if fraction_list is not None and len(fraction_list) > 0:
for fraction in fraction_list:
if fraction['numerator_meter_uuid'] in offline_meter_dict:
+ fraction['numerator_meter_name'] = offline_meter_dict[fraction['numerator_meter_uuid']]['name']
fraction['numerator_meter_id'] = offline_meter_dict[fraction['numerator_meter_uuid']]['id']
fraction['numerator_meter_unit'] = offline_meter_dict[fraction['numerator_meter_uuid']]['unit']
fraction['numerator_meter_type'] = 'offline_meter'
elif fraction['numerator_meter_uuid'] in virtual_meter_dict:
+ fraction['numerator_meter_name'] = virtual_meter_dict[fraction['numerator_meter_uuid']]['name']
fraction['numerator_meter_id'] = virtual_meter_dict[fraction['numerator_meter_uuid']]['id']
fraction['numerator_meter_unit'] = virtual_meter_dict[fraction['numerator_meter_uuid']]['unit']
fraction['numerator_meter_type'] = 'virtual_meter'
elif fraction['numerator_meter_uuid'] in meter_dict:
+ fraction['numerator_meter_name'] = meter_dict[fraction['numerator_meter_uuid']]['name']
fraction['numerator_meter_id'] = meter_dict[fraction['numerator_meter_uuid']]['id']
fraction['numerator_meter_unit'] = meter_dict[fraction['numerator_meter_uuid']]['unit']
fraction['numerator_meter_type'] = 'meter'
if fraction['denominator_meter_uuid'] in offline_meter_dict:
+ fraction['denominator_meter_name'] = offline_meter_dict[fraction['denominator_meter_uuid']]['name']
fraction['denominator_meter_id'] = offline_meter_dict[fraction['denominator_meter_uuid']]['id']
fraction['denominator_meter_unit'] = offline_meter_dict[fraction['denominator_meter_uuid']]['unit']
fraction['denominator_meter_type'] = 'offline_meter'
elif fraction['denominator_meter_uuid'] in virtual_meter_dict:
+ fraction['denominator_meter_name'] = virtual_meter_dict[fraction['denominator_meter_uuid']]['name']
fraction['denominator_meter_id'] = virtual_meter_dict[fraction['denominator_meter_uuid']]['id']
fraction['denominator_meter_unit'] = virtual_meter_dict[fraction['denominator_meter_uuid']]['unit']
fraction['denominator_meter_type'] = 'virtual_meter'
elif fraction['denominator_meter_uuid'] in meter_dict:
+ fraction['denominator_meter_name'] = meter_dict[fraction['denominator_meter_uuid']]['name']
fraction['denominator_meter_id'] = meter_dict[fraction['denominator_meter_uuid']]['id']
fraction['denominator_meter_unit'] = meter_dict[fraction['denominator_meter_uuid']]['unit']
fraction['denominator_meter_type'] = 'meter'
@@ -406,6 +412,10 @@ class Reporting:
for fraction in fraction_list:
reporting[fraction['id']] = dict()
reporting[fraction['id']]['name'] = fraction['name']
+ reporting[fraction['id']]['numerator_name'] = fraction['numerator_meter_name']
+ reporting[fraction['id']]['numerator_unit'] = fraction['numerator_meter_unit']
+ reporting[fraction['id']]['denominator_name'] = fraction['denominator_meter_name']
+ reporting[fraction['id']]['denominator_unit'] = fraction['denominator_meter_unit']
reporting[fraction['id']]['unit'] = fraction['numerator_meter_unit'] + '/' + \
fraction['denominator_meter_unit']
reporting[fraction['id']]['numerator_timestamps'] = list()
@@ -636,10 +646,23 @@ class Reporting:
result['reporting_period_efficiency'] = dict()
result['reporting_period_efficiency']['names'] = list()
result['reporting_period_efficiency']['units'] = list()
+ result['reporting_period_efficiency']['numerator_names'] = list()
+ result['reporting_period_efficiency']['numerator_units'] = list()
+ result['reporting_period_efficiency']['denominator_names'] = list()
+ result['reporting_period_efficiency']['denominator_units'] = list()
result['reporting_period_efficiency']['timestamps'] = list()
result['reporting_period_efficiency']['values'] = list()
+ result['reporting_period_efficiency']['numerator_timestamps'] = list()
+ result['reporting_period_efficiency']['numerator_values'] = list()
+ result['reporting_period_efficiency']['denominator_timestamps'] = list()
+ result['reporting_period_efficiency']['denominator_values'] = list()
result['reporting_period_efficiency']['cumulations'] = list()
+ result['reporting_period_efficiency']['numerator_cumulation'] = list()
+ result['reporting_period_efficiency']['denominator_cumulation'] = list()
result['reporting_period_efficiency']['increment_rates'] = list()
+ result['reporting_period_efficiency']['increment_rates_num'] = list()
+ result['reporting_period_efficiency']['increment_rates_den'] = list()
+
if fraction_list is not None and len(fraction_list) > 0:
for fraction in fraction_list:
result['base_period_efficiency']['timestamps'].append(base[fraction['id']]['timestamps'])
@@ -647,12 +670,43 @@ class Reporting:
result['base_period_efficiency']['cumulations'].append(base[fraction['id']]['cumulation'])
result['reporting_period_efficiency']['names'].append(reporting[fraction['id']]['name'])
result['reporting_period_efficiency']['units'].append(reporting[fraction['id']]['unit'])
+
+ result['reporting_period_efficiency']['numerator_names'].append(
+ reporting[fraction['id']]['numerator_name'])
+ result['reporting_period_efficiency']['numerator_units'].append(
+ reporting[fraction['id']]['numerator_unit'])
+ result['reporting_period_efficiency']['denominator_names'].append(
+ reporting[fraction['id']]['denominator_name'])
+ result['reporting_period_efficiency']['denominator_units'].append(
+ reporting[fraction['id']]['denominator_unit'])
+
result['reporting_period_efficiency']['timestamps'].append(reporting[fraction['id']]['timestamps'])
result['reporting_period_efficiency']['values'].append(reporting[fraction['id']]['values'])
+ result['reporting_period_efficiency']['numerator_timestamps'].append(
+ reporting[fraction['id']]['numerator_timestamps'])
+ result['reporting_period_efficiency']['numerator_values'].append(
+ reporting[fraction['id']]['numerator_values'])
+ result['reporting_period_efficiency']['denominator_timestamps'].append(
+ reporting[fraction['id']]['denominator_timestamps'])
+ result['reporting_period_efficiency']['denominator_values'].append(
+ reporting[fraction['id']]['denominator_values'])
result['reporting_period_efficiency']['cumulations'].append(reporting[fraction['id']]['cumulation'])
+ result['reporting_period_efficiency']['numerator_cumulation'].append(
+ reporting[fraction['id']]['numerator_cumulation'])
+ result['reporting_period_efficiency']['denominator_cumulation'].append(
+ reporting[fraction['id']]['denominator_cumulation'])
result['reporting_period_efficiency']['increment_rates'].append(
(reporting[fraction['id']]['cumulation'] - base[fraction['id']]['cumulation']) /
base[fraction['id']]['cumulation'] if base[fraction['id']]['cumulation'] > Decimal(0.0) else None)
+ result['reporting_period_efficiency']['increment_rates_num'].append(
+ (reporting[fraction['id']]['numerator_cumulation'] - base[fraction['id']]['numerator_cumulation']) /
+ base[fraction['id']]['numerator_cumulation'] if base[fraction['id']]['numerator_cumulation'] >
+ Decimal(0.0) else None)
+ result['reporting_period_efficiency']['increment_rates_den'].append(
+ (reporting[fraction['id']]['denominator_cumulation'] -
+ base[fraction['id']]['denominator_cumulation']) /
+ base[fraction['id']]['denominator_cumulation'] if base[fraction['id']]['denominator_cumulation'] >
+ Decimal(0.0) else None)
result['parameters'] = {
"names": parameters_data['names'],
diff --git a/web/src/components/MyEMS/Equipment/EquipmentEfficiency.js b/web/src/components/MyEMS/Equipment/EquipmentEfficiency.js
index fdff3106..0cccb966 100644
--- a/web/src/components/MyEMS/Equipment/EquipmentEfficiency.js
+++ b/web/src/components/MyEMS/Equipment/EquipmentEfficiency.js
@@ -77,6 +77,8 @@ const EquipmentEfficiency = ({ setRedirect, setRedirectUrl, t }) => {
//Results
const [cardSummaryList, setCardSummaryList] = useState([]);
+ const [totalOutput, settotalOutput] = useState({});
+ const [totalConsumption, settotalConsumption] = useState({});
const [equipmentLineChartLabels, setEquipmentLineChartLabels] = useState([]);
const [equipmentLineChartData, setEquipmentLineChartData] = useState({});
const [equipmentLineChartOptions, setEquipmentLineChartOptions] = useState([]);
@@ -320,7 +322,7 @@ const EquipmentEfficiency = ({ setRedirect, setRedirectUrl, t }) => {
}).then(json => {
if (isResponseOK) {
console.log(json)
-
+
let cardSummaryArray = []
json['reporting_period_efficiency']['names'].forEach((currentValue, index) => {
let cardSummaryItem = {}
@@ -330,18 +332,50 @@ const EquipmentEfficiency = ({ setRedirect, setRedirectUrl, t }) => {
cardSummaryItem['increment_rate'] = parseFloat(json['reporting_period_efficiency']['increment_rates'][index] * 100).toFixed(2) + "%";
cardSummaryArray.push(cardSummaryItem);
});
+ console.log("cardSummaryArray")
+ console.log(cardSummaryArray)
setCardSummaryList(cardSummaryArray);
-
+
+ let totalOutput = {}
+ json['reporting_period_efficiency']['numerator_names'].forEach((currentValue, index) => {
+ totalOutput['name'] = json['reporting_period_efficiency']['numerator_names'][index];
+ totalOutput['unit'] = json['reporting_period_efficiency']['numerator_units'][index];
+ totalOutput['cumulation'] = json['reporting_period_efficiency']['numerator_cumulation'][index];
+ totalOutput['increment_rate'] = parseFloat(json['reporting_period_efficiency']['increment_rates_num'][index] * 100).toFixed(2) + "%";
+ });
+ settotalOutput(totalOutput);
+
+ let totalConsumption = {}
+ json['reporting_period_efficiency']['denominator_names'].forEach((currentValue, index) => {
+ totalConsumption['name'] = json['reporting_period_efficiency']['denominator_names'][index];
+ totalConsumption['unit'] = json['reporting_period_efficiency']['denominator_units'][index];
+ totalConsumption['cumulation'] = json['reporting_period_efficiency']['denominator_cumulation'][index];
+ totalConsumption['increment_rate'] = parseFloat(json['reporting_period_efficiency']['increment_rates_den'][index] * 100).toFixed(2) + "%";
+ });
+ settotalConsumption(totalConsumption);
+
let timestamps = {}
json['reporting_period_efficiency']['timestamps'].forEach((currentValue, index) => {
timestamps['a' + index] = currentValue;
});
+ json['reporting_period_efficiency']['numerator_timestamps'].forEach((currentValue, index) => {
+ timestamps['b' + index] = currentValue;
+ });
+ json['reporting_period_efficiency']['denominator_timestamps'].forEach((currentValue, index) => {
+ timestamps['c' + index] = currentValue;
+ });
setEquipmentLineChartLabels(timestamps);
let values = {}
json['reporting_period_efficiency']['values'].forEach((currentValue, index) => {
values['a' + index] = currentValue;
});
+ json['reporting_period_efficiency']['numerator_values'].forEach((currentValue, index) => {
+ values['b' + index] = currentValue;
+ });
+ json['reporting_period_efficiency']['denominator_values'].forEach((currentValue, index) => {
+ values['c' + index] = currentValue;
+ });
setEquipmentLineChartData(values);
let names = Array();
@@ -349,8 +383,16 @@ const EquipmentEfficiency = ({ setRedirect, setRedirectUrl, t }) => {
let unit = json['reporting_period_efficiency']['units'][index];
names.push({ 'value': 'a' + index, 'label': currentValue + ' (' + unit + ')'});
});
+ json['reporting_period_efficiency']['numerator_names'].forEach((currentValue, index) => {
+ let unit = json['reporting_period_efficiency']['numerator_units'][index];
+ names.push({ 'value': 'b' + index, 'label': currentValue + ' (' + unit + ')'});
+ });
+ json['reporting_period_efficiency']['denominator_names'].forEach((currentValue, index) => {
+ let unit = json['reporting_period_efficiency']['denominator_units'][index];
+ names.push({ 'value': 'c' + index, 'label': currentValue + ' (' + unit + ')'});
+ });
setEquipmentLineChartOptions(names);
-
+
timestamps = {}
json['parameters']['timestamps'].forEach((currentValue, index) => {
timestamps['a' + index] = currentValue;
@@ -386,7 +428,20 @@ const EquipmentEfficiency = ({ setRedirect, setRedirectUrl, t }) => {
detailed_value['a' + parameterIndex] = null;
};
});
-
+ json['reporting_period_efficiency']['numerator_values'].forEach((currentValue, parameterIndex) => {
+ if (json['reporting_period_efficiency']['numerator_values'][parameterIndex][timestampIndex] != null) {
+ detailed_value['b' + parameterIndex] = json['reporting_period_efficiency']['numerator_values'][parameterIndex][timestampIndex];
+ } else {
+ detailed_value['b' + parameterIndex] = null;
+ };
+ });
+ json['reporting_period_efficiency']['denominator_values'].forEach((currentValue, parameterIndex) => {
+ if (json['reporting_period_efficiency']['denominator_values'][parameterIndex][timestampIndex] != null) {
+ detailed_value['c' + parameterIndex] = json['reporting_period_efficiency']['denominator_values'][parameterIndex][timestampIndex];
+ } else {
+ detailed_value['c' + parameterIndex] = null;
+ };
+ });
detailed_value_list.push(detailed_value);
});
};
@@ -397,6 +452,14 @@ const EquipmentEfficiency = ({ setRedirect, setRedirectUrl, t }) => {
json['reporting_period_efficiency']['cumulations'].forEach((currentValue, index) => {
detailed_value['a' + index] = currentValue;
});
+ json['reporting_period_efficiency']['numerator_cumulation'].forEach((currentValue, index) => {
+ detailed_value['b' + index] = currentValue;
+ });
+ json['reporting_period_efficiency']['denominator_cumulation'].forEach((currentValue, index) => {
+ detailed_value['c' + index] = currentValue;
+ });
+ console.log("detailed_value_list")
+ console.log(detailed_value_list)
detailed_value_list.push(detailed_value);
setDetailedDataTableData(detailed_value_list);
@@ -421,6 +484,38 @@ const EquipmentEfficiency = ({ setRedirect, setRedirectUrl, t }) => {
}
})
});
+ json['reporting_period_efficiency']['numerator_names'].forEach((currentValue, index) => {
+ let unit = json['reporting_period_efficiency']['numerator_units'][index];
+ detailed_column_list.push({
+ dataField: 'b' + index,
+ text: currentValue + ' (' + unit + ')',
+ sort: true,
+ formatter: function (decimalValue) {
+ if (decimalValue !== null) {
+ return decimalValue.toFixed(2);
+ } else {
+ return null;
+ }
+ }
+ })
+ });
+ json['reporting_period_efficiency']['denominator_names'].forEach((currentValue, index) => {
+ let unit = json['reporting_period_efficiency']['denominator_units'][index];
+ detailed_column_list.push({
+ dataField: 'c' + index,
+ text: currentValue + ' (' + unit + ')',
+ sort: true,
+ formatter: function (decimalValue) {
+ if (decimalValue !== null) {
+ return decimalValue.toFixed(2);
+ } else {
+ return null;
+ }
+ }
+ })
+ });
+ console.log("detailed_column_list")
+ console.log(detailed_column_list)
setDetailedDataTableColumns(detailed_column_list);
setExcelBytesBase64(json['excel_bytes_base64']);
@@ -611,11 +706,25 @@ const EquipmentEfficiency = ({ setRedirect, setRedirectUrl, t }) => {
{cardSummaryItem['cumulation'] && }
))}
+
+
+ {totalOutput['cumulation'] && }
+
+
+
+ {totalConsumption['cumulation'] && }
+