Fix energy chargs when DST chages
This commit is contained in:
parent
3418a86804
commit
b9887d33d6
@ -56,7 +56,6 @@ StatsBase {
|
||||
|
||||
onFetchingDataChanged: {
|
||||
if (!fetchingData) {
|
||||
print("Logs fetched")
|
||||
d.fetchPending = false
|
||||
}
|
||||
}
|
||||
@ -64,7 +63,7 @@ StatsBase {
|
||||
|
||||
Repeater {
|
||||
id: consumersRepeater
|
||||
model: root.consumers
|
||||
model: !engine.thingManager.fetchingData && !engine.tagsManager.busy ? root.consumers : null
|
||||
onCountChanged: {
|
||||
if (count == root.consumers.count) {
|
||||
logsLoader.fetchLogs();
|
||||
@ -240,7 +239,6 @@ StatsBase {
|
||||
}
|
||||
}
|
||||
|
||||
print("oldestEntry", new Date(oldestEntry), haveItems)
|
||||
if (!haveItems || oldestEntry >= d.endTime.getTime()) {
|
||||
return 0.5
|
||||
}
|
||||
@ -284,10 +282,8 @@ StatsBase {
|
||||
|
||||
categories: {
|
||||
var ret = []
|
||||
print("Updating categories from", d.config.startTime())
|
||||
for (var i = 0; i < d.config.count; i++) {
|
||||
var timestamp = root.calculateTimestamp(d.config.startTime(), d.config.sampleRate, d.startOffset + i);
|
||||
print("*** adding", timestamp, d.startOffset, i)
|
||||
ret.push(d.config.toLabel(timestamp))
|
||||
}
|
||||
return ret;
|
||||
@ -472,8 +468,9 @@ StatsBase {
|
||||
id: toolTipModel
|
||||
property var entries: {
|
||||
var unsorted = []
|
||||
for (var i = 0; i < consumers.count; i++) {
|
||||
var consumer = consumers.get(i)
|
||||
for (var i = 0; i < consumersRepeater.count; i++) {
|
||||
var consumerDelegate = consumersRepeater.itemAt(i)
|
||||
var consumer = consumerDelegate.thing
|
||||
var entry = {
|
||||
name: consumer.name,
|
||||
value: consumersRepeater.itemAt(i).barSet.at(toolTip.idx).toFixed(2),
|
||||
|
||||
@ -345,7 +345,6 @@ Item {
|
||||
}
|
||||
|
||||
onCountChanged: {
|
||||
print("***** count changed", count, "total:", consumers.count)
|
||||
if (count == consumers.count) {
|
||||
d.update();
|
||||
}
|
||||
@ -416,12 +415,7 @@ Item {
|
||||
thingId: consumerDelegate.thing.id
|
||||
loader: logsLoader
|
||||
|
||||
Component.onCompleted: print("thingpowerlogs completed")
|
||||
|
||||
onLoadingInhibitedChanged: print("Loading...", consumerDelegate.thing.name)
|
||||
|
||||
onEntriesAdded: {
|
||||
print("Thing entries added", consumerDelegate.thing.name, index, entries.length)
|
||||
addTimer.addEntries(index, entries)
|
||||
}
|
||||
|
||||
|
||||
@ -72,9 +72,7 @@ ChartView {
|
||||
|
||||
function updateConsumers() {
|
||||
root.animationOptions = ChartView.NoAnimation
|
||||
print("clearing consumers pie chart", consumersBalanceSeries.count)
|
||||
consumersBalanceSeries.clear();
|
||||
print("cleared consumers pie chart")
|
||||
|
||||
if (engine.thingManager.fetchingData) {
|
||||
return;
|
||||
@ -100,7 +98,6 @@ ChartView {
|
||||
|
||||
if (root.rootMeter) {
|
||||
var unknownConsumption = Math.max(0, energyManager.currentPowerConsumption - consumersSummation)
|
||||
print("Unknown consumption:", unknownConsumption, "consumption balance", energyManager.currentPowerConsumption, "consumers summation:", consumersSummation)
|
||||
d.unknownSlice = consumersBalanceSeries.append(qsTr("Unknown"), unknownConsumption)
|
||||
d.unknownSlice.color = Style.gray
|
||||
d.unknownSlice.borderColor = Style.gray
|
||||
|
||||
@ -50,7 +50,6 @@ SettingsPageBase {
|
||||
|
||||
textRole: "name"
|
||||
currentIndex: rootMeterProxy.indexOf(rootMeterProxy.getThing(energyManager.rootMeterId))
|
||||
Component.onCompleted: print("root meter id:", energyManager.rootMeterId)
|
||||
onActivated: {
|
||||
energyManager.setRootMeterId(rootMeterProxy.get(index).id)
|
||||
}
|
||||
|
||||
@ -35,13 +35,8 @@ StatsBase {
|
||||
|
||||
onConfigChanged: valueAxis.max = 1
|
||||
onStartOffsetChanged: {
|
||||
print("start offset changed", startOffset)
|
||||
// print("updating because of offset change. fetchingData", powerBalanceLogs.fetchingData, "fetchPending", d.fetchPending)
|
||||
refresh()
|
||||
}
|
||||
onStartTimeChanged: {
|
||||
print("start time changed", startTime)
|
||||
}
|
||||
|
||||
function refresh() {
|
||||
if (powerBalanceLogs.loadingInhibited) {
|
||||
@ -156,7 +151,6 @@ StatsBase {
|
||||
|
||||
onFetchingDataChanged: {
|
||||
if (!fetchingData) {
|
||||
print("Logs fetched")
|
||||
d.fetchPending = false
|
||||
d.refresh()
|
||||
}
|
||||
@ -457,7 +451,6 @@ StatsBase {
|
||||
|
||||
property int idx: visible ? Math.min(d.config.count -1, Math.max(0, Math.ceil(mouseArea.mouseX * d.config.count / mouseArea.width) - 1)) : 0
|
||||
property date timestamp: root.calculateTimestamp(d.config.startTime(), d.config.sampleRate, d.startOffset + idx)
|
||||
onTimestampChanged: print("idx changed", idx, "timestamp", timestamp)
|
||||
|
||||
visible: (mouseArea.containsMouse || mouseArea.tooltipping) && !mouseArea.dragging
|
||||
|
||||
|
||||
@ -33,14 +33,12 @@ Item {
|
||||
readonly property var startTime: {
|
||||
var date = new Date(fixTime(now));
|
||||
date.setTime(date.getTime() - (range * 60 * 1000));
|
||||
print("setting starttime to", date, range)
|
||||
return date;
|
||||
}
|
||||
|
||||
readonly property var endTime: {
|
||||
var date = new Date(fixTime(now));
|
||||
date.setTime(date.getTime())
|
||||
print("setting endtime to", date, range)
|
||||
return date;
|
||||
}
|
||||
|
||||
@ -476,7 +474,6 @@ Item {
|
||||
var totalTime = d.endTime.getTime() - d.startTime.getTime()
|
||||
// dragDelta : timeDelta = width : totalTime
|
||||
var timeDelta = dragDelta * totalTime / mouseArea.width
|
||||
print("dragging", dragDelta, totalTime, mouseArea.width)
|
||||
d.now = new Date(Math.min(new Date(), new Date(startDatetime.getTime() + timeDelta)))
|
||||
}
|
||||
|
||||
@ -485,7 +482,6 @@ Item {
|
||||
var totalTime = d.endTime.getTime() - d.startTime.getTime()
|
||||
// pixelDelta : timeDelta = width : totalTime
|
||||
var timeDelta = wheel.pixelDelta.x * totalTime / mouseArea.width
|
||||
print("wheeling", wheel.pixelDelta.x, totalTime, mouseArea.width)
|
||||
d.now = new Date(Math.min(new Date(), new Date(startDatetime.getTime() - timeDelta)))
|
||||
wheelStopTimer.restart()
|
||||
}
|
||||
|
||||
@ -467,7 +467,6 @@ Item {
|
||||
var totalTime = d.endTime.getTime() - d.startTime.getTime()
|
||||
// dragDelta : timeDelta = width : totalTime
|
||||
var timeDelta = dragDelta * totalTime / mouseArea.width
|
||||
print("dragging", dragDelta, totalTime, mouseArea.width)
|
||||
d.now = new Date(Math.min(new Date(), new Date(startDatetime.getTime() + timeDelta)))
|
||||
}
|
||||
|
||||
@ -476,7 +475,6 @@ Item {
|
||||
var totalTime = d.endTime.getTime() - d.startTime.getTime()
|
||||
// pixelDelta : timeDelta = width : totalTime
|
||||
var timeDelta = wheel.pixelDelta.x * totalTime / mouseArea.width
|
||||
print("wheeling", wheel.pixelDelta.x, totalTime, mouseArea.width)
|
||||
d.now = new Date(Math.min(new Date(), new Date(startDatetime.getTime() - timeDelta)))
|
||||
wheelStopTimer.restart()
|
||||
}
|
||||
|
||||
@ -64,10 +64,16 @@ Item {
|
||||
|
||||
function calculateTimestamp(baseTime, sampleRate, offset) {
|
||||
var timestamp = new Date(baseTime);
|
||||
if (sampleRate === EnergyLogs.SampleRate1Month) {
|
||||
timestamp.setMonth(baseTime.getMonth() + offset)
|
||||
} else if (sampleRate === EnergyLogs.SampleRate1Year) {
|
||||
if (sampleRate === EnergyLogs.SampleRate1Year) {
|
||||
timestamp.setFullYear(baseTime.getFullYear() + offset)
|
||||
} else if (sampleRate === EnergyLogs.SampleRate1Month) {
|
||||
timestamp.setMonth(baseTime.getMonth() + offset)
|
||||
} else if (sampleRate === EnergyLogs.SampleRate1Week) {
|
||||
timestamp.setDate(baseTime.getDate() + offset * 7)
|
||||
} else if (sampleRate === EnergyLogs.SampleRate1Day) {
|
||||
timestamp.setDate(baseTime.getDate() + offset)
|
||||
} else if (sampleRate === EnergyLogs.SampleRate1Hour) {
|
||||
timestamp.setHours(timestamp.getHours() + offset)
|
||||
} else {
|
||||
timestamp.setTime(baseTime.getTime() + (sampleRate * 60000 * offset))
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user