corrected problem with havg
api.js - unnecessary export deleted - import of logit added actions/data4map.js - logits removed databases/influx.js - logits removed databases/mongo.js - logits removed sensorspecials/noise.js - repeated code put to a function - correctred hour count at havg package.json "version": "1.2.2", "date": "2023-04-24",
This commit is contained in:
+2
-2
@@ -86,7 +86,7 @@ export var getData4map = async (params) => {
|
||||
north = parseFloat(val[3])
|
||||
east = parseFloat(val[2])
|
||||
west = parseFloat(val[0])
|
||||
logit(`getData4map: S=${south} N=${north} E=${east} W=${west}`)
|
||||
// logit(`getData4map: S=${south} N=${north} E=${east} W=${west}`)
|
||||
}
|
||||
if (!((params.poly === undefined) || (params.poly === ' '))){
|
||||
poly = JSON.parse(params.poly)
|
||||
@@ -173,7 +173,7 @@ export var getData4map = async (params) => {
|
||||
}
|
||||
aktData.push(oneAktData)
|
||||
}
|
||||
logit(`Query duration: ${start.diffNow('seconds').toObject().seconds * -1} sec`)
|
||||
// logit(`Query duration: ${start.diffNow('seconds').toObject().seconds * -1} sec`)
|
||||
ret = {
|
||||
err: null,
|
||||
options: {
|
||||
|
||||
+1
-1
@@ -40,7 +40,7 @@ export const influxRead = async (query) => {
|
||||
} catch (e) {
|
||||
return returnOnError(erg, e, influxRead.name)
|
||||
}
|
||||
logit(`Influx read time: ${start.diffNow('seconds').toObject().seconds * -1} sec`)
|
||||
// logit(`Influx read time: ${start.diffNow('seconds').toObject().seconds * -1} sec`)
|
||||
return erg
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -27,10 +27,10 @@ export const properties_collection = 'pptest'
|
||||
|
||||
export const connectMongo = async () => {
|
||||
try {
|
||||
logit(`Try to connect to ${MONGO_URL}`)
|
||||
// logit(`Try to connect to ${MONGO_URL}`)
|
||||
// let client = await MongoClient.connect(MONGO_URL, { useNewUrlParser: true , useUnifiedTopology: true })
|
||||
let client = await MongoClient.connect(MONGO_URL)
|
||||
logit(`Mongodbase connected to ${MONGO_URL}`)
|
||||
// logit(`Mongodbase connected to ${MONGO_URL}`)
|
||||
return client
|
||||
}
|
||||
catch(error){
|
||||
|
||||
+2
-2
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "sensorapi",
|
||||
"version": "1.2.1",
|
||||
"date": "2023-04-21",
|
||||
"version": "1.2.2",
|
||||
"date": "2023-04-24",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"start": "node ./bin/www.js",
|
||||
|
||||
+2
-1
@@ -8,7 +8,8 @@ import * as getAKWs from "../actions/getAKWData.js";
|
||||
import * as holAddr from "../actions/getaddress.js";
|
||||
|
||||
export const apiRouter = express.Router();
|
||||
export const chartapiRouter = express.Router();
|
||||
import { logit, logerror } from '../utilities/logit.js'
|
||||
|
||||
|
||||
|
||||
const cmdTable = [
|
||||
|
||||
+47
-38
@@ -206,6 +206,16 @@ async function getdavgData(opts) {
|
||||
return {err: erg.err, values: val}
|
||||
}
|
||||
|
||||
// addDatetime
|
||||
// add the actual date to wert, if werte is undefined
|
||||
const addDatetime = (werte, item) => {
|
||||
if (werte.datetime === undefined) {
|
||||
let dt = DateTime.fromISO(item.datetime, {zone: 'utc'})
|
||||
werte.datetime = dt.startOf('day').toISO()
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
// *********************************************
|
||||
// getdaynightData
|
||||
@@ -246,31 +256,30 @@ async function getdaynightData(opts) {
|
||||
// The received hourly data array always (!!) starts at 0h00 local (!) time.
|
||||
// So to calculate day values, we skip the first 6 hour and start from there
|
||||
// now we add 16 hour for day and following 8 hour for night
|
||||
for (let i = 6; i < erg.values.length;) {
|
||||
const length = erg.values.length
|
||||
for (let i = 6; i < length;) {
|
||||
let dsum = 0, dcnt = 0;
|
||||
let nsum = 0, ncnt = 0;
|
||||
let werte = {};
|
||||
for (let k = 0; k < 16; k++, i++) {
|
||||
const item = erg.values[i]
|
||||
if (item.n_sum != -1) {
|
||||
if (werte.datetime === undefined) {
|
||||
let dt = DateTime.fromISO(item.datetime, {zone: 'utc'})
|
||||
werte.datetime = dt.startOf('day').toISO()
|
||||
if ( i < length) {
|
||||
const item = erg.values[i]
|
||||
if (item.n_sum != -1) {
|
||||
addDatetime(werte, item)
|
||||
dsum += item.n_sum;
|
||||
dcnt += item.count;
|
||||
}
|
||||
dsum += item.n_sum;
|
||||
dcnt += item.count;
|
||||
}
|
||||
}
|
||||
if (i < (erg.values.length - 8)) {
|
||||
if (i < (length - 8)) {
|
||||
const item = erg.values[i]
|
||||
for (let k = 0; k < 8; k++, i++) {
|
||||
if (item.n_sum != -1) {
|
||||
if (werte.datetime === undefined) {
|
||||
let dt = DateTime.fromISO(item.datetime, {zone: 'utc'})
|
||||
werte.datetime = dt.startOf('day').toISO()
|
||||
if (i < length) {
|
||||
if (item.n_sum != -1) {
|
||||
addDatetime(werte, item)
|
||||
nsum += item.n_sum;
|
||||
ncnt += item.count;
|
||||
}
|
||||
nsum += item.n_sum;
|
||||
ncnt += item.count;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
@@ -348,44 +357,42 @@ async function getLdenData(opts) {
|
||||
// So to calculate day values, we skip the first 6 hour and start from there
|
||||
// now we add 12 hour for day and following 4 hour for evening and
|
||||
// additional 8 hours for night
|
||||
for (let i = 6; i < erg.values.length;) {
|
||||
const length = erg.values.length
|
||||
for (let i = 6; i < length;) {
|
||||
let dsum = 0, dcnt = 0;
|
||||
let nsum = 0, ncnt = 0;
|
||||
let esum = 0, ecnt = 0;
|
||||
let werte = {};
|
||||
let dayAVG = 0, evnAVG = 0, nightAVG = 0;
|
||||
for (let k = 0; k < 12; k++, i++) {
|
||||
const item = erg.values[i]
|
||||
if (item.n_sum != -1) {
|
||||
if (werte.datetime == undefined) {
|
||||
let dt = DateTime.fromISO(item.datetime, {zone: 'utc'})
|
||||
werte.datetime = dt.startOf('day').toISO()
|
||||
if ( i < length) {
|
||||
const item = erg.values[i]
|
||||
if (item.n_sum != -1) {
|
||||
addDatetime(werte, item)
|
||||
dsum += item.n_sum;
|
||||
dcnt += item.count;
|
||||
}
|
||||
dsum += item.n_sum;
|
||||
dcnt += item.count;
|
||||
}
|
||||
}
|
||||
for (let k = 0; k < 4; k++, i++) {
|
||||
const item = erg.values[i]
|
||||
if (item.n_sum != -1) {
|
||||
if (werte.datetime == undefined) {
|
||||
let dt = DateTime.fromISO(item.datetime, {zone: 'utc'})
|
||||
werte.datetime = dt.startOf('day').toISO()
|
||||
if ( i < length) {
|
||||
const item = erg.values[i]
|
||||
if (item.n_sum != -1) {
|
||||
addDatetime(werte, item)
|
||||
esum += item.n_sum;
|
||||
ecnt += item.count;
|
||||
}
|
||||
esum += item.n_sum;
|
||||
ecnt += item.count;
|
||||
}
|
||||
}
|
||||
if (i < (erg.values.length - 8)) {
|
||||
for (let k = 0; k < 8; k++, i++) {
|
||||
const item = erg.values[i]
|
||||
if (item.n_sum != -1) {
|
||||
if (werte.datetime == undefined) {
|
||||
let dt = DateTime.fromISO(item.datetime, {zone: 'utc'})
|
||||
werte.datetime = dt.startOf('day').toISO()
|
||||
if (i < length) {
|
||||
const item = erg.values[i]
|
||||
if (item.n_sum != -1) {
|
||||
addDatetime(werte, item)
|
||||
nsum += item.n_sum;
|
||||
ncnt += item.count;
|
||||
}
|
||||
nsum += item.n_sum;
|
||||
ncnt += item.count;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
@@ -487,7 +494,9 @@ peak = data
|
||||
// To easily extract the values, we copy the data from docs into a new array, so that the
|
||||
// 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}.
|
||||
let hoursArr = new Array(opts.span * 24); // generate new array
|
||||
// For havg add the missed hours to the arry
|
||||
const misshours = DateTime.fromISO(ret.values[0].datetime, {zone: 'utc'}).get('hour')
|
||||
let hoursArr = new Array(opts.span * 24 + misshours); // generate new array
|
||||
hoursArr.fill(emptyValues) // fill array with 'empty' values
|
||||
let startDay = DateTime.fromISO(ret.values[0].datetime, {zone: 'utc'}).get('day') // calc first day
|
||||
let k = 0
|
||||
|
||||
Reference in New Issue
Block a user