changed date/time to local time

actions/getsensorData.js
   - interpret given date/time as local time and convert ist to UTC for database

databases/influx.js
   - log for 'read' added

utilities/logit.js
   - print time in local time

sensorspecials/noise.js
   - print starttime im options as local time
   - remove 'zone:utc' from every time function
This commit is contained in:
rxf
2023-05-25 09:24:12 +02:00
parent 969a37b8c6
commit 5d10f681ea
4 changed files with 15 additions and 11 deletions
+6 -3
View File
@@ -72,16 +72,18 @@ export const calcRange = (opts) => {
let start, end let start, end
let ret = { start: start, stop: end, err: null} let ret = { start: start, stop: end, err: null}
if((opts.datetime === null) || (opts.datetime === undefined) || (opts.datetime === '')) { if((opts.datetime === null) || (opts.datetime === undefined) || (opts.datetime === '')) {
start = end = DateTime.local().toUTC() start = end = DateTime.local()
start = start.minus({days: opts.span}) start = start.minus({days: opts.span})
} else { } else {
start = end = DateTime.fromISO(opts.datetime, {zone: 'utc'}) start = end = DateTime.fromISO(opts.datetime)
end = end.plus({days: opts.span}) end = end.plus({days: opts.span})
} }
if(opts.daystart) { if(opts.daystart) {
start = start.startOf("day") start = start.startOf("day")
end = end.startOf("day") end = end.startOf("day")
} }
start = start.toUTC()
end = end.toUTC()
if(opts.avg !== undefined) { if(opts.avg !== undefined) {
start = start.minus({minutes: opts.avg}) start = start.minus({minutes: opts.avg})
} }
@@ -156,7 +158,8 @@ ${sorting}
} }
// ..../api/getavgdata?sensorid=123&span=2&avg=10&moving=true&datetime=2022-04-12T13:14:15Z // ..../api/getavgdata?
// ToDo: check UTC !!!!
export var getAvgData = async (params) => { export var getAvgData = async (params) => {
let ret = {data: {count: 0, values: []}, err: null} let ret = {data: {count: 0, values: []}, err: null}
let {opts, err} = checkParams(params, let {opts, err} = checkParams(params,
+1
View File
@@ -19,6 +19,7 @@ const INFLUXURL_WRITE = `http://${INFLUXHOST}:${INFLUXPORT}/api/v2/write?org=${I
export const influxRead = async (query) => { export const influxRead = async (query) => {
let start = DateTime.now() let start = DateTime.now()
logit(`ReadInflux from ${INFLUXURL_READ}`)
let erg = { values: [], err: null} let erg = { values: [], err: null}
try { try {
let ret = await axios({ let ret = await axios({
+7 -7
View File
@@ -48,7 +48,7 @@ export const getNoiseData = async (params, possibles, props) => {
sid: opts.sensorid, sid: opts.sensorid,
indoor: props.location[0].indoor, indoor: props.location[0].indoor,
span: opts.span, span: opts.span,
start: opts.start.slice(7), start: DateTime.fromISO(opts.start.slice(7)),
data: opts.data, data: opts.data,
peak: opts.peak, peak: opts.peak,
count: erg.values.length, count: erg.values.length,
@@ -183,7 +183,7 @@ async function getdavgData(opts) {
count += item.count; count += item.count;
pk += item.peakcount; pk += item.peakcount;
if (werte.datetime === undefined) { if (werte.datetime === undefined) {
let dt = DateTime.fromISO(item.datetime, {zone: 'utc'}) let dt = DateTime.fromISO(item.datetime)
werte.datetime = dt.startOf('day').toISO() werte.datetime = dt.startOf('day').toISO()
} }
} }
@@ -211,7 +211,7 @@ async function getdavgData(opts) {
// add the actual date to wert, if werte is undefined // add the actual date to wert, if werte is undefined
const addDatetime = (werte, item) => { const addDatetime = (werte, item) => {
if (werte.datetime === undefined) { if (werte.datetime === undefined) {
let dt = DateTime.fromISO(item.datetime, {zone: 'utc'}) let dt = DateTime.fromISO(item.datetime)
werte.datetime = dt.startOf('day').toISO() werte.datetime = dt.startOf('day').toISO()
} }
} }
@@ -496,14 +496,14 @@ peak = data
// hour in an element in docs becomes the index into the new array (for every new day this // hour in an element in docs becomes the index into the new array (for every new day this
// index will be incremented by 24). Missing values are marked by: {n_sum=-1, n_AVG=-1}. // index will be incremented by 24). Missing values are marked by: {n_sum=-1, n_AVG=-1}.
// For havg add the missed hours to the arry // For havg add the missed hours to the arry
const misshours = DateTime.fromISO(ret.values[0].datetime, {zone: 'utc'}).get('hour') const misshours = DateTime.fromISO(ret.values[0].datetime).get('hour')
let hoursArr = new Array(opts.span * 24 + misshours); // generate new array let hoursArr = new Array(opts.span * 24 + misshours); // generate new array
hoursArr.fill(emptyValues) // fill array with 'empty' values hoursArr.fill(emptyValues) // fill array with 'empty' values
let startDay = DateTime.fromISO(ret.values[0].datetime, {zone: 'utc'}).get('day') // calc first day let startDay = DateTime.fromISO(ret.values[0].datetime).get('day') // calc first day
let k = 0 let k = 0
for (let d of ret.values) { // loop through docs for (let d of ret.values) { // loop through docs
let stunde = DateTime.fromISO(d.datetime, {zone: 'utc'}).get('hour') // get current hour let stunde = DateTime.fromISO(d.datetime).get('hour') // get current hour
let day = DateTime.fromISO(d.datetime, {zone: 'utc'}).get('day') // get current day let day = DateTime.fromISO(d.datetime).get('day') // get current day
if (day != startDay) { // if date has changed if (day != startDay) { // if date has changed
k += 24 // increment index by 24 k += 24 // increment index by 24
startDay = day startDay = day
+1 -1
View File
@@ -10,7 +10,7 @@ export function logit(str) {
export function logerror(str) { export function logerror(str) {
if(MOCHA_TEST) return if(MOCHA_TEST) return
let s = `${DateTime.utc().toISO()} => *** ERROR *** ${str}`; let s = `${DateTime.toISO()} => *** ERROR *** ${str}`;
console.log(s); console.log(s);
} }