First implementation of energy accounting

This commit is contained in:
Gunnar Skjold
2022-01-21 17:37:23 +01:00
parent e4d4753181
commit a72f02a779
11 changed files with 336 additions and 14 deletions

View File

@@ -1,6 +1,7 @@
var nextVersion;
var im, em;
var ds = 0;
var currency = "";
// Price plot
var pp;
@@ -432,6 +433,7 @@ var drawPrices = function() {
timeout: 30000,
dataType: 'json',
}).done(function(json) {
currency = json.currency;
data = [['Hour',json.currency + '/kWh', { role: 'style' }, { role: 'annotation' }]];
var r = 1;
var hour = moment.utc().hours();
@@ -750,6 +752,18 @@ var fetch = function() {
}
}
if(json.ea) {
$('#each').html(json.ea.h.u.toFixed(2));
$('#eachc').html(json.ea.h.c.toFixed(2));
$('#eacd').html(json.ea.d.u.toFixed(2));
$('#eacdc').html(json.ea.d.c.toFixed(2));
$('#eacm').html(json.ea.m.u.toFixed(2));
$('#eacmc').html(json.ea.m.c.toFixed(2));
$('#eax').html(json.ea.x.toFixed(2));
$('#eat').html(json.ea.t.toFixed(2));
$('.cr').html(currency);
}
if(json.me) {
$('.me').addClass('d-none');
$('.me'+json.me).removeClass('d-none');

View File

@@ -33,5 +33,21 @@
"p" : %s,
"c" : %lu,
"mt" : %d,
"ds" : %d
"ds" : %d,
"ea" : {
"x" : %.1f,
"t" : %.1f,
"h" : {
"u" : %.2f,
"c" : %.2f
},
"d" : {
"u" : %.2f,
"c" : %.2f
},
"m" : {
"u" : %.2f,
"c" : %.2f
}
}
}

View File

@@ -15,7 +15,7 @@
<div class="flex-fill">
<div class="text-center">Free mem: <span class="jm">{mem}</span>kb</div>
</div>
<div class="flex-fill rc">
<div class="flex-fill rc">
<div class="text-center"><span class="jc"></span></div>
</div>
</div>
@@ -111,6 +111,47 @@
</div>
</div>
<div class="col-xl-12 mb-3">
<div class="bg-white rounded shadow pt-3 pb-3" style="font-size: 14px;">
<strong class="mr-3 ml-3">Current use and cost</strong><br/>
<div class="row">
<div class="col-lg-3 col-sm-6">
<div class="mr-3 ml-3 d-flex">
<div>Hour</div>
<div class="flex-fill text-right">
<span id="each"></span> kWh
<span class="sp text-nowrap">(<span id="eachc"></span> <span class="cr"></span>)</span>
</div>
</div>
</div>
<div class="col-lg-3 col-sm-6">
<div class="mr-3 ml-3 d-flex">
<div>Day</div>
<div class="flex-fill text-right">
<span id="eacd"></span> kWh
<span class="sp text-nowrap">(<span id="eacdc"></span> <span class="cr"></span>)</span>
</div>
</div>
</div>
<div class="col-lg-3 col-sm-6">
<div class="mr-3 ml-3 d-flex">
<div>Month</div>
<div class="flex-fill text-right">
<span id="eacm"></span> kWh
<span class="sp text-nowrap">(<span id="eacmc"></span> <span class="cr"></span>)</span>
</div>
</div>
</div>
<div class="col-lg-3 col-sm-6">
<div class="row mr-3 ml-3">
<div class="col-3">Max</div>
<div class="col-9 text-right"><span id="eax"></span> / <span id="eat"></span> kWh</div>
</div>
</div>
</div>
</div>
</div>
<div id="ppc" class="col-xl-12 mb-3" style="display: none;">
<div class="bg-white rounded shadow" id="pp" style="width: 100%; height: 224px;"></div>
</div>