mirror of
https://github.com/inventree/inventree-app.git
synced 2025-06-16 12:15:31 +00:00
Refactor the refactor
This commit is contained in:
@ -69,51 +69,48 @@ class InvenTreeModel {
|
|||||||
jsondata[key] = value;
|
jsondata[key] = value;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Helper function to get string value from JSON data
|
// return a dynamic value from the JSON data
|
||||||
String getString(String key, {String backup = ""}) {
|
// optionally we can specifiy a "subKey" to get a value from a sub-dictionary
|
||||||
String value = backup;
|
dynamic getValue(String key, {dynamic backup, String subKey = ""}) {
|
||||||
|
Map<String, dynamic> data = jsondata;
|
||||||
|
|
||||||
if (jsondata.containsKey(key)) {
|
// If a subKey is specified, we need to dig deeper into the JSON data
|
||||||
value = jsondata[key].toString();
|
if (subKey.isNotEmpty) {
|
||||||
|
data = (data[subKey] ?? {}) as Map<String, dynamic>;
|
||||||
}
|
}
|
||||||
|
|
||||||
return value;
|
if (data.containsKey(key)) {
|
||||||
|
return data[key];
|
||||||
|
} else {
|
||||||
|
return backup;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Helper function to get string value from JSON data
|
||||||
|
String getString(String key, {String backup = "", String subKey = ""}) {
|
||||||
|
dynamic value = getValue(key, backup: backup, subKey: subKey);
|
||||||
|
return value.toString();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Helper function to get integer value from JSON data
|
// Helper function to get integer value from JSON data
|
||||||
int getInt(String key, {int backup = -1}) {
|
int getInt(String key, {int backup = -1, String subKey = ""}) {
|
||||||
int value = backup;
|
dynamic value = getValue(key, backup: backup, subKey: subKey);
|
||||||
|
return int.tryParse(value.toString()) ?? backup;
|
||||||
if (jsondata.containsKey(key)) {
|
|
||||||
value = int.tryParse(jsondata[key].toString()) ?? backup;
|
|
||||||
}
|
|
||||||
|
|
||||||
return value;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Helper function to get double value from JSON data
|
// Helper function to get double value from JSON data
|
||||||
double getDouble(String key, {double backup = 0.0}) {
|
double getDouble(String key, {double backup = 0.0, String subKey = ""}) {
|
||||||
double value = backup;
|
dynamic value = getValue(key, backup: backup, subKey: subKey);
|
||||||
|
return double.tryParse(value.toString()) ?? backup;
|
||||||
if (jsondata.containsKey(key)) {
|
|
||||||
value = double.tryParse(jsondata[key].toString()) ?? backup;
|
|
||||||
}
|
|
||||||
|
|
||||||
return value;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Helper function to get boolean value from json data
|
// Helper function to get boolean value from json data
|
||||||
bool getBool(String key, {bool backup = false}) {
|
bool getBool(String key, {bool backup = false, String subKey = ""}) {
|
||||||
bool value = backup;
|
dynamic value = getValue(key, backup: backup, subKey: subKey);
|
||||||
|
return value.toString().toLowerCase() == "true";
|
||||||
if (jsondata.containsKey(key)) {
|
|
||||||
String str_value = (jsondata[key] ?? backup.toString()) as String;
|
|
||||||
value = str_value.toLowerCase() == "true";
|
|
||||||
}
|
|
||||||
|
|
||||||
return value;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Return the InvenTree web server URL for this object
|
||||||
String get webUrl {
|
String get webUrl {
|
||||||
|
|
||||||
if (api.isConnected()) {
|
if (api.isConnected()) {
|
||||||
|
Reference in New Issue
Block a user