use host time to calculate the real event time
This commit is contained in:
		| @@ -13,7 +13,10 @@ before_script: | ||||
|  | ||||
| build: | ||||
|   stage: build | ||||
|   script: "platformio run -e esp12e" | ||||
|   script: | ||||
|     - "platformio run -e esp12e" | ||||
|     - vers=$(grep -Po '[0-9]*\.[0-9]*\.[0-9]*(?=\")' ./src/Pins.h) | ||||
|     - mv .pio/'build/esp12e/*.bin Pumpensteuerung-${vers}.bin | ||||
|   artifacts: | ||||
|     paths: | ||||
|       - .pio/build/esp12e/*.bin | ||||
|       - ./*.bin | ||||
| @@ -1,12 +1,6 @@ | ||||
| import React, {Component} from 'react'; | ||||
| import {Box, List, ListItem, ListItemText} from '@material-ui/core'; | ||||
| import { | ||||
|     FormButton, | ||||
|     restController, | ||||
|     RestControllerProps, | ||||
|     RestFormLoader, | ||||
|     SectionContent | ||||
| } from '../components'; | ||||
| import {FormButton, restController, RestControllerProps, RestFormLoader, SectionContent} from '../components'; | ||||
| import {ENDPOINT_ROOT} from "../api"; | ||||
| import {GeneralInformaitonState} from "./types"; | ||||
| import RefreshIcon from "@material-ui/icons/Refresh"; | ||||
| @@ -21,12 +15,6 @@ class GeneralInformation extends Component<GeneralInformationRestControllerProps | ||||
|  | ||||
|     componentDidMount() { | ||||
|         this.props.loadData(); | ||||
|  | ||||
|         // this.intervalhandler = window.setInterval(() => { | ||||
|         //     this.props.loadData(); | ||||
|         //     console.log("refreshing data"); | ||||
|         //     console.log(this.props.data) | ||||
|         // }, 10000); | ||||
|     } | ||||
|  | ||||
|     componentWillUnmount() { | ||||
| @@ -44,19 +32,23 @@ class GeneralInformation extends Component<GeneralInformationRestControllerProps | ||||
|                                 <ListItem> | ||||
|                                     <ListItemText | ||||
|                                         primary="Chip läuft seit:" | ||||
|                                             secondary={this.stringifyTime(props.data.runtime)} | ||||
|                                         secondary={this.stringifyTime(props.data.runtime) + ' / ' + this.getRealTimeString(props.data.runtime)} | ||||
|                                     /> | ||||
|                                 </ListItem> | ||||
|                                 <ListItem> | ||||
|                                     <ListItemText | ||||
|                                         primary="Zuletzt zu wenig Wasser:" | ||||
|                                             secondary={props.data.lastWaterOutage !== 0 ? "vor " + this.stringifyTime(props.data.lastWaterOutage) : "noch nie!"} | ||||
|                                         secondary={props.data.lastWaterOutage !== 0 ? "vor " + | ||||
|                                             this.stringifyTime(props.data.lastWaterOutage) + ' / ' + | ||||
|                                             this.getRealTimeString(props.data.lastWaterOutage) : "noch nie!"} | ||||
|                                     /> | ||||
|                                 </ListItem> | ||||
|                                 <ListItem> | ||||
|                                     <ListItemText | ||||
|                                         primary="Letzer Pumpenzyklus" | ||||
|                                             secondary={props.data.lastpumptime !== 0 ? "vor " + this.stringifyTime(props.data.lastpumptime) : "noch nie!"} | ||||
|                                         secondary={props.data.lastpumptime !== 0 ? "vor " + | ||||
|                                             this.stringifyTime(props.data.lastpumptime) + ' / ' + | ||||
|                                             this.getRealTimeString(props.data.lastpumptime) : "noch nie!"} | ||||
|                                     /> | ||||
|                                 </ListItem> | ||||
|                                 <ListItem> | ||||
| @@ -100,7 +92,7 @@ class GeneralInformation extends Component<GeneralInformationRestControllerProps | ||||
|      * stringify seconds to a pretty format | ||||
|      * @param sec number of seconds | ||||
|      */ | ||||
|     stringifyTime(sec: number): string { | ||||
|     private stringifyTime(sec: number): string { | ||||
|         if (sec >= 86400) { | ||||
|             // display days | ||||
|             return (Math.trunc(sec / 86400) + "d " + Math.trunc((sec % 86400) / 3600) + "h " + Math.trunc((sec % 3600) / 60) + "min " + sec % 60 + "sec"); | ||||
| @@ -115,6 +107,20 @@ class GeneralInformation extends Component<GeneralInformationRestControllerProps | ||||
|             return (sec + "sec"); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     private getRealTimeString(runtime: number): string { | ||||
|         const timestamp = Date.now(); | ||||
|  | ||||
|         const a = new Date(timestamp - (runtime * 1000)); | ||||
|         const months = ['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec']; | ||||
|         const year = a.getFullYear(); | ||||
|         const month = months[a.getMonth()]; | ||||
|         const date = a.getDate(); | ||||
|         const hour = a.getHours(); | ||||
|         const min = "0" + a.getMinutes(); | ||||
|         const sec = "0" + a.getSeconds(); | ||||
|         return '[' + date + ' ' + month + ' ' + year + ' ' + hour + ':' + min.substr(-2) + ':' + sec.substr(-2) + ']'; | ||||
|     } | ||||
| } | ||||
|  | ||||
| export default restController(GENERALINFORMATION_SETTINGS_ENDPOINT, GeneralInformation); | ||||
|   | ||||
| @@ -16,6 +16,6 @@ | ||||
| #define TempSensorPin  D4 | ||||
|  | ||||
| // version info | ||||
| #define VERSION "v1.2.1" | ||||
| #define VERSION "v1.2.2" | ||||
|  | ||||
| #endif //PUMPENSTEUERUNG_PINS_H | ||||
|   | ||||
		Reference in New Issue
	
	Block a user