Fix smartmeter interfaces
parent
0d60c17c28
commit
ec07bb3fdb
|
|
@ -170,16 +170,17 @@ Interfaces::Interfaces(QObject *parent) : QAbstractListModel(parent)
|
|||
addInterface("smartmeter", tr("Smart meter"));
|
||||
|
||||
addInterface("smartmeterconsumer", tr("Smart meters"), {"smartmeter"});
|
||||
addStateType("smartmeterconsumer", "totalEnergyConsumed", QVariant::Double, false, tr("Total energy consumed"), tr("Total energy consumed changed"));
|
||||
|
||||
addInterface("extendedsmartmeterconsumer", tr("Smart meters"), {"smartmeterconsumer"});
|
||||
addStateType("extendedsmartmeterconsumer", "currentPower", QVariant::Double, false, tr("Current power"), tr("Current power changed"));
|
||||
addStateType("smartmeterconsumer", "totalEnergyConsumed", QVariant::Double, false, tr("Total energy consumed"), tr("Total consumed energy changed"));
|
||||
addStateType("smartmeterconsumer", "currentPower", QVariant::Double, false, tr("Current power"), tr("Current power changed"));
|
||||
|
||||
addInterface("smartmeterproducer", tr("Smart meters"), {"smartmeter"});
|
||||
addStateType("smartmeterproducer", "totalEnergyProduced", QVariant::Double, false, tr("Total energy producedd"), tr("Total energy produced changed"));
|
||||
addStateType("smartmeterproducer", "totalEnergyProduced", QVariant::Double, false, tr("Total energy produced"), tr("Total produced energy changed"));
|
||||
addStateType("smartmeterproducer", "currentPower", QVariant::Double, false, tr("Current power"), tr("Current power changed"));
|
||||
|
||||
addInterface("extendedsmartmeterproducer", tr("Smart meters"), {"smartmeterproducer"});
|
||||
addStateType("extendedsmartmeterproducer", "currentPower", QVariant::Double, false, tr("Current power"), tr("Current power changed"));
|
||||
addInterface("energymeter", tr("Smart meters"), {"smartmeter"});
|
||||
addStateType("energymeter", "totalEnergyConsumed", QVariant::Double, false, tr("Total energy consumed"), tr("Total consumed energy changed"));
|
||||
addStateType("energymeter", "totalEnergyProduced", QVariant::Double, false, tr("Total energy produced"), tr("Total produced energy changed"));
|
||||
addStateType("energymeter", "currentPower", QVariant::Double, false, tr("Current power"), tr("Current power changed"));
|
||||
|
||||
addInterface("useraccesscontrol", tr("User access control systems"), {"accesscontrol"});
|
||||
addStateType("useraccesscontrol", "users", QVariant::StringList, false, tr("Users"), tr("Users changed"));
|
||||
|
|
|
|||
|
|
@ -353,9 +353,9 @@ ApplicationWindow {
|
|||
case "smartmeter":
|
||||
case "smartmeterconsumer":
|
||||
case "smartmeterproducer":
|
||||
case "extendedsmartmeterconsumer":
|
||||
case "extendedsmartmeterproducer":
|
||||
return Qt.resolvedUrl("images/smartmeter.svg")
|
||||
case "energymeter":
|
||||
return Qt.resolvedUrl("images/energy.svg")
|
||||
case "heating":
|
||||
return Qt.resolvedUrl("images/thermostat/heating.svg")
|
||||
case "cooling":
|
||||
|
|
|
|||
|
|
@ -78,10 +78,9 @@ Item {
|
|||
"daylightsensor": "gold",
|
||||
"presencesensor": "darkblue",
|
||||
"closablesensor": "green",
|
||||
"smartmeterconsumer": "orange",
|
||||
"smartmeterproducer": "lightgreen",
|
||||
"extendedsmartmeterproducer": "lightgreen",
|
||||
"smartmeterconsumer": "deepskyblue",
|
||||
"extendedsmartmeterconsumer": "deepskyblue",
|
||||
"energymeter": "deepskyblue",
|
||||
"heating" : "gainsboro",
|
||||
"thermostat": "dodgerblue",
|
||||
"irrigation": "lightblue",
|
||||
|
|
|
|||
|
|
@ -665,6 +665,7 @@ MainPageTile {
|
|||
ListElement { ifaceName: "noisesensor"; stateName: "noise" }
|
||||
ListElement { ifaceName: "smartmeterconsumer"; stateName: "totalEnergyConsumed" }
|
||||
ListElement { ifaceName: "smartmeterproducer"; stateName: "totalEnergyProduced" }
|
||||
ListElement { ifaceName: "energymeter"; stateName: "currentPower" }
|
||||
ListElement { ifaceName: "thermostat"; stateName: "targetTemperature" }
|
||||
ListElement { ifaceName: "heating"; stateName: "power" }
|
||||
ListElement { ifaceName: "extendedHeating"; stateName: "percentage" }
|
||||
|
|
|
|||
|
|
@ -74,26 +74,20 @@ ThingsListPageBase {
|
|||
Repeater {
|
||||
model: ListModel {
|
||||
Component.onCompleted: {
|
||||
if (itemDelegate.thing.thingClass.interfaces.indexOf("smartmeterproducer") >= 0) {
|
||||
append( {interfaceName: "smartmeterproducer", stateName: "totalEnergyProduced" })
|
||||
if (itemDelegate.thing.thingClass.stateTypes.findByName("totalEnergyConsumed") !== null) {
|
||||
append( {stateName: "totalEnergyConsumed" })
|
||||
}
|
||||
if (itemDelegate.thing.thingClass.interfaces.indexOf("smartmeterconsumer") >= 0) {
|
||||
append( {interfaceName: "smartmeterconsumer", stateName: "totalEnergyConsumed" })
|
||||
if (itemDelegate.thing.thingClass.stateTypes.findByName("totalEnergyProduced") !== null) {
|
||||
append( {stateName: "totalEnergyProduced" })
|
||||
}
|
||||
var added = false;
|
||||
if (itemDelegate.thing.thingClass.interfaces.indexOf("extendedsmartmeterproducer") >= 0) {
|
||||
append({interfaceName: "extendedsmartmeterconsumer", stateName: "currentPower"});
|
||||
added = true;
|
||||
}
|
||||
if (!added && itemDelegate.thing.thingClass.interfaces.indexOf("extendedsmartmeterconsumer") >= 0) {
|
||||
append({interfaceName: "extendedsmartmeterconsumer", stateName: "currentPower"});
|
||||
if (itemDelegate.thing.thingClass.stateTypes.findByName("currentPower") !== null) {
|
||||
append({stateName: "currentPower"});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
delegate: RowLayout {
|
||||
id: sensorValueDelegate
|
||||
visible: itemDelegate.thing.thingClass.interfaces.indexOf(model.interfaceName) >= 0
|
||||
Layout.preferredWidth: contentItem.width / dataGrid.columns
|
||||
|
||||
property StateType stateType: itemDelegate.thing.thingClass.stateTypes.findByName(model.stateName)
|
||||
|
|
|
|||
Loading…
Reference in New Issue