From d39ad6e7a3a21ebc0b7aea849a0d571f61a59547 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=B6rn=20K=C3=BCnsem=C3=B6ller?=
 <jkuensem@physik.uni-bielefeld.de>
Date: Wed, 30 Aug 2023 12:12:41 +0200
Subject: [PATCH] TMSS-2626: convert seconds to hours and alter table header
 text

---
 .../cycle/report.category.observations.js     | 32 ++++++++++---------
 .../Report/cycle/report.ilt_local.usage.js    | 20 ++++++------
 2 files changed, 28 insertions(+), 24 deletions(-)

diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Report/cycle/report.category.observations.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Report/cycle/report.category.observations.js
index 61f179dd676..477b1ed2a53 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Report/cycle/report.category.observations.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Report/cycle/report.category.observations.js
@@ -4,6 +4,7 @@ import _ from 'lodash';
 import { DataTable } from 'primereact/datatable';
 import { Column } from 'primereact/column';
 import MathUtility from "../../../utils/math.utility";
+import UnitConverter from "../../../utils/unit.converter";
 
 /**
  * Component to show Observations per category in a cycle.
@@ -98,16 +99,17 @@ class CycleCategoryObservations extends Component{
 
     getReportData(isTableData) {
         let reportData = [];
+        const timeConversionFactor = UnitConverter.resourceUnitMap["time"].conversionFactor;
         this.props.data.map(repData => {
             let cycleData = {}
-            cycleData['cycle'] = repData.cycle;
-            cycleData['prio_A'] = repData.observation_durations_per_category.total_duration_successful_A;
-            cycleData['prio_B'] = repData.observation_durations_per_category.total_duration_successful_B;
-            cycleData['ddt_com_rep'] = repData.observation_durations_per_category["DDT Com Rep"];
-            cycleData['unavailable'] = repData.observation_durations_per_category["System Unavailability"];
-            cycleData['tmss_com'] = repData.observation_durations_per_category["TMSS Com"];
-            cycleData['failed'] = repData.observation_durations_per_category.total_duration_failed;
-            cycleData['idle'] = repData.observation_durations_per_category.total_duration_idle;
+            cycleData['cycle'] = (repData.cycle;
+            cycleData['prio_A'] = (repData.observation_durations_per_category.total_duration_successful_A/timeConversionFactor).toFixed(2);
+            cycleData['prio_B'] = (repData.observation_durations_per_category.total_duration_successful_B/timeConversionFactor).toFixed(2);
+            cycleData['ddt_com_rep'] = (repData.observation_durations_per_category["DDT Com Rep"]/timeConversionFactor).toFixed(2);
+            cycleData['unavailable'] = (repData.observation_durations_per_category["System Unavailability"]/timeConversionFactor).toFixed(2);
+            cycleData['tmss_com'] = (repData.observation_durations_per_category["TMSS Com"]/timeConversionFactor).toFixed(2);
+            cycleData['failed'] = (repData.observation_durations_per_category.total_duration_failed/timeConversionFactor).toFixed(2);
+            cycleData['idle'] = (repData.observation_durations_per_category.total_duration_idle/timeConversionFactor).toFixed(2);
             reportData.push(cycleData);
         });
 
@@ -138,13 +140,13 @@ class CycleCategoryObservations extends Component{
                 <div className="ttd-details" id={`cycle-ttd-details`}>
                     <DataTable value={this.getReportData(true)} resizableColumns columnResizeMode="expand" className="card" style={{paddingLeft: '0em', textAlign: 'center'}}>
                         <Column field="cycle" header="Cycle Code"></Column>
-                        <Column field="prio_A" header="Prio A"></Column>
-                        <Column field="prio_B" header="Prio B"></Column>
-                        <Column field="ddt_com_rep" header="DDT Com Rep"></Column>
-                        <Column field="tmss_comm" header="TMSS Comm"></Column>
-                        <Column field="unavailable" header="System Unavailability"></Column>
-                        <Column field="failed" header="Failed"></Column>
-                        <Column field="idle" header="System/Idle"></Column>
+                        <Column field="prio_A" header="Prio A (hrs)"></Column>
+                        <Column field="prio_B" header="Prio B (hrs)"></Column>
+                        <Column field="ddt_com_rep" header="DDT Com Rep (hrs)"></Column>
+                        <Column field="tmss_comm" header="TMSS Comm (hrs)"></Column>
+                        <Column field="unavailable" header="System Unavailability (hrs)"></Column>
+                        <Column field="failed" header="Failed (hrs)"></Column>
+                        <Column field="idle" header="System/Idle (hrs)"></Column>
                     </DataTable>
                 </div>
 
diff --git a/SAS/TMSS/frontend/tmss_webapp/src/routes/Report/cycle/report.ilt_local.usage.js b/SAS/TMSS/frontend/tmss_webapp/src/routes/Report/cycle/report.ilt_local.usage.js
index dd6d7c07df7..3b86fa19e4b 100644
--- a/SAS/TMSS/frontend/tmss_webapp/src/routes/Report/cycle/report.ilt_local.usage.js
+++ b/SAS/TMSS/frontend/tmss_webapp/src/routes/Report/cycle/report.ilt_local.usage.js
@@ -4,6 +4,7 @@ import _ from 'lodash';
 import { DataTable } from 'primereact/datatable';
 import { Column } from 'primereact/column';
 import MathUtility from "../../../utils/math.utility";
+import UnitConverter from "../../../utils/unit.converter";
 
 /** Compoent to show usage in ILT and Local mode */
 class CyclesILTLocalUsage extends Component{
@@ -108,13 +109,14 @@ class CyclesILTLocalUsage extends Component{
      */
     getReportData(data) {
         let reportData = [];
+        const timeConversionFactor = UnitConverter.resourceUnitMap["time"].conversionFactor;
         data.map(iltCycleData => {
             let iltReportData = {};
             iltReportData['cycle'] = iltCycleData.cycle;
-            iltReportData['observing'] = iltCycleData.usage_mode['ILT mode'].observing;
-            iltReportData['idle'] = iltCycleData.usage_mode['ILT mode']['idle/test'];
-            iltReportData['local_mode'] = iltCycleData.usage_mode['stand-alone mode'].total;
-            iltReportData['ilt_total'] = iltCycleData.usage_mode['ILT mode'].total;
+            iltReportData['observing'] = (iltCycleData.usage_mode['ILT mode'].observing/timeConversionFactor).toFixed(2);
+            iltReportData['idle'] = (iltCycleData.usage_mode['ILT mode']['idle/test']/timeConversionFactor).toFixed(2);
+            iltReportData['local_mode'] = (iltCycleData.usage_mode['stand-alone mode'].total/timeConversionFactor).toFixed(2);
+            iltReportData['ilt_total'] = (iltCycleData.usage_mode['ILT mode'].total/timeConversionFactor).toFixed(2);
             iltReportData['ilt_mode_dutch'] = null;
             reportData.push(iltReportData);
         });
@@ -145,11 +147,11 @@ class CyclesILTLocalUsage extends Component{
                 <div className="ilt-time-details" id={`cycle-ilt-details`}>
                     <DataTable value={reportData} resizableColumns columnResizeMode="expand" className="card" style={{paddingLeft: '0em', textAlign: 'center'}}>
                         <Column field="cycle" header="Cycle Code"></Column>
-                        <Column field="observing" header="ILT-mode observing"></Column>
-                        <Column field="idle" header="ILT-mode idle /test"></Column>
-                        <Column field="local_mode" header="Local-mode"></Column>
-                        <Column field="ilt_total" header="ILT-mode (in total)"></Column> 
-                        <Column field="ilt_mode_dutch" header="ILT_mode [Dutch array observing]"></Column> 
+                        <Column field="observing" header="ILT-mode observing (hrs)"></Column>
+                        <Column field="idle" header="ILT-mode idle/test (hrs)"></Column>
+                        <Column field="local_mode" header="Local-mode (hrs)"></Column>
+                        <Column field="ilt_total" header="ILT-mode (total, in hrs)"></Column>
+                        <Column field="ilt_mode_dutch" header="ILT-mode (Dutch array observing, in hrs)"></Column>
                     </DataTable>
                 </div>
             </React.Fragment>
-- 
GitLab